Pages

Showing posts with label Slackware. Show all posts
Showing posts with label Slackware. Show all posts

2015-01-25

Changing themes in Openbox

Skackware64 14.1, Openbox, tint2, conky, feh.
## After using three month almost only Slackware with my slightly-Steampunk theme, I got bored and recalled idea I had - to make script to start X+OB (without display manager) with visual theme I like at that moment, with choice of others.
So I made it happen. In most primitive bash (me - bash-n00b).

# There are one Chooser and four Swapper scripts (as I have currently four themes):
-- 1. Created conf-number file, like:
if [ ! -f obtheme/theme ]; then echo "1" > 'obtheme/theme' ; fi
Get the number:
theme=$(grep -o '[0-9]*' obtheme/theme)
Every time theme is chosen, new number is also written into theme-file.
Those above are for marking previously chosen theme ('if then echo') - and also to let wallpaper-randomizer script to know which one is current.
Then I set some variables;
did 'while' and 'if' between choices, 'read' those 'if'-s, and 'break'-ed with correct answer;
And final 'if-elif' then does
if ... ; then exec "ob-thx.sh"
with chosen theme-swapper script.

-- 2. Swappers
I Collected everything possible to ~/obtheme/xx folders. Like tint-stuff and wallpapers and conf files to be swapped.
For various reasons - there are either symlinks or files overwritten (respectively 'ln -sf' and 'cp').
- Two gtk confs (.gtkrc-2.0 and .config/gtk-3.0/settings.ini = gtk-theme swap);
- my wallpaper randomizer script for that theme (symlink). But - randomizer can also be modified to pick folder according to already existing theme-file number, and then there is no need to swap it | Edit - Done, see the end of the post |;
- .fehbg in ~/ (to pick up another wallpaper-folder);
- rc.xml (OB-theme swap) and autostart in ./config/openbox. Those are also symlinks which point to theme-specific files. Different tint2 and conky confs are opened from swapped auostart;
- and lastly, 'startx'. Or for debugging - as Slackware without display-manager doesn't want to log X-errors - startx 2>.xsession_errors

So, I now start my X either with alias 'sx' - no change, stright to X;
with 'sxz' - which opens up dialog of theme-change;
or, I can pass that and use aliases for swappers: sx1, sx2... .

For anyone fluent with bash - to make such scripts is totally no issue. What takes time is preparing themes - from various conf changes to actual pic-making or theme-tweaking.
But I have to say - it's most satisfactory to see my whole "desktop" instantly and totally changed.

Addon: Here is a simple script for swapping wallpapers inside the current theme wp-folder. Also, keyboard W+1 is mapped in rc.xml as 'swap desktop to first one and run randwp1.sh'.

#!/bin/bash
## very simple random wallpaper picker, through feh or nitrogen
## --------------------------

sp1="/home/user/obtheme/sp/wp"
sf2="/home/user/obtheme/sf/wp"
fan3="/home/user/obtheme/fan/wp"
nat4="/home/user/obtheme/nat/wp"

# theme number variable from theme file
theme=$(grep -o '[0-9]*' /home/user/obtheme/theme)
echo $theme
# directory containing images
DIR=$(if [ $theme -eq 1 ] ; then echo "$sp1" ; 
 elif [ $theme -eq 2 ] ; then echo "$sf2" ; 
 elif [ $theme -eq 3 ] ; then echo "$fan3" ; 
 elif [ $theme -eq 4 ] ; then echo "$nat4" ; 
 fi)
