Hurray !! New Slackware version is on the way

Slackware team has released the new development snapshot Release Candidate 2 of Slackware 14.2 on 23rd April 2016. And it seems like it will be the last RC version before the final release of the OS. It includes a number of kernel fixes as well as an update to the latest version of the Thunderbird e-mail client.

According to the team ~ “Finally got some fixes we were waiting for in this new kernel. It’s been almost a month since 14.2-rc1 so we’ll call this Slackware 14.2 Release Candidate 2. Almost there. Get in any last-minute bug reports quickly.

The full list of changes can be found in the changelog.

30th Anniversary : initial message by Stallman

Gnu 30th anniversary

Gnu 30th anniversary

On the occasion of 30th anniversary, original email by Richard M Stallman is reproduced here, which announced the GNU system.

Richard M Stallman

Richard M Stallman

Original message:

From CSvax:pur-ee:inuxc!ixn5c!ihnp4!houxm!mhuxi!eagle!mit-vax!mit-eddie!
RMS@MIT-OZ
From: RMS%MIT-OZ@mit-eddie
Newsgroups: net.unix-wizards,net.usoft
Subject: new Unix implementation
Date: Tue, 27-Sep-83 12:35:59 EST
Organization: MIT AI Lab, Cambridge, MA

Free Unix!

