Install required applications
To do this we will need subversion, libapache2-svn, and of course LAMP stack lamp-server.
# Install lamp-server sudo apt-get install lamp-server^ # Optional: phpmyadmin and mods for apache sudo apt-get install libapache2-mod-auth-mysql phpmyadmin sudo a2enmod vhost_alias rewrite # Install subversion sudo apt-get install subversion subversion-tools # Install libapache2-svn sudo apt-get install libapache2-svn
Now some more preparation to do.
# SSL sudo a2enmod ssl # Regenerate self-signed ssl key if you want sudo make-ssl-cert generate-default-snakeoil --force-overwrite
Users, folders and groups
Next step we need to add svn usergroups, but not before we fix show all users.
Launch gconf-editor, check “showall” in /apps/gnome-system-tools/users.
Then run Users and Groups in System -> Administration. In Manage Groups, click Add. Name the new group subversion, add yourself and www-data to the member. Log out and log in to activate this.
*Note: all your team members need to be added into subversion group.
Now, time to create the repository.
sudo mkdir /home/svn sudo mkdir /home/svn/NEWPROJECTNAME sudo svnadmin create /home/svn/NEWPROJECTNAME sudo chown -R www-data:subversion /home/svn/NEWPROJECTNAME sudo chmod -R 765 /home/svn/NEWPROJECTNAME # If files under NEWPROJECTNAME/ don't have all group access repeat the previous command again.
Now time to tell apache to set up the access to this repository:
# Add the following content to /etc/apache2/mods-available/dav_svn.conf to make all your repository available. Or add them to each website in /etc/apache2/sites-available <Location /svn> DAV svn SVNParentPath /home/svn SVNListParentPath On AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location> # Restart apache2 after adding the content above sudo /etc/init.d/apache2 restart
# Now, creating the password file. sudo htpasswd -c /etc/apache2/dav_svn.passwd SVNUSERNAME # To add more users: sudo htpasswd /etc/apache2/dav_svn.passwd ANOTHERUSERNAME # Then you can access to your repository with: svn co https://hostname/svn/PROJECTNAME PROJECTNAME --username SVNUSERNAME
As everyone knows the new Ubuntu Lucid Lynx is using Grub2 instead Grub1, the setting up process has changed quite a bit.
Now if you have various boot entries and want to add, remove or re-order the boot list, you won’t find /etc/grub/menu.lst. Instead the info is stored in /boot/grub/grub.cfg. But wait, you are not supposed to edit this grub.cfg. Instead you need to go to /etc/grub.d/ folder…
In /etc/grub.d/ folder you will find a list of executables like:
And your boot list will be order by the numbers. In fact, 10_linux gives you the 2 lines of linux (normal and recovery mode), 20_memory_test gives you 2 lines of memory test, 30_os-probers will list whatever other systems you have on your harddisk, and 40_custom is the extra bits you can add/remove.
So, if you want to move your other OS (for example, Windows) to first, then Ubuntu, and remove memory test from the list, you delete file 20_memory_test, and rename the rest files to like this:
Now all you need to do is sudo update-grub which update your /boot/grub/grub.cfg and boot list accordingly.