Friday, July 5, 2013

Ten reasons to choose Slackware Linux (by Niki Kovacs)

This summer, the Slackware Linux distribution will celebrate its twentieth anniversary. Patrick Volkerding's official release announcement for Slackware 1.0 on July16th 1993 is still online. Read it here.

Here's a list of ten reasons why Slackware is still the perfect choice on servers, desktops and workstations.
  1. Experience. Slackware is the oldest surviving Linux distribution, it's been around even before Debian and Red Hat. There's a famous Nutella ad in France: Twenty years of experience make all the difference. The same thing applies to Slackware. The odd critic may have been pointing out the fact that Patrick Volkerding's favourite hobby is blindfolded jogging in front of buses. In the meantime, he's managed to avoid them all, and Slackware is here to last.
  2. Perennity. The Slackware installer and the collection of basic administration tools remain the same proven tools that have been shipping over the years. Which means that if you're a system administrator, you won't have to relearn your basic skills from scratch every time a distributor decides on a whim to switch init systems like he would change his underwear. Changes to the distribution only happen in small incremental steps and without drama, like the addition of slackpkg to Slackware 12.2. Some folks like to complain that Slackware tools like the installer or the package management tools are bone-headed dinosaurs. Remind them curtly that it still takes a meteor strike to wipe them. 
  3. Stability. Only proven and tested software gets added to a release. One thing you'll never find in Slackware is the unholy collection of half-assed technology previews sported by the more popular distributions, which tend to make your admin's life a misery.
  4. Flexibility. As an admin, I have a pretty good idea of what I want on a LAN server, on a public server or on a desktop. Unfortunately, no canned distribution ships these configurations out of the box. But Slackware is pretty much the only distribution that doesn't make me jump through burning loops to simply configure things like I want to configure them. 
  5. Flexibility (cont'd). If a package is not included in the distribution, I can be pretty sure SlackBuilds.org has a build script for it. Otherwise, I'll just write one myself. Right now I have a collection of about 140 extra packages, and every single one built just fine. No distribution makes building stuff from source so easy.
  6. Simplicity. I often install desktops and workstations on old and/or exotic hardware, and Slackware lets me configure the more problematic stuff where the usual suspects among the installers just choke on it. The KISS principle reveals its full strength here, the more so since you won't find any DO NOT EDIT THIS BY HAND nonsense in Slackware.
  7. Humanity. I know, this is a word the Ubuntu folks claim for themselves, but one of the things I like about Slackware is its human size. Small distro, not too many packages, but carefully tendered. Folks in the Slackware forum at LinuxQuestions.org are a nice and competent crowd, and I like the general tone and no-bullshit attitude. Plus, the average Slackware user doesn't have the GNU/Linux taliban touch to it, which you see all too often here in France. Last but not least, Ubuntu is an old african word meaning I can't configure Slackware :o)
  8. Transparency. This one's obvious, but one less obvious factor is that it makes Slackware a great tool for actually learning Linux. Earlier this year, I've been teaching a class of ten sysadmins, and most of the course was based on Slackware.
  9. Efficiency. My Xfce-based desktop runs great on twelve year old hardware, and that's something I could only achieve with Debian or a handful of lightweight distros like Puppy or Slitaz, but not with the mainstream stuff like Ubuntu or openSUSE.
  10. Release policy. Slackware Linux pushes out a new release roughly once a year, when it's ready. Every release gets security updates for at least five years. Which makes Slackware perfectly fit for your business. 
Source: http://www.kikinovak.net/index.php?post/2013/06/10/Ten-reasons-to-choose-Slackware-Linux

Thursday, May 2, 2013

NetworkManager: A new option for the Slackware Linux network configuration!

Wicd (in "/extra" directory) is a good option for managing network connections. Until Slackware Linux 14.0 release, it was the only official graphical network configuration service option for managing the network connections besides the traditional CLI (Command Line Interface) based manual configuration. Together with the Slackware Linux 14.0 release, a Network Manager (NetworkManager) was integrated to the main tree of the release for easy setup and management of wired and wireless networking retaining full support for the traditional Slackware Linux networking scripts and for the wicd network manager. 



Before configuring network connections, open a terminal emulator and become root by,

$ su 

The NetworkManager daemon will not be started by default at boot, because the other network management options are still retained and users may want to prefer them instead of the NetworkManager. To start the network daemon automatically at boot, make the NetworkManager initialization script executable by using below command.

