This is a script I wrote that you can run right after you install Ubuntu 10.04LTS (Desktop Edition). It adds some 3rd party applications, repositories, configures iptables and so forth. One thing I'd like it to do is detect if it's being ran on a 32-bit or 64-bit system and then either download the w32codes or the w64codes accordingly.
I'm also open to any other ideas and/or suggestions.
I've updated this code a few times, incorporating suggestions from people to the point that there's more code than what I am allowed to paste here, si I've moved the code off-site to a Pastebin log at:
1) Does anyone see anything else I can do too?
2) Another thing I was thinking of adding was my own repository for files like fonts, images, PDFs, etc and loading them into the appropriate places .I do have a Lanchpad account, but I'm not a packager/programmer by nature. I'm a network / os / security guy, not a developer. I'd like to make some sort of all-inclusive *.deb file that people can download from my repo and it'd update wallpapers, documents, programs, etc.
Right now as you can see, I'm using Dropbox as a repo of sorts.
So in addition to my on-going question of how to improve the script and the above new things, I need to add this:
3) Is there a way I can test my script without loading it onto a new PC? A sort of "simulation mode" per se?
I've ran into a couple of issues where during the install, I must select choices (like to accept the EULA for Java, or to enable or disable a daemon, etc), and I'd like to automate that process somehow for testing purposes.
Lastly, but most importantly, I'd like to thank everyone for their suggestions, as you have helped me make this a better script.
This question is marked "community wiki".
You can get information about your system using uname. uname -m could for example return i686, x86_64, ... depending on your system.
You might also want to check the return values of certain commands. Writing a function that checks the last return value ($?) and handles/logs errors accordingly would be an easy solution for that.
A good source of ideas is the Advanced Bash-Scripting Guide.
answered 04 Jun '10, 19:48
replace the lines to add the PPAs with add-apt-repository ppa:/ (ex: add-apt-repository ppa:exaile-devel/ppa) this will also add the keys.
you can also replace the deb lines with it (ex: add-apt-repository deb http://www.geekconnection.org/remastersys/repository karmic)
answered 05 Jun '10, 22:54
You forgot to run apt-get upgrade after running apt-get update.
Also, you are making a backup of sources.list after adding your new repos to it. Is that on purpose?
Is this something you are running on several machines in an enterprise evironment? If so, I highly recommend dropping the custom scripts and using puppet instead. It is a total lifesaver.
answered 05 Jun '10, 05:25
That is a rather fine script. Thanks for sharing.
Add gshutdown, monkey-bubble, and tuxpaint?
answered 04 Jun '10, 19:42
To add to the list I would set PATH at the beginning, or set your commands to variable names.
answered 13 Jul '10, 19:27
It could be improved by making use of looping. This allows separating out of the highly changeable items, like the list of applications, by putting them in variables or even reading them from an include script. For example:
answered 17 Dec '13, 00:29