Pages

2013-09-22

Slackware 14.0 64bit install - 3: More apps, some problems

Planned it to be a third-party package-managers post... Well, it isn't. I got slackpkg+ working - so I am not currently interested in other helpers. Also, as my playing with Slackware is educational undertaking, then I am kinda reluctant to turn Slack into another Salix.
So the following is more app-installs and description of various accompanying annoyances. Let's start with:

- slackpkg+ (and all installs are now with slackpkg+, if not said differently),  homepage and sourceforge files.
In my second try I downloaded it from slackbuilds, built and installed. There was 8 bit difference compared to dowloadable package. But never mind that, what's important - the thing worked. Next day I let it be upgraded with the same slackpkg+, and it still works... It's funny how Slackware teaches to be happy when absolutely trivial things actually work :)
I played around with adding and removing mirrors, changing their positions in repo list, and so on. Drove me almost nuts... I ended up with no salix on list (their repo is missing md5 check - and slackpkg doesn't like that at all), and 'upgraded' most of my salix pacakages to others like alien bob or slacky. Which caused me quite a lot of greaf.
And which also means I have to blacklist some salix-packages - to avoid them to be upgraded or continuously whined-over by upgrade-all. First ones in blacklist are:
- Openbox and obconf. After 'upgrade' to slacky versions I lost all icons in openbox menu. I discovered that after some other installs and so wasted 1,5 hours with searching wrong leads... Installing salix versions back fixed the problem. Seems it had something to do with slacky (and alien bob) packages not referencing to imlib2
- conky 'upgraded' to slacky. After that it refused to start - missing liblua and libtolua. Both were installable, though. Then, at some point, I removed audacious and bloody conky had a new problem - it missed libaudcore.
So I had to reinstall audacious. I have to say that this made me a bit angry.
Edit | Recently, the bloody moron (slackpkg+) suggested lua 'upgrade' to alienbob... conky got broken again. As slackpkg also refused to install slackys' lua package, I had to download it and installpkg. Then conky worked again.
Some philosophy here:
a) I am not sure anymore that slackpkg+ is worth the hassle. It seems bloody easier to get your stuff yourself - and you know what you have downloaded and you upgrade when you want.
b) Occasionally it seems easier to compile than to use binaries. It goes for contributed packages, and also for some 'officials'. |
- dotnew sf:salix64. Definitely better tool to fix new configs than slackpkg one.
- gksu sf:chess, depends on libgksu s:slacky and on libgtop sf:salix64. It still refused to run and as appeared, it has somewhat oldish (two years at least) configuration bug. To fix it, do:
mkdir /usr/lib/libgksu
ln -s /usr/lib64/libgksu/gksu-run-helper /usr/lib/libgksu/gksu-run-helper

For me it fixed it. But I saw one case in web where this didn't help...
- google-droid-fonts, kikinovak.
- murrine engine from sbo.
- gparted, slacky - needs gtkmm (which I already had because of nitrogen install).
- fsarchiver from sbo, no deps.
- mplayer codecs, kikinovak.
- mplayer. There I had a bit confusion - slackpkg didn't show it in Slackware repo, but slakfinder claimed it to be 'official'. So I installed it from sf:official. And uninstalled vanilla phonon-mplayer. I hate GUIs that look like shittily designed car dashboards.
- smplayer from kikinovak.
- abiword 2.8.6, slacky - needs wv - slacky, AND despite sbo saying 'optional' - libgoffice is needed - slacky.

-- gdm: Tweaking flower-pr0n off. Two important places:
/etc/gdm/custom.conf and /usr/share/gdm/themes
Since I installed Salix gdm-package then there was quite a few themes to tweak. I took one, copied it, swapped all pngs, tweaked .desktop and .xml to match filenames, tweaked .xml a bit more for login-menu position... Done.
Then ran: 'gdmsetup' and picked this and that.
Logout and ... what the hell is this? The look was complitely different of what I expected. It wasn't even my theme... Back to openbox, gdmsetup - and it appeared that the moron leaves all checked themes checked, and shows the first one on list. You have to uncheck others and specifically choose 'show selected only' option.
Otherways, everything worked fine and my login-screen now looks great.

Also, most of tweaking and installing is done now. Just some more experimenting (bashrc, rc.d ...) and then I start to play with other Slackwares' window managers.

Some more useless philosophical musings - a) Slackware is probably quite great if you don't poke it. b) It's quite annoying when you do. And takes a shitload of time.
It's definitely a distro not fit for casual user.
Despite that I find it ...errr... intellectually stimulating with its complicated ways, I guess that slapt-get way is better. It really saves a lot of time and annoyances.
See also: part 1, part 2.

2013-09-17

Slackware 14.0 64bit install - 2: Apps