echo "$DIR"
# select a random jpg from the directory
PIC=$(ls $DIR/*.jpg | shuf -n1)
echo "$PIC"

# use nitrogen to set wallpaper
# nitrogen --set-scaled $PIC
# use feh
feh --bg-scale $PIC

exit 

2015-01-18

Slackware64 14.1 + new kernel

Yeah, compiled a new 3.14.28 kernel - in a bit leaner way than slackware generic is.
So here comes concisely how I did it.

# First, open up this page and read it - my description here is almost the same, with occasional addons. And - I did everything on desktop terminal until Nvidia drivers' reinstall (logout, console, init 3).

1. Download the source (and pgp .sign) from kernel.org, copy to /usr/src, unxz the source file (tar needed afterwards), then unpack source to folder. To be nice and orderly, do: rm linux && ln -s /usr/src/linux-3.14.28 linux
cd linux
zcat /proc/config.gz > /usr/src/linux/.config  # or use some other handy config...
make oldconfig  # to insert kernel changes into old config file.
make menuconfig # Which probably takes two hours at least. But it's worth to be alert and click everything - for not to miss, for example, your network drivers.
make bzImage modules
make modules_install
cp arch/x86/boot/bzImage /boot/vmlinuz-custom-3.14.28
cp System.map /boot/System.map-custom-3.14.28 
cp .config /boot/config-custom-3.14.28
  # instead of 'custom' comes of course your special name you gave to your kernel (when menuconfiging).
/usr/share/mkinitrd/mkinitrd_command_generator.sh -k 3.14.28
This nicy script gives you exact command for creating initrd. Do it.
cd /boot
There should be three links to: kernel, system.map and config. Change those to point to your new files (ln -sf filename link).
Done with the kernel.

2. There is link /etc/rc.d/rc.modules which points to old rc.modules-3.10.17; copy this old modules file, rename it according to new kernel modules folder name (or 'uname -r' - which you can't use as kernel is not yet installed :) and change rc.modules link to point to this new file.

3. Grub or Lilo - has to be rerun for introducing new kernel. I have Grub2 in Wheezy (which I still keep only for hosting my multiboot) - I mounted Wheezys' partition and simply edited /boot/grub/grub.conf file. And that was that.

4. GPG-check. (Additionally to AlienBobs' tutorial there is also nice explanation in kernel.org.)
wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.14.28.tar.sign
Put it into the same folder where you have linux-3.14.28.tar
gpg --verify linux-3.14.28.tar.sign linux-3.14.28.tar
What results 'no key', but there is id=6092693E , use this and import:
gpg --keyserver hkp://keys.gnupg.net --recv-keys 6092693E
gpg --verify linux-3.14.28.tar.sign linux-3.14.28.tar
"This key is not certified with a trusted signature" - let it be like that, done.

5. NVIDIA
Kernel 3.14 and nvidia 319, seems, are not friends - no compile, BUT newer 331.86 did the trick. Before run, delete /etc/X11/xorg.conf - and then let installer make a new one. Sometimes there is a difference - as X starting or not starting (missing screens). No, I do not know why it sometimes matters.
Last part in following is for compiling for not yet installed kernel.
sh NVIDIA-Linux-x86_64-331.89.run --kernel-name='3.14.28'
It compiled, but whined over wrong arch in  /usr/lib64/libEGL.la
Anyway - X started up. I checked aforementioned .la - and it appeared that Nvidia removed it totally. Found it in /var/log/nvidia/103, copied back and also deleted in it one dependency that was obviously 32bit... We'll see what happens next time when compiling.
According to web, reinstalling mesa also fixes .la issue.

But never mind.
I have my new kernel running and everything seems to function OK.

Slackware + apps and stuff

I happened to look around for some new apps and so on... Found some and installed.
So it seems to be a good opportunity to flash MY list of apps, and blab a bit of some of them. This list, of course, is not a template for greater awareness and being godlike, but it might give some app-ideas... Like I found when peeking into other people choices ...
And here, some bollocks then:

## The patient: Slackware64 14.1, Nvidia 331.86 binary, Openbox. My Slack-install was not the 'full' one, but rather castrated - I left out everything possible... Including vim&family - which means that dotnew didn't want to compare anything (missing vimdiff). But never mind - new config files are for promptly deleting anyway.
Not-full install means that I might mention some things as 'new' that normally get installed automagically.
- Usage of my Linux(es): Educational playing-around, no serious work done, strictly desktop. No plan to use vi or emacs, no apache et al, not even ssh and ntp; no social bullshit and fraternizing (skype, chats and so on).
So - rather simple setup with net, writing and graphic tools, and occasionally test-stuff (for example, see my silly tour with linux games)

## Beginnings of apps:
-- I always use stright Nvidia binary (sh NVIDIA....run). It blacklists nouveau, reboot, run it again, let it make conf for X. For n00bs: for every kernel or x-server upgrade - nvidia driver has to be recompiled!

-- nano is installed from ISO - so console is survivable without various vi-s;

-- slackpkg+ and sbotools - get package for the first one, and SlackBuild for the second beforehand, makes a little less fussing now.
Slackpkg+ is a wrapper for official slackpkg. It has the same tools, but it provides multi-repo capability. Ie, various ready-made packages can be retrieved from several repos (see slakfinder.org). As a bonus - playing around with slackpkg+ conf keeps you occupied for an hour, or more.
Sbotools is freebsd-like ports-script. It installs, removes and keeps account of your sbo packages. It also checks dependencies (provided those are notified in .info file). Means, makes life easier - a lot easier if install is of 8-10 depending sbo packages ...
Sbotools has .SlackBuild in slackbuilds.org and compiles easily, no deps.
Run sudo sboconf (all sbotools are sudo / su) first, change something - and you get /etc/sbotools/sbotools.conf file created. Now fill it according to wishes and documentation (man sbotools).
I find it smart to keep sbo tree (and distfiles) on different partition (not in default /usr/sbo) - the same goes for made packages.
sbosnap fetch, and off we go - sboinstall, sboupdate etc etc.
As a rule I check .SlackBuild file for compile flags - before I commit. I tend to change them flags occasionally. Means that in serious cases I also unpack source and check for all possible flags, run: ./configure --help .
NB! If using other partition - better mount it already in fstab with 'defaults' - to avoid that file manager (maybe) mounts it "safely" with 'noexec, nosuid' etc.

-- xdotool, wmctrl are helpers for certain things one can do in openbox menus.

-- xarchiver, xfce4-terminal, medit, spacefm+udevil, openbox (I want icons - dep: imlib2 and --enable-imlib2 \ in .SlackBuild too), obconf, tint2 (svn version, with launchers), conky (same with imlib2, but check .SlackBuild also for things you do not need - and '--disable'), compton, feh, gtk-nodoka-engine, various fonts, gksu.
There is no display manager and I startx (alias sx) from init 3.
As I copied all confs already earlier, my desktop is essentially finished.

## Second group, installs are already from terminal:
-- New kernel - if one feels like compiling one. The point - Slackwares' generic is really quite big and has very probably some useless stuff there. But, let's be honest - it doesn't matter - and whole compile-thing can be considered just a merry exercise of showing who is the boss.
Also do: lsmod and see if you have some pointless modules loaded (for example, I take down parallel-port, printer and some other things - either by blacklisting or in kernel).

-- firejail+firefox. "Firejail is a SUID security sandbox program..." - but take a look yourself, there is quite a lot of explaining available.

-- dotnew+meld+diffuse. No vim = no vimdiff. So I installed diffuse (sbo), and swapped every gvimdiff in /usr/bin/dotnew-gtk script to diffuse. Strange enough, it works.

-- mplayer+smplayer+volumeicon. The last one has to be ver .46 if staying with gtk-2, the later versions demand gtk-3.

-- qpdfviewer, FBReader, Geany. To mention - FBReader is nice lightweight epub and mobi reader. It remembers your last read page too.

## And, third - those things which come when really needed:
-- gparted, unetbootin, bleachbit, fslint, libreoffice, qbittorrent, galculator, gcolor2, calibre, convertlit, inkscape (gimp is in official ISO), sigil, clementine.

-- If slightly paranoid: rkhunter from sbo, and for quite nice simple tutorial looka here.
And others...

2014-11-08

Games + Slackware

Yes, something frivolous... And NO - NO STEAM games here, never.
But about installing free natural-linux games in Slackware 14.1 (64bit).
SBO = slackbuilds.org (buildscripts+source=compile)
SF = slakfinder.org (ready binaries=install)

# Battle of Wesnoth - can be easily installed from SF, Salix. There is also option to compile it from SBO, and tuning the build specifically.
deps: It might need lua (according to SBO, but not according to SF). I had lua installed previously, so I don't know.
- Wesnoth is 'turn-based tactical strategy game'. See here for more in-depth info.
Nothing more to say - I haven't played it yet.

# Tales of Maj'Eyal - Not so easy install at all. Has to be compiled from SBO, and has a bunch of deps: premake - SBO (deps: lua), OpenAL - SF binary, SDL2 + SDL2_ttf + SDL2_image - all three from SBO.
SDL2_ttf gave me error about missing/wrong libGL. Fixed it in usr/lib64/libGL.la - changed obviously wrong libdir='/usr/lib' to libdir='/usr/lib64', and compile finished without further problems. ... I have no idea why it had such a wrong address in libdir...
- Maj'Eyal is 'roguelike RPG, featuring tactical turn-based combat and advanced character building' - see here.
The game is quite enthralling, 'just one turn more' type. It's also not easy, and has various ways to die stupidly. For example: walking in sand-tunnels without digging worm ahead; lack of attention with bosses is often strightly fatal...

# Freeciv - Install is compile from SBO. No deps. Easy-peasy.
- Freeciv is 'a free turn-based multiplayer strategy game'. Has big and quite well-stocked site.
The game has several diffrent modes and mods, including civ1 and civ2. Default mode is not especially easy - certainly for those whos experience runs only in wimpy and feebleminded civ 4 and 5.
Anyway, confs are easily hackable - for example: nations' files reside in /usr/share/freeciv/nation; and in /usr/share/freeciv/default one can find all general conf files. And they all are plain txt.
At the same time, creating a new nation - by tutorial - gave somehow buggy result...
The games' gui is not especially good and easily-usable, but as a civ-game - it's very OK.

# FreeDoom - SBO, and what you get are wads only, engine has to be get separately. And it would be mightily good, if there are old Dooms', or Heretics', or Hexens' original wads available - those are also playable with zdoom or gzdoom engines.
So, pick one of them...
gzdoom seems to be newer: SBO, deps - fmodapi.
zdoom - SBO, and has more deps - TiMidity++, fmodapi, p7zip.
- Doom is a shooter - or should I say The Shooter, at least for me it was first ever game played overnights with sysadmin and some developers (right, over 20 years ago).
Take a look here.

# Lips of Suna - Well, that installation took me some 5 hours of silly wandering around. The game has to be compiled as is, no slackbuild scripts here. For guidelines see here.
Basically, by default it installs to /home/xxx/ :
cd lipsofsuna-X-X-X
./waf configure
./waf install
./lipsofsuna
Here are deps. All are available in SBO, thank god. Ogre compile, though, is long as shit.
Most entertaining was that 'lips...' didn't compile - with nicy orange-bold error. Let's cut it short and reveal my winning configure line:
LDFLAGS=-lboost_system ./waf configure --ogre-plugindir=/usr/lib64/OGRE
Part before 'configure' ensures compile, part after, that ./lipsofsuna also starts.
It bloody compiled, with one orange part (but not bold)... jeez. I am sure it wasn't worth of it. But I won the struggle! :)
- No idea what the game is about, but the word 'naked' in description got me.

# Summoning wars 5.6! - SBO. Pile of deps, for me it was - after previous games: freealut SF Slacky (deps: OpenAL), physfs SBO, CEGUI SBO, poco (deps: mysql-connector-c++, unixODBC, both SBO).
Tried to compile games' new ver.058... and no luck - cegui-084 compile crapped out with windowsy (irrelevant) message ... As this games' description hasn't any word 'naked' in it - I didn't see reason to spend more than an hour with this particular problem ... And stayed with old version - 056 - and readymade SlackBuild. CEGUI compile was slow like dead AND decomposed snail, almost like shitpile firefox ... poco was as bad - like bloody half an hour... physfs compile was short and nice. What a ... letdown..., for example ginormous gcc compiled only an hour in the same box...
a..n..d..I am already compiling sumwars! Lotsa green text! It even moves! err... slowly...! OHHHHH, it erred out, unbelievably, and for your convenience, last lines were:
collect2: error: ld returned 1 exit status
make[2]: *** [sumwars] Error 1
make[1]: *** [CMakeFiles/sumwars.dir/all] Error 2
make: *** [all] Error 2
doh!
| add next day| Fix was like that, in sumwars.SlackBuild:
-DCMAKE_CXX_FLAGS="-lboost_system -ldl" \   # added here '-ldl'.
That was that, compile finished and game started...
- 'Summoning Wars is an role-playing game'.
As all time went for compile, not for play... Only thing I can say just now - games' graphics is horrible, as expected.

| ADD |
# Naev - SBO (deps: OpenAL), two source files, naev and ndata are needed. It compiled/started with no whining...
- Naev is a 2D space trading and combat game. 
Take a look, see...

# Dink Smallwood. (Flare, Baldur's Gate)
Those three are vague future plans. If they, or something else, materialize , I ADD.

All-in-all: Native Linux games mentioned here
- look like shit of various degree,
- play good IF they are out of pre-alpha (infrequent miracle!),
- and install mostly ... like shit.
I am sure that next year is Linux-Desktop Year. :)

2014-04-29

Slackware, Sid, lags + Nvidia 334.21

To make this shortish story a bit longer, let's start with that I clean-installed Slackware-current over my 14.1 ... because after last patches etc it had developed various quirks which annoyed me a bit. And when the choice is between spending x-hours hunting mysterious faults or spending some 3 hours with new and virginal install/rebuild - I'll pick the last one, period.
Install and rebuild were quite uneventful - nothing to whine over ... Maybe of the contrary - some 2-3 bugs with apps in 14.1 had resolved themselves meanwhile. And it helps to have previous install-list of apps, deps and shit.

But when attempting to install (previously used in 14.1 ) binary Nvidia driver 331.49, I had sudden 'unknown libEGL.so' problem, and no install. So I went for the latest beta - 334.21, which installed with no problems.
... Well, week before or so also smxi in my Debian Sid had got the same driver installed (after Xorg update, as the 'current nvidia'). And I had started to experience some lagging with mouse and keyboard. Sorta, occasional 1-2 seconds before slider moved, or mouse click registered or typed letter appeared. Bloody annoying, that! But, frankly, I thought that the culprit is some other critter of myriad of Sids' upgrades - and that it goes away with next bunch.
Now, after I installed the same driver to Slackware - and at once started to experience lags, I sure reconsidered. As an afterthought - it was most probably some kind of not-syncing between this Nvidia driver and Compton compositor.
Anyway, I didn't want to part with Compton, so I downgraded the Nvidia driver - and successfully, despite:

1. Slackware - previous installers' libEGL crap and no install.
I went to runlevel 3, did separate
sh NVIDIA-Linux-x86_64-334.21.run --uninstall
without letting Nvidia to restore previous xorg.conf (no idea if that matters), then slackpkg search mesa && slackpkg reinstall mesa-9.1.7-x86_64-1 to be sure I don't have leftovers from Nvidia (as I heard, Nvidia overwrites some of mesas' files). Then:
sh NVIDIA-Linux-x86_64-319.49.run
with 32bit support and 'yes' to overwrite xorg.conf.
Success, no whining from installer, AND - no more lags!

2. Sid. Not with smxi help this time, but manually:
telinit 1
sh NVIDIA-Linux-x86_64-334.21.run --uninstall

That finished with installers' ominous whine about leftover symlinks. Whatever... I decided also not to bother with mesa and press on and see what happens:
sh NVIDIA-Linux-x86_64-331.49.run
'Yes, do install' - to installers' worry about 'maybe runlevel 1 is not good...'
With 32bit support, 'Yes' to overwrite conf.
Success, and no more lags!

Simpleminded conclusion: If you experience lags (especially after pointless upgrade to latest/greatest Nvidia driver), try downgrading a bit. Beta really was Beta, in my case.

2014-02-08

New hardware, old Linuxes

I swapped out my 5 years old machine to a bit more contemporary one.
Everything except video card (gtx 560) and one irrelevant hdd got swapped out.
Relevant changes were - ahci/ehci mode for hdd-s, new sound chip, new network chip.

Practical philosophy for hardwaring:
Decide what you really need - for example, in my case:
- inverted-layout box, as I keep it against wall and wanted to turn back panel to front (which would have caused blocked cooling for classic box). AND - it's very, very inconvinient to have big video card and hdd-s kissing each other.
- bigger hdd bay, for not cramming several hdd-s on top of each other.
- modular psu, as miditowers are bloody tight really.
- and if you do not need raid or full-ATX or simply-mucho-expencive MB, then really, you don't.
Why back panel in front, you ask? Because it irritates me to have usb-s divided between ends of box. So I cannibalized the front and planted usb-s, switches and leds to back panel, closed holes in front panel and - done.
- There are two things one have to read - as RTFM - MB manual and Bios. Don't skip!

Software, fixing it:
I packed (and backed) up all my current 5 linuxes with fsarchiver. Then I connected the new system-hdd to the old machine and unpacked distros to their new partitions.
When the new box was ready - bios checked etc, it got it's hdd-s installed. First boot was from usb stick (which happened to be PartedMagic).
Usb because, with such a total overhaul there are some things to be done before you can have any hope to see your dear display manager again.

# Did the distros end up on different partitions (of originals)? Open up all etc/fstab-s and correct them. There is no such problem if fstab uses UUIDs (sudo blkid to get whole list) as fsarchiver restores systems with original UUID.

# Chroot.
For that procedure it's better to google and find your own recipe - I am not sure that mine is the very right one.
What you have to do is, basically: mount and bind targets' /sys, /proc and /dev (for debian, better to mount also sysfs) to /mnt, then
sudo chroot /mnt. And fun begins.
Patients: Slackware, Salix, Vsido and my own netinstalled Wheezy and Sid. All need new initrd files (changed drivers!)
- Slackware and Salix have most nice mkinitrd script, currently ran like that:
/usr/share/mkinitrd/mkinitrd_command_generator.sh -k 3.10.17
which works no problems. Run lilo afterwards. In my case, lilo is in root part (not MBR), and has to be run with partition-number: lilo -b /dev/sda2 -c
- Debians: dpkg-reconfigure linux-image-3.x.x... (number is uname -r). Which is dandy, except that uname -r in chroot shows number for host kernel. So I checked up how old initrds look and - seems that everything between kernels' number-start and .gz IS the right thing. Example:
dpkg-reconfigure linux-image-3.11-10.dmz.1-liquorix-amd64
The good thing with previous command is - it also renews your grub.
Done with chroot. 'exit' and 'umount' everything you mounted.

- And that was all that Slackware needed for reaching the desktop.
- Not so with Debians - error: no screens, and no xorg. To cut it short, the solution was  simple: delete /etc/X11/xorg.conf and recreate it. Mind! I am talking of Nvidia binary driver. It installs itself and also makes new xorg.conf. I do not know what happens with other video drivers.

# Network: new chip, new interface = no network.
The important file is
/etc/udev/rules.d/70-persistent-net.rules
Only Wheezy - somehow - managed to create new entry there (with new mac number!), and named it as eth1. And/but - eth1 does not start automatically - still no network.
So, I copied this new entry to every other distro, changed NAME="eth0", and that was that. I still do not know where to find mac numbers :)
It is also said that deleting that file and rebooting creates automagically the new (correct) one.

# alsa gave a looooong list of warnings when starting (but worked). In Slackware, delete
/var/lib/alsa/asound.state
and create new, 'alsactl store', done.
In Debians.... I think it just went away after first boot.

# Sid and sensors. Or, really - no sensors... Run:
sudo sensors-detect, answer questions, let it write modules and run:
sudo /etc/init.d/kmod start
Done.

# Annoyances:
- monitor dimensions changed and some (desktopy) things were not in right places anymore.
- sensors data presentation errors in conky (new cpu, new 'cut's  etc)
- console resos out of whack. None that is possible according to vbeinfo is fitting for 1920x1080. and KMS doesn't work as I use proprietary driver... bugger. Still no solution here.
- some 5-6 irritable hours thrown into googling.
And I am sure there will be more things creeping out.

But all in all - it was quite alright compared to coming reinstall of borked Windows. Always hated that...
'Old Linux in new box' can be summed like that: fstab, initrd, 70-persistent-net.rules. Done.

2014-01-11

Salix upgrade 14.0 to 14.1

I haven't used my Salix some month... lately because "let's upgrade before...". Or, to put it differently - after Slackware-proper is installed with all custom adds, then there is really no reason to go for 'easy'. Because tuned Slack is easy, and one finds gslapt kinda... strange.
So much of philosophy.

Essential links for how-to-upgrade: salix and slackware.
How I did it, in my Openbox Salix, step by step:

1. New sources: swap 14.0 to 14.1 in /etc/slapt-get/slapt-getrc and slapt-srcrc
2. slapt-get -i xfce4-terminal
The name of the terminal changed, back to proper one. It's sensible to install now, and also change links in your menu.xml and rc.xml (and don't forget tint launcher).
3. ls /var/log/packages/ker*
Get the list of installed kernel packages.
4. slapt-get -i kernel-xxx
Swap out everything (needed part is like 'kernel-headers', and NO numbers). Here is the point to decide: IF writing kernel files over OR installing paralel (can be accomplished with 'installpkg precise-packagename'. I decided to overwrite because I already knew (from Slackware upgrade) that new kernel works in my machine.
5. /usr/share/mkinitrd/mkinitrd_command_generator.sh -k 3.10.17
This gives you proper command for creating initrd, in my case it was:
mkinitrd -c -k 3.10.17 -f ext4 -r /dev/sdb2 -m mbcache:jbd2:ext4 -u -o /boot/initrd-generic-3.10.17.gz
Initrd name I changed, as I wanted it to be more informative.
6. update-grub or lilo -v
To get your boot-manager aware of kernel change.

7. Now I went to console, logged as root and did 'telinit 3', then:
slapt-get -i glibc
slapt-get -i slapt-get
slapt-get --upgrade
slapt-get -i udev
There was a PILE of warnings about symlinks and folders and whatnot... But for me, afterwards, everything came out OK.

8. If using proprietary driver (whitch you downloaded before):
NVIDIDA: sh NVIDIA-Linux-x86_64-319.82.run --kernel-name='3.10.17'
Let it install and create xorg.conf too.

REBOOT.

My desktop came up without any problems.
Then I started to check EVERY installed app:
- compton needed recompile (missing lib).
- clementine did not start, I reinstalled and then it wanted additional libary - chromaprint, I got it from sbo.
- qbittorrent not starting but upgrading to latest available version from Salix repo fixed it.

Everything else seems to work.
Unpleasant surprise for me was that 'custom' repo (my package folder) in slapt-getrc is not working - 'can't find file'. So I did all upgrading from there manually. Whitch deepens my feeling that I really don't need Salix when I have my 'tuned' Slackware.

Otherways... CPU-usage tends to be 3-4% idle - too much.
But all-in-all - very good outcome. Even a bit better, missing-library-wise than real Slack. Congrats, Salix team.
And we'll see if new problems appear or not. If yes - there will be 'edit' here.

2014-01-07

Tuning fonts

Not an essential thing - but..., well, better picture looks better.
Now, I did most tweaking in Slackware, and Debian differs.
Mind, very much of fighting with fonts is try-and-test. No 100% recipes here.

'Fontconfig warning: '/etc/fonts/conf.d/50-user.conf", line 14: reading configurations from ~/.fonts.conf is deprecated.'
When starting some app from terminal, the previous message is not uncommon.
Essentially, it doesn't mean anything practical - for now. Simply, somewhere in future, fontconfig starts to search for things somewhere else. /etc/fonts/conf.d/50-user.conf specifies those 'future folders'. At least currently Slack doesn't have those folders. But whatever.

Here come some very useful links:
Console and more (Slackware)
Desktop and font substitution - both links are from Ubuntu, but it mostly is universalish... It's always a good idea to look into Archwiki.

# Console, and I am following the text of Slackware-link provided above:
Terminus font is good, do it. Console text gets ... much fuller-looking.
In netinstalled Debian, terminus is not installed by itself. But it is in repo.
I am not sure if Slacks' .bashrc  piece works in Debian... There are two other options: see here, or run following and make your choices:
dpkg-reconfigure console-setup

For checking what's your dpi: xdpyinfo | grep resolution
- I have gdm in Slack, so I added
0=/usr/bin/X11/X -dpi 96
to [server]-part of my /etc/gdm/custom.conf . Better (easier) to reboot for effect. And it worked.
As a comment - I had my Slackware console looking a bit ... chewed - textwise. It was exactly that dpi (somehow) was not proportional. The same (but worse) goes for Debian Sid.
- In Debian /etc/lightdm/lightdm.conf and lightdm-gtk-greeter.conf are the patients:
The first one - outcomment and add to the end
xserver-command=X -dpi 96
The second one - has to have this:
xft-dpi=96

Adding more fonts (into separate folder): good, even super advice - do it like that in Slackware, it works. I haven't tried this in Debian(!).
Webcore-fonts and google-fonts are quite must - if nicer look is what you want.

# I am not vouching for various subpixel rendering stuff in this tutorial - I didn't try it yet. The same with 'Miscellaneous'. But - You try it it and advice me.

# Font substitutions. Following tutorial in Ubuntu forum I swapped Helvetica Neue to Lato (latofonts.com, its free). It worked for me, kinda (means, I am not very happy with this particular swap).
In Debian Sid you can't use ~/.fonts.conf, instead, the same stuff goes to /.config/font-master/local.conf
In Slack it can be in ~/.fonts.conf

# Fonts used on OB 'desktop': Two GUI-options are available, Obconf for menu and window titles, and Lxappearance for what is in those windows'.
After various combinations tried, I have settled with DejaVu , Droid and Arial (except terminal).
This, of course, is individual thing. Feel free to experiment.
It IS possible to get desktops' textwise appearance better.
The same with console - especially vanilla netinstalled Debian looks like shit in this department.

2013-11-17

Slackware upgrade to 14.1

Yes, upgrade from 14.0 to 14.1. And it's not as little as seems - kernel goes from 3.2.45 to 3.10.17 and a lot of system packages get upgraded - a lot like half an hour of running text in console.
As a guide I used this superb one, and followed it quite punctually - with only a slight differences:
- I tried to do as much on desktop (new lilo menuentry, install of new kernel packages, new initrd, blacklisting kernel and third party repos...
As a note - I did 'installpkg' for kernel-things and not upgraded. And that irritated 'slackpkg' afterwards (similarly-named packages)- so I had to keep kernel packages blacklisted.
- I did not use init 1, as it does not have net, but used init 3. If you download whole bunch before and install from this, then you can do everything in single-user and be safer.
- I ended up (before reboot) with Nvidia install. Did it like this:
sh NVIDIA-Linux-x86_64-319.49.run --kernel-name='3.10.17'

The thing booted up nicely - gdm, openbox, nitrogen, compton, tint2 - all worked totally alright. Overall memory usage dropped 20M compared to 14.0. CPU usage remained on 2%+2% (Debian, by the way, stays on 1% when idle).
Then came problems - which took me about 8 hours to resolve:
- As being smart afterwards, first thing to do should be deleting all things in your .cache folder. Else there will be strange apps' settings' problems.
- gksu. It didn't work, I reinstalled, it worked - once. I reinstalled all (libgtop, libgksu, gksu)... no cookie. I went for gksudo, it worked once...
Well, interesting, isn't it?
The culprit is 'shadow' package - see here. I didn't install salixs' fix 'gnsu', but downgraded from 4.1.5 to old 4.1.4.3 (and blacklisted it). And that did it - after some 3 hours fruitlessly thrown away (#^^%&*&^).
- spacefm. Despite compiling all fresh, still has strange behaviour - occasional resizing of panels and kinda laggy performance... It probably was exactly this 'old-cache-problem'.
- Volumeicon is forgetting volume settings, on every boot. | Edit: It seems, whole problem was master volume gone missing during upgrade... (3 days later) - no, it wasn't. Now it seems that removing .lock file (created during upgrade?) in /var/lib/alsa fixed it, finally. Well, we'll see... No, it didn't fix it... And the reason for that nag (and some other vague abnormalities) was my own syntax error in rc.M ... Bloody never change your conf-files by typing (if possible). |
- Clock went berserk again (my specific bios clock problem 'me like to be three hours wrong and it stays like that'). Fixed it so:
hwclock --set --date "11/17/2013 08:54:10", and then hwclock -s
Means, set your date-and-time manually, and tell it also to kernel. And look here.
- qbittorrent missing libboost_system.so.1.49.0. Installed alienbob version for 14.1 from slakfinder and nothing changed, lib still missing. Then I made it from source - and got exactly the same result. But ln -s of 1.49.0 to existing 1.54.0 did the trick.
- gparted - the same type of thing. Missing libparted.so.0. Created symlink to libparted.so.2 and gparted started (and worked) fine.
- xfce4-terminal got its name back (previously 'Terminal'). So I whined about that silly name before... now, of course, I whine again:  When arriving to Openbox first time after upgrade, there is no terminal available (except some other backup terminal, if you had one. If you didn't, you have to go to console and fix at least one exec-name in nano. And bloody shortcut in your rc.xml needs fixing too.
By the way, if you define window-opening-postions in the same rc.xml, then keep in mind - 'class' for xfce4-terminal is 'Xfce4-terminal'.

That's it. Some few annoyances remain, but overall - upgrade can be called success.
And just to mention - there is always reinstall option, but, in this case, it wouldn't be any easier. Problems are of new packages, not of upgrade as such.
| Note, as of 23.11.2013: SBO is still missing whole 14.1 (but, I am sure most of 14.0 stuff is eminently usable anyway). Shittier is that Slacky and Kikinovak also are still missing 14.1 - and that drives slackpkg+ a bit crazy... Sensible thing seems to take those two temporarily out of mirrors (and repos) list.
-- As of the very end of December, the last problematic repo - Kikinovaks' - has returned. He had severe recontruction bout in his servers. |

2013-11-02

Filezilla install, Slackware 14

I am not sure if the following experience is not caused by my not-100%-slack-install, BUT I tend to think that no.
I started with slakfinder.org, and Kikinovaks' 64bit Filezilla package (no dependecies notified). It refused to install.
I decided to go stright for sbo and compile my own (sbo also had latest 3.7.3 version). One dependency - wxPython - was listed.
It dind't  compile.
To cut it short, needed are (all installed with slackpkg+, and from 'slacky' repo): wxPython, wxWidgets, wxGTK, libmspack.
Then it compiled OK, and works also OK.
Hopefully it saves you this hour I spent.

And to blab a bit more:
- Openbox 3.5.2 doesn't want to compile in Slackware 14. Probably pango libraries are oldish. Seems that waiting for Slack 14.1 is a wise move.
Edit | And it did compile in 14.1 ... I still haven't tried to install, though... (3 days later) - Now I have, and it works totally alright. |
- Week ago Spacefm had a new version - 0.9 which has a lot of improvements. If your previous install was with spacefms' installer, then upgrade is easy-peasy - download 0.9 installer and run it. That's it.

2013-10-12

Firefox, Grub2, Bash aliases etc

I have been busy - and it seems to continue like that. So, no much time to play around. Here come bits and pieces of things I had to do or didn't but still did. Let's start with Firefoxes:

## The problem: Firefox consumes up to 100% of CPU, and never falls below 20%. To make it even more exciting - this doesn't happen in every session... but when it does, then nothing helps. I started to have this behaviour couple a weeks ago in two different distros - Debian Wheezy and Slackware 14. Common was that they both had Firefox 17.09esr AND had some similar updates to Xorg.
Problem seems to be solved by installing other Firefox version. I went for 24.0. For further thrill - the one I downloaded from Mozillas' server, absolutely refused to start... but one I got from here, was OK and works without turning CPUs fan to jet engine.
How to manually install Firefox - look here.
Edit | If after install there isn't any plugins anymore - like IcedTea - then the easiest way is: create a folder .mozilla/plugins, cd to there and do
ln -s /usr/lib64/IcedTeaPlugin.so (in Slack, or from usr/lib/ in Debian) |

## I finally had enough of Grub2s' auto-generated menuentries. First, there are too many of them (menu-submenu thing, and some kernels doesn't have to be shown at all) and second, labels that Grub creates are not especially informative - or not at all - my Puppy Slacko had a label 'Unknown Linux'.
So I made files 06_debian, 07_slack, 08_test and 41_win (from /etc/grub.d/40_custom). First has my two debians, second has Salix and Slackware, third is for temporary Linuxes and fourth for you-guess-what. Took entries from each distros /boot/grub/grub.cfg (or from /etc/lilo.conf), cleaned them up (everything after label, hint-crap in if-fi part (do NOT delete search-part there)) and inserted them to their new homes.
Also, fixed finally the console resolution problem (all resos in non-master-grub distros' consoles stay at 640x480 - despite that my master-grubs' conf is fixed AND I fixed it in every bloody other grub).
First, the master-grubs reso-fix (in /etc/default/grub) works ONLY for this same grub, AND - when Grub2 os-probes other distros and creates menuentries - it does NOT include reso part there.
So, it's fixable in two ways:
- either add two lines after label part ends and business-part starts:
load_video
set gfxpayload=keep

- or add kernel parameter: vga=791 (to end of line starting with 'linux...' Mind! This number has to be picked according to resolution your monitor is capable in console.)
Frankly - i didn't experiment with all possible combinations - I used first option for Grub-distros, and the second one for Lilo-distros.
One more thing - if there appears unwanted (penguin) logo at the beginning of boot, then adding kernel parameter logo.nologo fixes it.
See also previous Grub posts: 1 and 2.

## Some desecrating of Slackware:
- Sudo. As there is no group for that, you can't add user to it, and sudo doesn't work. Now, you can add yourself to wheel group
usermod -G wheel username
and then you can enable sudoing through wheel.
Do 'visudo' ... and yeah, it bloody opens in vi. I, for example, know nothing of this adorable 'very powerful' editor. So: I added following to end of my .bashrc
export EDITOR=nano
, saved, opened new terminal, visudo - and now it opens in nano.
Find the following line
# %wheel ALL=(ALL) ALL
, uncomment it, save. And sudo should work now.
In Slack there might be slight problem with system-binaries still not working. It's because user lacks path to them - not because sudo is not working. Open up your .bashrc and add PATH to /sbin:/usr/sbin:usr/local/sbin - that should solve the problem.
- Colors. To make Slacks' boot and shutdown texts fancier-looking, it's easiest to shamelessly copy relevant parts from Salix (thanks, Salix-folks).
First, one has to copy color-definitions file /etc/shell-colors, and then comes boring compare-search-replace routine in files: /etc/rc.d/rc.S, rc.K, rc.M, rc.4, rc.sysvinit, rc.6
Not sure it's worth of it... well, yeah, I think it was for me.
- rc.M and refreshes. There are several things Slackware refreshes at every boot. Like font cache, icons cache, libraries list (ldconfig), mime cache. It does those tasks in background (command &), so there is probably not much difference (in boot time etc) if they are there or not. Still, it's a bit pointless to refresh those things every time.
So I decided that it's good time to start messing with bash scripts and to make some tiny simpleminded launchers I can start from openbox menu. (And then out-comment relevant parts in rc.M)
As I also know nothing of bash, it took unholy amount of googling and trying. First thing, I couldn't get scripts running with su (despite various suggested tricks in web). So I did it through sudo (see above, that's why I made it to work). I wanted my scriptlets to open new terminal, do it's thing, and leave terminal open - so I could see what occurred. And one successful example is here:
#!/bin/sh
# Refresh font cache
Terminal --execute bash -c 'echo "fc-cache -fv";sudo fc-cache -fv;bash'
quit


## I shit around with three different package managements. Quite frequently I mix up if there are --, or -, or there isn't any -. So, kinda lazy solution for this is to use similar aliases in all distros.
Orderly way to do this is to create separate .bash_aliases file and define all your stuff there (simple text file, only aliases there, no #! or something needed):
alias up='sudo apt-get update' - is one definition, and that's for Debian, 'slapt-get -u' goes for Salix and 'slackpkg update' for Slackware.
alias upg='sudo apt-get dist-upgrade' is for Sid, 'slapt-get --upgrade' for Salix and 'slackpkg upgrade-all' for Slackware.
And so on. To keep in mind - aliases have to be unique (in one particular distro), can't have different commands with the same name (meaning, it's bad idea to create alias 'nano' for something - as there is already app exec 'nano').
Also, in this case, .bashrc should have the following somewhere:
if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi


And the future posting will be probably quite infrequent. Depends how 'busy' my busy is...

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.

2013-08-27

Slackel Openbox, a rant

It seems to be not so happy and sunny time for me. Happened to stumble into one more tearful installation.
First I decided that I do not rant... but I couldn't resist. I had expectations...
Reading that Slackware/Salix-based Openbox was released made me definitely excited. So much that I promptly downloaded 64bit iso, wrote it to USB and installed.
Installer was of Salix. Couple of things to repeat over. Read the text! Especially dangerous point is when partitioning defaults coolly for wiping your hdd clean.
Ah, yes, and your install-files are this time in /slackel folder.

Desktop

Let's start with the only good thing - the file manager is Spacefm - the best that can be found. Though, it's not the last version, but the older one ready to take from Sourcery. As a hint - last versions' installer from Spacefm download-page works very well, no sweat - all deps happen to be preinstalled in Salix.
Spacefm is also used as desktop-provider.
There is only one icon on desktop - Slackel online. Which is a bit ...err... strange as mentioned page contains pityfully little info. No documentation, tutorials and such. Well, but one can learn a bit greek here and there.

There is a big stuffy Conky... a lot people love extensive Conkys. I don't. I like Conky as source of info, not as bloody fancy jukebox.

Panel at bottom is fbpanel, not tint2 which would seem to me more a flexible choice. At the same time, there are out-commented tint2 in autostart.sh, and a folder in .config.
Talking of leftover crap - there are more to find: libreoffice, pcmanfm ...
A bit more cleaning up, perhaps?

There is no proper compositor installed. And that's Compton, not oldish and less-configurable xcompmgr. Sure, it's not in repos... is it really a problem, now?

Menu on panel and rightclick one are complitely different ... In looks and in structure. This is not good and logical at all. I would say even it's wickedly evil - meant to drive users nuts.

Mime: All txt files default to Abiword... I'm sure the author is not using Abiword for editing confs. Why it's left like that for users?
Sure, changing mime files is not a rocket science, but still.

Logout in fbmenu goes stright out, reboot and shutdown do the same. No menu between for picking your options. Quite irritating the first time when you want to see how exit-menu is built - and you find two things - that it's not and then yourself looking at gdm...

Show-hide plugin in fbpanel has funny way of 'showing' - it starts from leftmost task. Means, your last active window will be on top only if it was created first.

Apps: I would remove/replace at least 50% of them. That means, system, settings and tools mostly stay - and those are heritage of Salix. And couple of other things. But not Midori, for gods sake. Or why should one use a media player with name like Whaaw! (exclamation mark is not mine)?... There are a lot well-established players which mostly even work. And so on.
Then we have obconf in settings, but obmenu in utilities (that's fbmenu)... in desktop menu they are in defferent menus too, but those menus have different names, for further thrill.

What a mess.
It's my first installed distro from which I can't find anything positive to learn or copy.
When one feels need to remaster, then maybe it should be not done in such a unthinking hurry?
End of rant. I am in hurry too - have to do some formatting.

PS! If one wants to try easy Slack with no worries - go for Salix. Or, if craving for tiny and strange and a bit broken, go for Puppy Slacko.
Slackel seems one pointless respin to me....

2013-08-21

Puppy Slacko

What arouse my interest was - It's archaic looks (means Jwm), cluttered desktop (my desktops doesn't have a single icon), it's custom soft (package manager and pupcontrol), and it being slackware-based. I did 'full' install to my desktop machine. It was a mistake, and here comes why.

I wrote image with Unetbootin to USB and booted succesfully to live session. Boot was fast alright. I also liked orderly-looking colorful boot-text format :)
Puppy detected video, sound and net without any problems. Memory usage was approx 80Mb after installing Conky (means, very nicely tiny). Apps reacted fast.
'Desktop' looks indeed wonderfully horrible, as was expected from screenshots.
There are partitions' icons on desktop by default - 13 in my (desktop) case. Pure horror. When clicked/mounted, icon gets border and red cross at corner - which in Puppys' drive mounter app seems to indicate 'unmounted'. Something is not entirely right here.
There are whole bunch of icons in upper left corner - which make sense only when opening a menus is a difficult task.
Actions tend to be 'one-click springs it'.
Whole layout looks to be oriented to tablet-size touchscreen thingies.

Menus are seriously cluttered. Various kinds of settings seem to be all available in Pupcontrol... why to duplicate them in foot-long lists in menus?
Apps... Roxfiler is one of the quite useless file managers in my opinion (lacking devices and tabs), and urxvt-terminal doesn't impress also. Cutting it short - I would uninstall a lot of default apps.
Wanting to be positive, there is no whining about text editors (Geany and Leafpad).
There is that - I am using desktop machine, and Puppy is not a desktop distro.

Install to HDD failed. Installer couldn't find vmlinuz etc in it's root, nor could it show/find mounted iso. But when I gave it a second try, it claimed that Puppy already exists... do you want to upgrade. Well, why not. And the thing found it's files somewhere and installed like lighting. Mighty odd.
My Grub2 master bootloader marked Puppy as 'unknown linux'. Funny.

Pupcontrol is nice thing. Really everything together. IF it also works all the way - I do not know. I didn't bother to click through everything. But I liked its looks better than many other control centers.

Puppy package manager. A disappointment.
- The thing doesn't remember most of settings, nor the size of window (as some other apps too). And it's in Setup menu... ??
- it seemingly installed the same library from 3 different repos as 3 actual libraries.
- it didn't 'find' things.
- only thematic grouping of packages is... bad.
- when updating databases, 'any key'(no) does not work, only 'enter'(yes) works.
- most of those thousands of files one sees flashing by when updating, disappear somewhere - one does not see them in themes. Are they in cryptically named packages? Or not really available?
- There is no info about packages. You really don't know what the package is (one-liner is not real info), or where it got installed.
- window what appears when you click a package contains a lot useless text. Missing dependency list kinda disappears in it.
... and, never mind.

a) Puppy-vanilla is not for desktop computer.
b) ... and needs some polish.
c) it's fast and agile.
d) ... and surprisingly customizable. 

2013-06-25

Salix 14.0 Xfce install

So I went for childrens' version of Slackware, sue me.
Why Slack? Because it seems to be most stable and conservative (compared to nowadays mad-rush Linux developments). No systemd or pulseaudio or Mir or perverse experiments with GUI. Not yet at least. And they avoid even GTK3, it seems. Which is good - I definitely prefer 'less modern' look to broken porridge after every Gnome update.
As of preparations - a partition for installing Salix was made before install.

Install:
64bit stright-install image (means, not Live) was written with Unetbootin to USB. The process (and probably structure of image) was different of usual - in meaning that it was continuous, without huge main file. Not that I care...
There is only two 'options' in boot-screen: 'default' and 'huge.s' ... Default seemed to be the same as 'huge.s' so, here we go:
Installer loaded quite long and is old-school ncurses-based - pure terminal, no bling, no frills. Installers' structure is different of Debians', Suses', RHELs' and even Archs' installer.
Now, what to keep in mind: In partitioning - have to select correct disk where your premade partition is. Then it's possible to pick it for Root. You can also mark already (if) existing swap for use. No separate home for me anymore, I keep all important stuff of my distros on separate 'common' partition. And I do my backups with FSArchiver - so Home (confs only) gets backed up together with Root.
The most problematic part of installation was a question 'where is your install-data': No, USB-stick is not a 'CD' or something other 'movable' - USB stick is a 'hard disk'. At least you can browse partitions and pick the right one. The table there doesn't show partitions' sizes... so I identified my USB (from about 15 choices) as only one having fat32 filesystem. Then installer wants to know the folder name...&^%$#... to cut it short, it's 'salix'.
Then you can make password for root and also create your common user - and define users' parameters to all details. By the way, there is no problem with using the same password for root and user...
And at the end there is choice of install-packages: I picked Full (desktop and 'one app per task').
There were, of course, the usual things (keyboard etc), and also an offer to install Lilo (bootloader) - which can be skipped entirely (which I did).
It installed successfully.
I rebooted, logged to Wheezy, update-grub, and rebooted to Salix. There was a lot text flying by (quite different-looking of Debian, and it took a little longer too), then Gdm-greeter for logging, then desktop and then you can admire 'a flying rag'... - screensaver kicked in an instant after desktop appeared. Fancy. I have no idea if this bizzarre behaviour goes with every boot - I removed xscreensaver from startup.

Desktop
I think it's first Xfce desktop (I have tried) what comes panel-at-bottom and no dock. What a pleasure! Especially after quick swap of wallpaper...
First I did some fast clean-up and pimping: removed some startups and daemons, deleted some apps, changed themes and icon-set, tweaked panel a bit... the usual. And sure, I installed my favourite file manager - SpaceFM - and threw Thunar out. I downloaded Spacefm installer and whole thing went without any hitch, dependencies and all.
Ah, by the way, I had also one mysterious crash when I left Salix running. When I returned after some 2 hours, it appeared to be in console and frozen. No idea why.

Then came serious part - updating (minor) kernel and installing Nvidia driver. No automation here, no smxi script either. There is almost perfect tutorial for Nvidia, though. In nutshell, it went like that:
1. Get kernel source: slapt-get --update && slapt-get -i kernel-source
Update kernel: ls /var/log/packages/kernel*
There are some 4-5 files, all has to be updated separately, like this:
slapt-get -i kernel-modules (no version numbers needed!). Then (re)create initrd file - see howto in /boot/readme.initrd .
2. Download Nvidia driver.
3. Blacklist Nouveau. And here I found difference with tutorial. There is no such file as tutorial says. I solved it with Gslapt, searched for 'nouveau' and found 2 packs, and installed blacklist-one. It's name was the same as of driver.
3. Reboot. Log to console, init 3, cd wehere-your-driver-is, sh NVIDIAdrivername.run (and answer questions it asks), init 4.
Done. If you said 'yes', it even created conf. And DO NOT let Nouveau to be updated afterwards, or you loose your 'blacklist'!

There are quite a lot of conf available in menus. For installing codecs there is a launcher. Packages can be managed through Gslapt, sources through Sourcery (both are GUI frontends). There is even update-notifier...
Package manager is 'slapt' - works like this: slapt-get -u
for example, is the same as debian 'apt-get update'. Nothing difficult here, do read Salix (or Slackware) wiki etc.

It has been pleasant experience. After first flurry of tweaks I find it hard to spot next 'urgent' tweak... because it's already OK. Salix is super for everyone looking for traditional distro + desktop. It's also very fitting for newcomers to Slackware - it really is Slack-made-easy. Recommended.