Starting this Thanksgiving I am going to write a complete
Unix-compatible software system called GNU (for Gnu's Not Unix), and
give it away free(1) to everyone who can use it.
Contributions of time, money, programs and equipment are greatly
needed.

To begin with, GNU will be a kernel plus all the utilities needed to
write and run C programs: editor, shell, C compiler, linker,
assembler, and a few other things.  After this we will add a text
formatter, a YACC, an Empire game, a spreadsheet, and hundreds of
other things.  We hope to supply, eventually, everything useful that
normally comes with a Unix system, and anything else useful, including
on-line and hardcopy documentation.

GNU will be able to run Unix programs, but will not be identical
to Unix.  We will make all improvements that are convenient, based
on our experience with other operating systems.  In particular,
we plan to have longer filenames, file version numbers, a crashproof
file system, filename completion perhaps, terminal-independent
display support, and eventually a Lisp-based window system through
which several Lisp programs and ordinary Unix programs can share a screen.
Both C and Lisp will be available as system programming languages.
We will have network software based on MIT's chaosnet protocol,
far superior to UUCP.  We may also have something compatible
with UUCP.

Who Am I?

I am Richard Stallman, inventor of the original much-imitated EMACS
editor, now at the Artificial Intelligence Lab at MIT.  I have worked
extensively on compilers, editors, debuggers, command interpreters, the
Incompatible Timesharing System and the Lisp Machine operating system.
I pioneered terminal-independent display support in ITS.  In addition I
have implemented one crashproof file system and two window systems for
Lisp machines.

Why I Must Write GNU

I consider that the golden rule requires that if I like a program I
must share it with other people who like it.  I cannot in good
conscience sign a nondisclosure agreement or a software license
agreement.

So that I can continue to use computers without violating my principles,
I have decided to put together a sufficient body of free software so that
I will be able to get along without any software that is not free.

How You Can Contribute

I am asking computer manufacturers for donations of machines and money.
I'm asking individuals for donations of programs and work.

One computer manufacturer has already offered to provide a machine.  But
we could use more.  One consequence you can expect if you donate
machines is that GNU will run on them at an early date.  The machine had
better be able to operate in a residential area, and not require
sophisticated cooling or power.

Individual programmers can contribute by writing a compatible duplicate
of some Unix utility and giving it to me.  For most projects, such
part-time distributed work would be very hard to coordinate; the
independently-written parts would not work together.  But for the
particular task of replacing Unix, this problem is absent.  Most
interface specifications are fixed by Unix compatibility.  If each
contribution works with the rest of Unix, it will probably work
with the rest of GNU.

If I get donations of money, I may be able to hire a few people full or
part time.  The salary won't be high, but I'm looking for people for
whom knowing they are helping humanity is as important as money.  I view
this as a way of enabling dedicated people to devote their full energies to
working on GNU by sparing them the need to make a living in another way.

For more information, contact me.
Arpanet mail:
  RMS@MIT-MC.ARPA

Usenet:
  ...!mit-eddie!RMS@OZ
  ...!mit-vax!RMS@OZUS Snail:
  Richard Stallman
  166 Prospect St
  Cambridge, MA 02139

The Gnu Ocean

I got this image from Twitter. Found interesting so thought will share it ūüôā

The Gnu Ocean

The Gnu Ocean

Steps for booting Slackware to GUI, and some details on runlevels

Starting process in a gnu/linux system

runlevel is a software configuration of the system which allows only a selected group of processes to exist.

What are the runlevels in Slackware ?

0 - Halt
1 - Single User Mode
2 - unused (but configured the same as runlevel 3)
3 - multiuser mode without display manager(default Slackware runlevel)
4 - Multi-user mode with X11 with KDM/GDM/XDM (session managers)
5 - unused (but configured the same as runlevel 3)
6 - Reboot

In Slackware Linux runlevel 1 is for maintenance (as on other Linux distributions). runlevels 2, 3 and 5 identically configured for a console (with all services active except the X Window System); and runlevel 4 adds the X Window System.

How to check the current runlevel of the system?

The runlevel command is used to find the current and previous runlevels on Unix-like operating systems.Type the following and press the Enter key to get the details of runlevel:

# /sbin/runlevel
N 3

If there is no recorded previous runlevel the command will show ‘N’ and then the current runlevel.

Or one can use the command who with the argument -r  to get the current runlevel details.

# who -r
run-level 3  2013-06-29 23:57                   last=S

Which is the default runlevel and how to change it ?

The default runlevel in slackware is 3, which means system will boot in to a console. So the user have to enter username and password in console and then give the ‘startx’ command to start the x window system.

To change the runlevel one can follow any of the steps bellow :

1. Manually edit the /etc/inittab file. (To change the default runlevel)
This method need a reboot to make the change in effect. i.e, we know that the default runlevel in slackware is 3 and that’s why the system boot in to a console. But what if one need to boot his system to a started X window system ? for that the runlevel must be 4, right? So open the configuration file /etc/inittab in your favorite editor as root and find the following line.

id:3:initdefault:

and change 3 to 4, which is the runlevel for multiuser mode with X window system started. And then on the system will boot with X windows started. Do not set the default run level to 0 or 6, you can guess what will happen then.

2. init or telinit
Init can be in one of eight runlevels: 0-6 and S  or  s. The processes spawned by  init for each of these runlevels are defined in the /etc/inittab file.  The  runlevel  is changed  by having a privileged user run telinit, which sends appropriate signals to init, telling it which runlevel to change to.

According to the manual page :

# init [ -a ] [ -s ] [ -b ] [ -z xxx ] 
# telinit [ -t SECONDS ]

To execute these commands user need to login as root. To use these commands one can either use the console or a virtual console, using Ctrl+Alt+F (console 1, you use Ctrl+Alt+F1. To reach back to the window system use Ctrl+Alt+F7), if the user started x window system.

How to configure runlevels in Slackware

The init is the parent of all processes with a pid 1. Its primary purpose is to create processes from a script stored in the file /etc/inittab file. After init is invoked as the last step of the kernel boot sequence,  it looks for the file /etc/inittab to see if there is an entry of the type initdefault. The initdefault entry determines the initial  runlevel  of  the  system.   If  there  is  no  such entry (or no /etc/inittab at all), a runlevel must be entered at the system console. So entries in /etc/inittab controls autonomous processes required by the system by telling init what is the default runlevel, and what to do when entering or leaving each runlevel.

In Slackware /etc/rc.d/ contains a few scripts for several of the daemons or subsystems a system may run, and the scripts includes rc.0, rc.S, rc.K, rc.M, rc.6. Where rc.0 actually is a symlink to the rc.6 script because it’s so similar: rc.6 reboots the system except when invoked as rc.0, in which case it halts the system. The rc.? scripts do several things directly, as well as running the other scripts. So on Slackware, runlevels can be administered with an editor.

References :