Ubuntu Start

Posted: May 19th, 2010 | Author: | Filed under: Linux | Tags: | No Comments »

https://launchpad.net/ubuntustart


Advanced SVN – Give SVN a web interface

Posted: May 3rd, 2010 | Author: | Filed under: Linux | 1 Comment »

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.

The repository

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

Password protection

# 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

How to edit grub2 boot order in Lucid Lynx

Posted: May 3rd, 2010 | Author: | Filed under: Linux | No Comments »

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:

  • 00_header
  • 05_debian_theme
  • 10_linux
  • 20_memory_test
  • 30_os-prober
  • 40_custom

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:

  • 00_header
  • 05_debian_theme
  • 10_os-prober
  • 20_linux
  • 30_custom

Now all you need to do is sudo update-grub which update your /boot/grub/grub.cfg and boot list accordingly.