I really like Delicious for storing and tagging my bookmarks, but what if they close down, or start selling my user activity to marketers, or even worse, the government!
After searching around the web, I stumbled across Scuttle. Scuttle is an open source software, very similar to of delicious. It uses php and mysql to do it’s magic.
Scuttle is very fast and as easy to use as delicious. Most important, it is open source and it runs on your server, so if you are browsing at home, your data never leaves your network. I have VPN setup so I can add bookmarks when I am out in public.
Installation (you wish):
I’ve seen other sites that say you can install Scuttle really easily on Debian or Ubuntu this way:
ensure you have mysql-server installed. If not, install it with “apt-get install mysql-server”.
- Install scuttle “apt-get install scuttle”.
- Restart apache
Really? Debian is always a trooper for me, and I use apt-get like a freaking ninja (or samurai), but some software just does NOT work easily for me. This was one of them. It’d kind of work, if you were happy with a webpage that was covered with error messages.
The real Installation:
- Get a copy of Scuttle (latest stable)
I like to untar it and move it to /usr/share/scuttle.
- Make sure you have apache, msql and php intalled
Versions may change or be different due to distributions from the commands below. When it doubt use “apt-cache search apache” or whatever package you want.
# apt-get apache2
# apt-get mysql-server
# apt-get php5
You’re going to need to know how to use and configure apache. This involves using apache conf directives to link /usr/share/scuttle to http://hostname/scuttle.
- Create MySQL database and user
Log into MySQL (I used root as my admin user during setup and set a password, you may have a different setup.
# mysql -p -u root
mysql> CREATE USER ‘scuttle_usr’@’localhost’ IDENTIFIED BY ‘the_password’;mysql> CREATE DATABASE scuttle;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON scuttle.* TO ‘scuttle_usr’@’localhost’ IDENTIFIED BY ‘the_password’;
mysql> FLUSH PRIVILEGES;
- Once the database is setup you must fill it with the tables that Scuttle needs in the DB. The tables.sql should be someplace in the scuttle software that you downloaded and untarred.
# mysql -u scuttle_usr -p scuttle < tables.sql
more likely its this:
# mysql -u scuttle_usr -p scuttle < /usr/share/scuttle/tables.sql
- Modify the PHP configuration file
Mine was /usr/share/scuttle/config.inc.php.example so I copied it to /usr/share/scuttle/config.inc.php and edited it.
$dbtype = ‘mysql’
$dbuser = ‘scuttle_usr’
$dbpass = ‘secret_password’
$dbname = ‘scuttle’
$dbhost = ‘localhost’
$root = (mine is set to null)
$adminemail = ‘email@example.com’
- Tweak your apache setup.
I have attached my /etc/apache2/conf.d/scuttle.conf .
I did not use the .httaccess file as mentioned in the scuttle install docs. I renamed it to httaccess.original
- Restart apache and test scuttle at http://host/scuttle