# chmod +x /etc/rc.d/rc.networkmanager

Start the NetworkManager daemon manually by,

# /etc/rc.d/rc.networkmanager start

or

# NetworkManager

The NetworkManager will appear in system tray by default even without starting the NetworkManager daemon, but you need to start the NetworkManager daemon for configuring the network connections.

Slackware Linux 14.0 comes with KDE widget for the Network Manager. Graphical configuration part of this guide is completely valid for the KDE.


Click on the NetworkManager icon in system tray. 


Make sure that "Enable networking" and "Enable wireless" boxes are checked and click on the "Manage Connections" tab on the right side. 


Click on the "Add" button.


Rename the wired connection, check the "Connect automatically" box (this will provide an automatic network connection on every login) and click on the "OK" button.


Click on the "OK" button.



Click on the "NetworkManager" icon in system tray.



Click on the wired connection you named previously on the right side and wait until the wired connection to be established.


Now, you are successfully connected to the wired network. To connect a wireless network, click on the WLAN interface tab on the left side. Then, SSIDs (names of the wireless networks) in the coverage of your WLAN network adapter will be listed.


Click on the SSID of the wireless network you want to connect.


Check the "Connect automatically" box (this will provide an automatic network connection on every login), enter the security password and click on the "OK" button.


Click on the "NetworkManager" icon in system tray.



Click on the wireless connection you configured previously on the right side and wait until the wireless connection to be established.


Now, you are successfully connected to the wireless network. 


NOTICE: If you are using XFCE, Slackware Linux 14.0 full installation includes NetworkManager applet (nm-applet) that works well under the XFCE. After initializing the NetworkManager daemon and relogging on, applet icon will appear in the system tray of the XFCE. Configuration GUI (Graphical User Interface) of the applet differs slightly from the KDE NetworkManager widget.  


Friday, March 8, 2013

Slackware Linux Graphics v1.3

Slackware Linux Graphics Project aims to provide a set of visual components related to GNU/Linux Slackware in both vector and raster graphics formats for its users. Source SVG graphics and exported PDF and PNG graphics in the project were all generated by using Inkscape under the GNU/Linux Slackware. 

Thanks to contributors for getting v1.3 ready!


http://slackware-linux-graphics.blogspot.com

VERSION:

1.3

DATE:

08/03/2013

FILE INDEX AND CHANGELOG: 

Version 1.3

* Slackware.Linux.Domed.Tux.Logo
* Slackware.Linux.Eggstone.Tux.Logo
* Slackware.Linux.Power.Button.Logo
* Slackware.Linux.Power.Button.Logo.with.It.powers.up.freedom
* Slackware.Linux.Classic.SuperTux.Logo.with.Pelerine
* Slackware.Linux.Crystallized.SuperTux.Logo.with.Pelerine
* Slackware.Linux.Classic.SuperTux.Logo.without.Pelerine
* Slackware.Linux.Crystallized.SuperTux.Logo.without.Pelerine
* Slackware.Linux.Superman.Logo
* Slackware.Linux.GNU.Logo.with.Classic.Tux
* Slackware.Linux.GNU.Logo.with.Crystallized.Tux
* Slackware.Linux.System.Case.Sticker.Logo
* Slackware.Linux.GNU.Linux.Slackware.Three-digit.Black.Logo
* Slackware.Linux.GNU.Linux.Slackware.Three-digit.Grey.Logo
* Slackware.Linux.Traditional.Logo.with.Classic.Tux
* Slackware.Linux.Traditional.Logo.with.Crystallized.Tux
* Slackware.Linux.Traditional.Logo.with.Domed.Tux
* Slackware.Linux.Traditional.Logo.with.Eggstone.Tux

Version 1.2

* Slackware.Linux.Phear.the.Penguin.Logo.with.Classic.Tux
* Slackware.Linux.Phear.the.Penguin.Logo.with.Crystallized.Tux
* Slackware.Linux.Classic.Tux.Logo
* Slackware.Linux.Crystallized.Tux.Logo
* Slackware.Linux.Download.Logo
* Slackware.Linux.ARMedslack.Logo
* Slackware.Linux.ARMedslack.Logo.with.Home.Page
* Slackware.Linux.slackARM.Logo
* Slackware.Linux.slackARM.Logo.with.Home.Page
* Slackware.Linux.slack390.Logo
* Slackware.Linux.slack390.Logo.with.Home.Page
* Slackware.Linux.Powered.Logo.with.Classic.Tux
* Slackware.Linux.Powered.Logo.with.Crystallized.Tux

