20 September 2011

Spotify for Windows (for Linux)

So Spotify is a pretty good way to listen to new albums...as long as I know the albums exist.

It turns out that Wine can run the Windows version of Spotify from either my 32-bit or 64-bit installations of Slackware Linux. Spotify can't read any of my .ogg files, but if the point is to hear new albums, then maybe that bug isn't too terrible.

The interface between Spotify and the dreaded Facebook does not work, but why would anyone care what nonsense streams from my computer anyway, right?

24 November 2010

In the style of Twitter

Slackintosh-current on a G5 iMac

Debian 5.0 for PPC is elegant and easy to use, and 6.0 will probably be even better once the installer is fixed. I wanted a more minimal system, so I returned to Slackintosh, even though it is only semi-maintained. The -current version of Slackintosh still gets updates, however. So here is how to get Slackintosh on a G5 iMac:

Partition the disk, and separate the /boot partition, so that it can be accessed by multiple Linux installations (format this partition as ext2). Give yourself at least three additional partitions of around 5 GB to work with. My disk looked like this: Partition Map, NewWorld bootblock, HFS Mac OS X installation, swap, ext2 /boot, JFS for Crux root, ext3 for initial Slackintosh root, JFS for future Slackintosh root.

So: one partition is for a temporary Slackintosh install, and can be small; another is for a chroot environment (CruxPPC), and can also be small; the last will be the long-term home for Slackintosh. Add extra partitions for /usr/local, /home, etc. as desired.

First install CruxPPC to a small partition (3 GB is plenty). Crux provides a convenient environment for building 64-bit kernels, which you will need to boot a G5. The shipped kernel (g5ppc64) for Slackintosh 12.1 works, but it is old (2.6.16?) and lacks support for several file systems.

Follow the installation instructions for Crux. Build a new kernel under Crux with whatever options you want—filesystems, crypto, SMP support, etc. Do not count on any modules, because the modules that ship with Slackintosh (and the ones you could build with Slackintosh) are 32-bit, and so won't load on a G5. The kernel configuration under /proc/config.gz will boot as-is (copy it to /usr/src/linux-*/, gunzip it and rename it to .config), but you may wish to add more features. You can even download up-to-date kernel source and make a super-new kernel. Install the new kernel and verify that CruxPPC boots properly.

Install Slackintosh 12.1 to a different partition, but skip installation of the yaboot bootloader. I later migrated this installation to a JFS-formatted partition, but for now, just get an installation onto the hard drive. Instead of configuring yaboot from Slackintosh, reboot into CruxPPC.

Now is the tricky part. At this point, the computer can only boot into CruxPPC Linux (and possibly Mac OS, if applicable). As a test, edit /etc/yaboot.conf under CruxPPC to boot the new Crux kernel with the temporary Slackintosh installation as root; run ybin -v and boot into Slackintosh with the CruxPPC kernel. If this step works, migrate the temporary installation by mounting the other partition and umask 000 as root, then running cp -a /$dir /mnt/<mount point>/ for each $dir in the root (

/
) directory. The Slackware website has useful information on migrating an installation. Do not forget to create /proc, /boot, etc. directories on the new drive.

Reboot into Crux, add the new drive to /etc/yaboot.conf, and run ybin -v (daring souls can do this step from the temporary install of Slackintosh without rebooting). Reboot into the Slackintosh on the permanent partition with the new kernel. If everything has worked so far, then there is probably no need ever to boot into Crux again, but I recommend keeping it around as a chroot environment to update the kernel: remember that Slackintosh builds 32-bit binaries for userspace applications, and Crux builds 64-bit binaries like the kernel.

The Slackintosh website and changelog provide some help on upgrading from Slackintosh-12.1 to Slackintosh-current. I recommend the upgrade, but it requires rsyncing and a few GB of patience. With or without the update to -current, Slackintosh is quicker than Crux more powerful than Debian. Slack also has better logos.

28 February 2010

For good measure

I did attempt FreeBSD; it did not boot.

27 February 2010

Goddamn it, BSD

I can't help but quit you. I want to admire how BSD works and fits together, but damn it, shit doesn't work. True believers can tell me that I don't know what I'm doing, and perhaps they're right, but I've now installed OpenBSD three times and NetBSD once. NetBSD is okay, but not superior to Linux on my laptop, and not usable on this computer; OpenBSD is unreliable on the laptop and unpleasant to use on this iMac G5. From what I can gather, no BSD is appropriate for my netbook. Quo fucking vadis? I want to try this OS, but I can't justify using it if it is obviously inferior.

30 January 2010

Inspired logon screen

04 November 2009

go6.net, freenet6.com IPv6 solution at last!

Yes!

I've been bragging about how I turned a g5 iMac into a Debian server, thanks to the good people here, but my tunnel to the IPv6 internet kept dying (a common problem). At least two weeks passed while I struggled with crontab and generally fumbled towards a solution.

The main problem, I now realize, is first, that the connection is fragile and occasionally drops (obviously). To automatically reopen the connection, I added the following to root's crontab:

0,5,10,15,20,25,30,35,40,45,50,55
  * * * * /bin/pidof gw6c >/dev/null 2>&1 || /etc/network/if-pre-up.d/gw6c

Unfortunately, the script to reopen the tunnel always tried to ask a question: "do you want to add some server to your configured list, blah blah blah?" Since I was nowhere to be found, the script kept asking over and over, got no response, filled up my inbox with error messages, and finally died without reopening the connection.

The fix was to add the line always_use_same_server=yes the the gw6c.conf file. The script asks no questions, and the connection is now reasonably stable. Now I can get all all my files from anywhere.

03 November 2009

Toxic cloud computing (ha!)

The next big thing on the internet: cloud computing, even though it was the first big thing. Weren't MUDS, OLGA, and timesharing computers "cloud computing," anyway?

Now cloud computing means Google and Microsoft Azure and Amazon's computation service, or whatever. I am sure that for some companies, these solutions make sense. But wouldn't it suck if your remote data got hacked? What about that time Google Mail crashed?

Everything has its risks. Still, I am puzzled. Computing power is cheap and only getting cheaper. Plenty of people carry phones with enough space to fit every email they'll ever write. Why centralize our data? Unneeded cloud computing invites a security nightmare.