Xfce in Slackware looks completely stock. And it is that. Good - so we can customize it, and other WM-victims, to our fine tastes and don't have to tear down wimpy vanilla customizing! Alas, that has to wait.
This here is about installing apps and things, and without automatic dependency checks at that! And, if you are Slack-n00b - as you should be if you are reading this - let me stress, there REALLY isn't checks.
slackbuilds.org has dependency info as a comment... mostly. And no, Slakfinders' packages doesn't have dependecies included, but description pages have 'required' field (probably filled).
Those mentioned two ARE essential web-pages for app-hunting: slakfinder.org = sf (binaries from different repos) and slackbuilds.org = sbo (build scripts and links to sources).
Most of following apps were installed either with stright 'installpkg' or through SlackBuild/installpkg (yes-yes - I am going to try out slapt-get, sbopkg and src2pkg. There will be 'Edit' or something about that. Maybe).
So, take the following (partial) list as an example how-to. Oh, and there are some pretty good apps in this list, too. Naturally, it will be Openbox installation - no Kdes' native apps will figure here.

Two commands for checking what we already have out-of-box: slackpkg search xxx, slackpkg file-search yyy. They are very useful. The first one searches packages, the second, naturally, files. You don't have to write whole names, all that fits will be shown.
To business:

- udevil for mounting things, spacefm as the file manager. Those two have their own installers. Worked like charm, no dependencies missing.
After installing, add following line for kernel polling into /etc/rc.d/rc.local:
echo 3000 > /sys/module/block/parameters/events_dfl_poll_msecs
One more thingy - both will be installed in /usr/local/bin. So, if you specify udevil as your 'mount command' in spacefm, don't leave it '/usr/bin' like it is in example there.
- medit sf:slacky.
- webcore-fonts sf:salix64.
Then delete link: /etc/fonts/conf.d/60-liberation.conf
then run: fc-cache -f
- gdm sf:salix64. Needs libgnomecanvas sf:salix64
- libconfig (for compton) sf:salix64.
- compton, get source from https://github.com/chjj/compton and there is Readme too.
make && make docs && make install
- openbox, obconf sf:salix64.
- tint2 - source, v.0.11. How to make svn tint2.
Needs imlib2 sf:slacky.
In essence: in your /tint2 build folder, as user, run and do:
svn checkout http://tint2.googlecode.com/svn/trunk/ tint2-read-only
download:https://www.dropbox.com/s/gmko5d6sy8qjpao/tint2patchfiles.tar.gz
and extract the three files to /tint2-read-only
cd tint2-read-only
patch -p0 < src-task-align.patch
patch -p0 < freespace.patch
patch -p0 < launcher_apps_dir-v2.patch
cmake -DCMAKE_INSTALL_PREFIX=/usr ./
make
make install

- volumeicon sf:salix64.
- wmctrl sf:salix64.
- xdotool sbo: this SlackBuild wants source tar in its folder (not an extracted folder); result goes to /tmp. Copy/move it to your packages folder, do installpkg.
- qbittorrent sf:salix64. Needs libtorrent-rasterbar sf:salix64.
- qpdfview sbo: here is unpacked source-folder OK, resulting package goes to /tmp. Take it, installpkg it.
- nitrogen sf:salix64. Needs gtkmm ... - I probably left some set uninstalled OR the dependency-info in sbo is incorrect, it needs additionally: ... atkmm, pangomm, glibmm, cairomm, sigc++ sf:alien bob.
First 'ldd' said that there was also libgiomm missing - but it came obviously from somewhere... anyway, it wasn't available neither in sf nor in sbo.
- gcolor2 sf:salix.
- xarchiver sf:ponce.
- galculator sf:salix.
- FBReader sf:salix. Needs liblinebreak sf:salix.
- icedtea-web sf:slacky.
- gucharmap out-of-box, but not starting, saying that it's missing schemas. Run:
glib-compile-schemas /usr/share/glib-2.0/schemas
Lotsa deprecation-drivel there, but gucharmap started then OK. But whining that it's 'using the memory gsettings backend' - and this means, it needs dconf sf:salix.
By the way, Gthumb for example, also needs dconf for remembering its settings. Stupid gnomish trash...

- When writing Openbox menu, mind that xfce4-terminal is called Terminal.
- there is no ~/.bashrc - and terminal prompt looks...errr... boring. Either you have to write your color-code or copy relevant parts from some debian distro, for example. bash_completion works alright, but some added aliases should be fun too.
And so on.
It seems to me OK method to check dependencies through sf and sbo - they list only those that are missing in vanilla Slackware install (sbo at least does, not so sure about sf). If app is not in sf or sbo - or still doesn't start, try 'ldd' command and/or homes of app for info.

Everything I installed to this point works OK. I have still blue-flowery pukey gdm for login and already mid-customized dark science fictionish OB 'desktop'.
... I might even add third part, 'Installing non-native package managers and what crap happened then'.
See also 'Slackware install  part 1'.

2013-09-16

Slackware 14.0 64bit install - 1