Version 1.1

* Slackware.Linux.KDE.Logo
* Slackware.Linux.XFCE.Logo
* Slackware.Linux.Documentation.Project.Logo
* Slackware.Linux.Traditional.Logo.v2
* Slackware.Linux.Bag.Badge.Logo.v2
* Slackware.Linux.Current.Branch.Logo
* Slackware.Linux.Current.Branch.Logo.v2
* Slackware.Linux.Current.Branch.Logo.v3
* Slackware.Linux.Current.Branch.Logo.v4

Version 1.0

* Slackware.Linux.Traditional.Logo
* Slackware.Linux.Traditional.Logo.with.Home.Page
* Slackware.Linux.Traditional.Logo.with.Because.It.Works
* Slackware.Linux.Traditional.Logo.with.Because.It.Secures
* Slackware.Linux.Traditional.Logo.with.Tux
* Slackware.Linux.Spherical.Logo
* Slackware.Linux.Blurred.Spherical.Logo
* Slackware.Linux.Favicon.Logo
* Slackware.Linux.Bag.Badge.Logo
* Slackware.Linux.Security.Shield.Logo

Saturday, March 2, 2013

How to compile the 9th long term supported stable linux kernel release 3.4.x under Slackware

https://www.kernel.org

The Linux Kernel Archives home page with a new theme!

Today, I noticed that the Linux Kernel Archives home page has changed. A new theme with freshened up view totally reflects today's design approach.

How to compile the 9th long term supported stable linux kernel release 3.4.x under Slackware

Kernel version 3.4.x is the 9th long term supported stable kernel release maintained by Greg Kroah-Hartman. According to e-mail posted from him to the linux kernel mailing list, kernel version 3.4.x release will be supported at least two years from the date 20th of May 2012 on which kernel version 3.4.x released.

NOTE: Latest stable version of 3.4.x kernel was 3.4.34 at the time when writing this guide. Before starting the kernel upgrade process, please check the Linux kernel home page at "https://www.kernel.org/" and then replace 3.4.34 with the latest 3.4.x version number. In this guide, upgrade from kernel version 3.4.33 to 3.4.34 was explained. For the latest kernel release compilations, replace the version numbers with the correct version numbers for the day you would like to compile latest 3.4.x Linux kernel.

To begin with, open a Linux terminal emulator as user and become superuser.

$ su

Change current directory to "/usr/src/", download kernel source and signature archive files.

# cd /usr/src/

# wget https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.34.tar.xz

# wget https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.34.tar.sign

Extract compressed kernel source archive and verify it.

# unxz -v linux-3.4.34.tar.xz

# gpg --verify linux-3.4.34.tar.sign

Output will be something like below:

gpg: Signature made Fri 09 Dec 2011 12:16:46 PM EST using RSA key ID KEY_ID
gpg: Can't check signature: public key not found

Copy KEY_ID and paste into following command.

# gpg --recv-keys KEY_ID

Output will be something like below:

gpg: requesting key KEY_ID from hkp server subkeys.pgp.net
gpg: key KEY_ID: public key "Abc Xyz
     (Linux kernel stable release signing key) " imported
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   3  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 3u
gpg: depth: 1  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 1f, 0u
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

# gpg --verify linux-3.4.34.tar.sign

Output will be something like below:

gpg: Signature made Fri 09 Dec 2011 12:16:46 PM EST using RSA key ID KEY_ID
gpg: Good signature from "Abc Xyz
     (Linux kernel stable release signing key) <abc@def.com>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: PRIMARY_KEY_FINGERPRINT

Extract uncompressed kernel source archive.

# tar -xvf linux-3.4.34.tar

Remove symbollic link for old kernel source directory and regenerate it for the new kernel source directory.

# rm linux

# ln -s linux-3.4.34/ linux

# cd linux/

Remove any existing kernel configuration file in current kernel source directory.

# make clean

# make mrproper

Download one of the kernel 3.4.11 configuration files compatible with your system in testing directory of Slackware 14.0 file tree.

 - For Slackware 14.0 (32-bit),

# wget http://mirrors.slackware.com/slackware/slackware-14.0/testing/source/config-testing-3.4.11/config-huge-3.4.11

 - For Slackware64 14.0 (64-bit),

# wget http://mirrors.slackware.com/slackware/slackware64-14.0/testing/source/config-testing-3.4.11/config-huge-3.4.11.x64

Rename downloaded kernel configuration file as ".config".

 - For Slackware 14.0 (32-bit),

# mv config-huge-3.4.11 .config

 - For Slackware64 14.0 (64-bit),

# mv config-huge-3.4.11.x64 .config

For additional kernel options, configure the kernel source by "make menuconfig" command and save the new configuration.

# make menuconfig

Compile new kernel.

# make all

After executing "make all" command, you will possibly be prompted to choose some kernel options because latest kernel source is newer than than the ".config" file downloaded from the testing directory of Slackware 14.0 file tree. For question do not make any sense for you, just press ENTER key for the default options which are usually fine.

Remove previously installed kernel modules in "/lib/modules/" directory, before installing the new kernel modules.

# rm -rv /lib/modules/*/

Install new kernel modules.

# make modules_install

Copy bzImage files.

 - For Slackware 14.0 (32-bit),

# cp arch/x86/boot/bzImage /boot/vmlinuz-huge-3.4.34

 - For Slackware 14.0 (64-bit),

# cp arch/x86_64/boot/bzImage /boot/vmlinuz-huge-3.4.34

Actually both “bzImage” files linked as above are identical.

Complete the kernel installation process by executing below series of copy, remove, link and navigation commands.

# cp System.map /boot/System.map-huge-3.4.34

# cp .config /boot/config-huge-3.4.34

# cd /boot/

# rm vmlinuz

# ln -s vmlinuz-huge-3.4.34 vmlinuz

# rm System.map

# ln -s System.map-huge-3.4.34 System.map

# rm config

# ln -s config-huge-3.4.34 config

# cd /etc/rc.d/

# rm rc.modules

# mv rc.modules-3.4.33 rc.modules-3.4.34

# ln -s rc.modules-3.4.34 rc.modules

For editing "lilo.conf" file, open it in a text editor.

# nano /etc/lilo.conf

Add following lines into "/etc/lilo.conf" file replacing old kernel section and save.

image = /boot/vmlinuz
root = /dev/sdax
 label = 3.4.34
 read-only

Finally, run the commands "lilo" to overwrite lilo configuration and "reboot" to restart your Slackware installed box.

# lilo

# reboot

After booting into new kernel, you can check your new kernel version.

$ uname -r

Output will be something like below:

3.4.34

References:

Slackware Documentation Project at "http://docs.slackware.com/".

Tuesday, February 19, 2013

TeamViewer 8.0.x installation in Slackware 14.0


For installing TeamViewer 8.0 in Slackware 14 usngRPM2TGZ Method;

Download the TeamViewer 8.0 Red Hat RPM package from TeamViewer home page.

$ wget http://www.teamviewer.com/download/teamviewer_linux.rpm

Follow below steps.

$ su
rpm2tgz teamviewer_linux.rpm
# installpkg teamviewer_linux.tgz
# ln -s /opt/teamviewer8/tv_bin/TeamViewer /usr/bin/
# ln -s /opt/teamviewer8/tv_bin/teamviewerd /usr/bin/
# teamviewerd
# exit

Execute launcher as user and have a fun with TeamViewer 8.0.

$ teamviewer

To generate symbollic link of TeamViewer 8.0.x launcher on desktop, run below command. 

$ ln -s /opt/teamviewer8/tv_bin/desktop/*.desktop ~/Desktop/

For above method, before launching the Teamviewer 8.0.x on next boots, you always need to start TeamViewer daemon by teamviewerd command manually as root. Currently, I am working on a SlackBuild for building TeamViewer 8.0.x package and start-up script that starts TeamViewer Daemon while booting. 

NOTE: If you have Slackware64 14.0 installed on your box, firstly you need to switch to multilib to make TeamViewer work. Because it requires requires these 32-bit packages: glibc, zlib, freetype, alsa-lib and GConf. After switching to mutilib, all of these dependencies are automatically met . In Slackware 14.0 (32-bit) full installation, there is no need for any of these dependency packages. Just follow the above instructions and run the TeamViewer.