Let's start with whining. Getting Slackware installed took me approximately 15 hours - 90% of that went for preparatory reading. At least 70% of reading was useless waste of time.
That's because Slackware docs and wikis are mostly outdated. There isn't one place with properly updated tutorials. I can't be bothered with analysing why it's like that, but it is bloody frustrating to dig through old (and irrelevant) crap.
So, I will be kind and caring in my attempts to make it easier for you, means, even more verbose in my report than usual.

-- I wrote iso to USB, using plain simple Unetbootin (in windows xp, too). And it worked. Means, with ver 14 it's not really neccessary to play around with mini-images or hybridize your iso before dd.
Though - the start menu was a bit funny: memtest, default, huge.s and speakup.s ... last three did the same thing - booted huge kernel. Why the hell is there something called 'speakup' ...?

-- There isn't anything essentially difficult in Slackwares' install process. It's different, alright, but at the same time logical and it has quite a lot of explanatory text.
If your favourite is not fdisk, it's easier to prepare your partition(s) beforehand.
Combination of usb and full iso means that your source is on HDD. Open the list and and pick your usb (mine was /dev/sdd1). Then pick the folder - it's /slackware64.
Setup need to be started with 'setup'.
Select sets you want installed. I left out only Kde and Kdei (and you still get qt-4 installed, a good thing); pick full install in next menu (less dependency problems afterwards).
Configuring: Lilo - as I have Grub2 as my master-bootloader, then I installed Lilo to root (just for creating editable entry for Grub to find). Then I picked usb mouse; for network hostname=takeyourpick, domain=local, ip=dhcp. Then came startup services (You can later change them with pkgtool > setup > services). Then clock; what WM or DE will be default - I chose Xfce (later changeable with xwmconfig); finish with root passwd and boot with ctrl+alt+del.
I booted, did update-grub.
Now, despite generic kernel being also installed, there isn't any initrd created for it - means, booting generic kernel ends in panic. No worry - boot with huge kernel and continue with install.

-- When landing into login prompt, login as a root and then run 'adduser'. It will create your normal user. Creating new user is quite simple, read and respond. Only thing I changed, was to add 'wheel' group to my user (not sure if this gives something additional, but it made me feel good).
Edit | Good that I did. Wheel can be used for sudoing. See here. |

-- Update system: Open /etc/slackpkg/mirrors file with editor (nano is alright for me), and pick only one mirror and uncomment it. Save.
slackpkg update gpg
slackpkg update
slackpkg upgrade-all

# the last one gives you a list of choices, including minor kernel upgrade (dangerous). I bit the bullet and did them all. And it worked.

-- Then I installed slackpkg+. It's an addon script for slackpkg and gives you multi-mirror capability (ordinary slackpkg knows only slackware repos, nothing else).
Unfortunately, it didn't work for me. Whatever I did, I got a reply that I should update before doing it. And update said that there is no packages list available. I removed slackpkg+ through pkgtool and package management worked again. I have no clue...

-- Creating initrd for generic kernel. Run:
/usr/share/mkinitrd/mkinitrd_command_generator.sh -l /boot/vmlinuz-generic-3.2.45
This gives you a) a mkinitrd command to run, b) lines to put into /etc/lilo.conf
a) My command was like this (I changed initrd file name to be more specific):
mkinitrd -c -k 3.2.45 -f ext4 -r /dev/sdb4 -m mbcache:jbd2:ext4 -u -o /boot/initrd-generic-3.2.45.gz
b) And my lines for lilo.conf:
image = /boot/vmlinuz-generic-3.2.45
initrd = /boot/initrd-generic-3.2.45.gz
root = /dev/sdb4
label = Slackware 14.0 Generic 3.2.45
read-only

# And do not forget to update-grub too. By the way, no need to write 'on /dev/sdbx' into label - Grub2 does that automatically.

-- Multilib thing - to add 32bit app running capability. I didn't do it. With slackpkg+ it would have been easy-peasy. Without - a bit hassle. I do it when I need it.

-- NVIDIA, one might take a look here - if binary solution doesn't work.
Again, there are quite a few different ways of doing it. Confusing. So I decided to start with the simplest - Nvidia binary.
Downloaded it from Nvidias' page, made it executable, ran it (from console, no X running!).
chmod +x NVIDIAxxx.run
sh NVIDIAxxx.run

After a while installer finds nouveau driver, blacklists it and wants to reboot. Do it.
Also - if you didn't already, update your Grub2, and boot to generic kernel.
Run Nvidia installer again. It does its thing and asks to write xconfig. Yes, let it.
Video driver should be installed now, and time to visit desktop.
Got a picture? Good, then you can change default runlevel (3) in /etc/initab to id:4:initdefault, and your next boot should go to default desktop.
Well, I did that after I installed gdm as display manager. It's probably also wise to run 'xwmconfig' as a user - for creating your own .xinitrc file (there was said somewhere that gdm kinda needs it... not sure).
... to be continued in part 2, 'Installing apps'.
I like Slackware a lot.