Slint Handbook (version 15.0)

1. Introduction to Slint

1.1. About Slint

Slint is a Linux distribution, based on Slackware, polyglot, easy to install, versatile, beginner friendly and accessible to the visually impaired.

A Slint system is functional out of the box and can be tailored to fit most computing requirements.

1.1.1. Features

Two installation modes are proposed: Automatic (the installer prepare the drive chosen by the user and install Slint on it) and Manual (The installer format the Linux partition chosen by the user, format it and install Slint on it). The installer includes a documentation.

Slint is accessible to visually impaired users, with speech and braille, from installation to usage in a console as in graphical environments.

A wide assortment of software for servers, desktops, and laptops is installed in all Slint systems, which include two graphical desktop environments: MATE and LXQt, and lightweight window managers. MATE and LXQt provide easy access to all applications and system operations, with auto-mounting of removable devices, plus notifications of available updates of installed software, immediate Internet access, stopping, rebooting, and hibernating the system.

The language chosen will be used for internationalized applications.

The Slint Dashboard centralizes access to hardware and system settings, packages, system tools, documentation and utilities.

Slint ships with many applications out of the box to create, edit, view and convert documents in various formats, communicate by email, text and audio chat, play audio and video, send and receive documents peer to peer, edit audio, video and graphical documents, develop applications. It is fully usable as a server on a console and using one of the several included desktops.

Many applications are accessible to visually impaired users, a wide choice of TTS and associated voices is included, if you still need others they are easily installable, usable both in a textual environment (console) as well as on the desktop.

Several in-house tools ease administration and configuration of your Slint system.

Many more applications are easily built installed as software packages through a simple command or a few clicks. Thousands of software packages are at your fingertips!

Slint users are notified about upgrades of installed packages as soon as available, easily installed upon request. This keeps your system safe.

Default preferred applications settings are provided and can be easily customized.

1.1.2. Content, versions and release model

The Slint installer provides only a complete installation.

Slint follows a "semi-rolling" release model, meaning that during the life cycle of a given version, in addition to updates as security fixes and major bug fixes, some software are selectively updated to bring enhancements, and added to bring new features. This is the case for software contributing to make Slint accessible to the blind, like screen readers.

We recommend that users switch to a new version as soon as possible after its release. We recommend that they do a full backup of all data they want to keep followed by a an installation a new and a restoration of the backup.

1.2. About this book, other sources of information

This book is intended for the Slint newcomer whom it guides through its installation process and usage. The concepts and conventions specific to Slint and common in Linux distributions are presented and a glossary is annexed.

We try to accommodate folks coming from Windows or MacOS as users of another distribution like Ubuntu.

Documentation about installed software is generally available in a Slint system. We will state in this book how to access it.

Other sources of information are available:

  • The information often provided in their website by the authors of software included in Slint.

  • The Slackware documentation project and particularly its HOWTO articles Many are applicable directly to Slint, some adaptations and updates can be necessary.

  • Beyond the Arch distribution, the ArchWiki provides often helpful article on software also shipped in Slint. For instance searching "arch wiki mate" leads to this page about MATE. Caveat: the information provided can need to be adapted as Slint and Arch differ on some regards. For instance Arch uses systemd as init system and a given software can be configured differently by default in Slint and Arch.

  • And of course an Internet search engine can often help find answers to questions and solutions to issues.

1.3. Support

You can get help through these channels:

  • The Slint mailing list is the primary support channel. To register, email slint-request@freelists.org with as subject: 'subscribe' then answer the confirmation email that you will receive. Then, to know more email slint-request@freelists.org with as subject 'commands' or 'help'. After registration, email slint@freelists.org.

  • The archives of the mailing list are available here.

  • On IRC: chat on the #slint channel, server irc.libera.chat, no registration needed.

  • Mumble: server slint.fr (on appointment taken through another channel).

  • The Slint forum kindly hosted by our friends at Salix (another Slackware derivative). Registration needed.

To find out more, see the links under Information in the Slint Dashboard or just type: slint-doc in a terminal after installation.

1.4. Translation and other contributions to the Slint project

Slint need translators! If you want to participate to the translation effort, read the instructions in Translate Slint.

The translation files are hosted on Crowdin.

If you want to contribute to Slint for other tasks, just post in the mailing list or drop a line to: didieratslintdotfr. Of course translators are welcome on the mailing list too!

1.5. Acknowledgments

The Slint project exists mainly through to the hard work of the Slint translators and other contributors, thanks to all of you!

Thanks to George Vlahavas for his advice and tools, to the contributors to the SlackBuilds.org project, who help building so many additional software.

Slint is based on Slackware, brought by Patrick J. Volkerding and contributors. Thanks! I encourage all Slint users to contribute to Slackware funding, and also to donate to the Salix project.

The Slint repositories are kindly hosted for free by Darren 'Tadgy' Austin. I encourage all Slint users to contribute to funding the host https://slackware.uk/

Links for financial contributions:
Become a Slackware patron or Support Slackware
Follow the links on top of this page to support Slackware UK
Donations to Salix

2. Install Slint

This part of the HandBook walks through the process of downloading Slint, verifying the ISO image with a check-sum, writing the ISO to an installation medium, partitioning your hard disk, and briefly describes the installation process.

2.1. Requirements

The current Slint version can be installed on computers meeting these requirements:

  • Architecture: x86_64 (64-bit CPU), also known as AMD64

  • In Auto partitioning mode a disk drive of size at least 50G

  • In Manual partitioning mode a partition of type Linux of size at least 50G, an EFI system partition and/or a BIOS boot partition on the same disk drive. The EFI partition is mandatory if the machine boots in EFI mode, the BIOS boot partition if the machine boots in Legacy mode, having both is better to allow swictching between EFI and Legacy modes.

  • Slint can be installed on these kinds of drives: hard drives, SSD, NVME, eMMC, USB sticks, SD cards (preferably in USB enclosures).

  • RAM: at least 2G

  • a DVD drive or an USB slot available, with ability of the firmware to boot a DVD or USB stick. A blank DVD or a 5G or more USB stick can be used as installation media

Note
Secure boot should be disabled to install Slint.

2.2. Features of the installer

  • The installer is a "live system", running in memory: it will not modify an installed system, unless and until you tell it to.

  • For blind users the installer is fully usable with Braille, and speech using the Speakup screen reader.

  • It includes all needed utilities to prepare the needed partitions prior to an installation in Manual partitioning mode.

  • The Auto mode of installation instead just needs user to answering questions and provide a contextual help about them.

  • If installed alone on a removable device connected through USB, Slint is portable, i.e. usable on any computer able to boot off an USB drive beyond the computer used to install it. For instance if installing on an USB stick you can just plug the stick in a computer to run it.

  • The installer can encrypt the drive where Slint is installed alone. This prevents the steal of data it contains in case of loss or theft of the machine, or of a removable drive.

  • Slint can be installed in its own drive, and in manual partitioning mode alongside another system.

2.3. Preparation

2.3.1. Download and verify a Slint ISO image

The latest version of the Slint distribution is 15.0

The latest installation ISO image is always available in this directory

This ISO image can also be downloaded using a Torrent Client from this page:

The link to the torrent, after the label "Slint Torrents", is:

A magnet is also provided.

Tip

As long as you are running Slint version 15.0 there is no need to re-install when a new ISO is provided, as it only brings new features of the installer and new or and upgraded packages that you can also get keeping your system up to date.

The file name of the ISO indicated below is just an example, that you will adapt to the current name when downloading.

If you are running Windows, an Internet search with as argument "check sha256sum windows" will tell you how to proceed.

If you are running Linux you can download the ISO image and its sha256 checksum typing:

wget https://slackware.uk/slint/x86_64/slint-15.0/iso/slint64-15.0-5.iso
wget https://slackware.uk/slint/x86_64/slint-15.0/iso/slint64-15.0-5.iso.sha256

To check the integrity of the downloaded files type this command:

sha256sum -c slint64-15.0-5.iso.sha256

The result should be : OK
Else, redo the downloads.

2.3.2. Write the ISO image on an Installation Medium

You can use either a DVD or an USB stick as installation media.

Tip

You can just store the ISO image in the first partition of a Ventoy USB stick.

In this case at the beginning of installation the installer will request that you mount this partition, then mount the ISO itself.

Make a Bootable USB Stick

On a Linux system, plug in the USB stick, and check it’s name with the following command:

lsblk -o model,name,size,fstype,mountpoint
Warning

Carefully review the output of the command to make sure that you will not type the name of a hard disk partition instead of the name of your USB stick. All previous content of the USB stick or a mistaken hard disk partition will be LOST and IRRECOVERABLE.

Let’s assume that the name of the USB stick be /dev/sdb. It could be named otherwise, so don’t copy blindly the following command. The command syntax to write the Slint ISO to a USB stick that resides at /dev/sdb is as follows:

dd if=slint64-15.0-5.iso of=/dev/sdb bs=1M status=progress && sync
Note

The above command assumes if= points to the path of the Slint ISO and of= points to the name of the USB stick. These values may differ on your system.

On Windows use an application like Rufus. It is free and open source.

Make a Bootable DVD Disc

On a Linux system insert the DVD and type the following command:

xorriso -as cdrecord -v dev=/dev/sr0 -eject slint64-15.0-5.iso

Be sure to enter the full path to the Slint ISO on your filesystem.

On Microsoft Windows 2000/XP/Vista/7 you can write to a DVD using the application InfraRecorder. It is free and open source.

On Microsoft Windows 7/8/10 you can use the utility that is shipped with Microsoft Windows.

  • Right-click the ISO file and select Burn disk image (if on Windows 11, select Show more options first (Shift+f10)

  • To make sure the ISO was burned without any errors, select Verify disc after burning.

Note

Instructions not checked by the writer.

2.3.3. Optionally, prepare partitions for Slint

In this document 'format' a partition means: create a file system in it to manage the files it will contain.

If after having type 'start' you type 'm' for manual partitioning you will first select the root system partition, which will be mounted as "/", then the type of its file system among: btrfs, ext4, xfs.

The installer lists for selection only partitions of size at least 50G and of Linux (can also be named Linux filesystem), not encrypted. This partition may be formatted or not, but in any case its content will be wiped out and a new file system generated by the installer.

In addition the Manual partitioning mode require on the same drive as the root system partition:

  • A partition of type BIOS boot partition, of size at least 3M and not formatted if the machine boots in Legacy mode and the drive has a partition table of type GPT.

  • A partition of type EFI system, with at least 32M free space in it, formatted with a 'fat' (or 'vfat') file system as required by the UEFI specification if the machine boots in EFI mode

It is better to set up both partitions to allow switching between Legacy and EFI modes if the drive has a partition table of type GPT.

Using for Slint existing partitions or creating them is up to the user. Already installed systems using the BIOS boot and the EFI partitions will not be affected, only the root partition will be (re)formatted, and an existing /home partition only if requested.

The installer includes several partitioning applications: cfdisk, fdisk, sfdisk, cgdisk, gdisk, sgdisk, parted. The applications with "g" in their name can handle only gpt, parted can handle DOS partition tables as well as GPT. fdisk, cfdisk and sfdisk can handle DOS partition tables. In addition, wipefs (to erase previous partition table and file system signatures) and partprobe (to inform the kernel of a partition table changes) are available. The blkid and lsblk applications display information about block devices and partitions.

Of course you may also create the partitions form another system before starting the installer.

2.4. Slint Installation

2.4.1. Start of the installation

If need be, setup the firmware of the machine to boot off the DVD or USB stick that you have prepared.

Insert the installation media (DVD or USB stick) and reboot your machine. To help blind users a tune is heard when the boot menu is displayed.

Start the installer just pressing Enter.

The installer will first probe you sounds cards.

This can help setting a working one as default, and also is used for speech during installation used by some blind users.

If the installer finds more than one sound card it will say in English for each:
press Enter to choose this sound board <sound card id>
Press enter as soon as hear that, to confirm that the proposed sound card is working. This setting will be saved in the new system in /etc/asound.conf.

At the next step, when asked you will confirm (typing s) or deny (just pressing Enter) that you want speech during installation. Braille is always available during installation.

You will then choose, confirm or change the language used during installation. Then all screens will be in the chosen language if the translation into this language is complete.

If you need to append additional kernel parameters to the boot command line, before pressing Enter do what follows :

Note

Be aware that the US keyboard map will be in use when typing.
Ctrl+x mean "Press and hold the Ctrl or Control key like if it was a Shift key then press the X key"

Press the e key
Press the down arrow three times
Press the End key
Press the space bar
Type the kernel parameters (examples below)
Press Ctrl+X to boot (do not press Enter!)
Press Enter to boot.

For instance to configure the speakup driver for your hardware synthesizer you could type a kernel parameter like:

speakup.synth=apollo

You can also include in the boot command line the settings for your Braille device, in this form:

brltty=<driver code>,<device>,<text table>

For instance to install with a Papenmeier device connected through USB with a French text table type:

brltty=pm,usb:,fr_FR
Note
A braille device connected through USB should always be recognized, maybe just the text table won’t be the good one if you didn’t enter the settings at first.

In any case, as there is no timeout, booting will only begin when you press [Enter].

Speech and Braille are available at the beginning of installation.

2.4.2. Overview of the installation process

The installer first probes the existing drives and partitions to assess the possibilities and options of installation and let you choose between an automatic or manual preparation of the partitions used by Slint.

If you choose 'manual' you are presented the Linux partitions where Slint could be installed (size at least 50G), select one of them and choose the type of the file system that the installer will create in it: btrfs, ext4 or xfs as mentioned in Optionally prepare partitions for Slint

If you choose 'auto' you are presented the drives where Slint could be installed (size at least 50G), and the file system will be of type btrfs.

In case of btrfs sub-volumes will created for "/" and "/home" with files compressed, and /swap to host a swap file. 'Copy on write' will ease making snapshots and possibly revert a faulty system update. Tools to manage the snapshots are included in Slint.

In both modes the user chooses which existing Linux and Windows partitions will be automatically mounted after booting Slint, and their mount points names, easing access to exiting systems and data from Slint.

Then the user is proposed to encrypt the root system partition, to prevent data steal in case of loss or theft of the machine or the drive where Slint is installed. If accepted the installer records the passphrase allowing to unlock this partition. The user will when typing it at boot time when requested by GRUB to display the boot menu.

After all that the installer summarizes your choices and let you confirm them or not. Up to this point no modification will have been done to the installed systems and data so you can safely deny, then type start again or just reboot without any harm.

Then auto partitioning is done case occurring, the Slint root partition is encrypted if requested, the root partition is formatted and the first software packages are installed.

If you opted for an encrypted disk you type the passphrase that will be used to unlock the drive at each boot up.

You choose a password for the user "root." This is the system administrator, who has all privileges.

You also set the login name and password of a regular user.

You indicate if you will need accessible Braille output, and whether you want to log in text or graphical mode. If you used the language English (USA) during installation you choose the language to use in the installed system, else the installer sets the same as during installation.

The installer attempts to establish an Internet connection, and if successful proposes a time zone corresponding to your geographical location that you confirm, else select one in a list.

You are asked if you will need Braille, then if you prefer to start in a console or in a graphical unless you used speech during installation or need Braille: then you will land in a console after reboot, for safety.

The installer then creates a swap file. This can take a long time, please be patient.

The packages are installed on the drive. If an Internet connection has been established it downloads and install the most recent version of each package, including those provided since the release of the ISO image.

Installation of all packages takes about 10 to 40 minutes depending on the hardware.

You will be asked to select a desktop (even if you start in a console at first) among fvm, lxqt, mate and wmaker. Other choices will be available after installation typing 'xwmconfig' if you start in a console

Then, the system is configured and the GRUB boot manager installed. Slint can boot in both Legacy and EFI modes. The boot menu will include a "rescue" boot entry to detect and allow any installed OS to be booted.

You can display a preview of the boot menu before rebooting.

Then, remove the installation media and reboot to start your new Slint system.

2.4.3. Usage of the installer

If you are acquainted with the command line, you may skip this topic.

The main installation menu is displayed below:

Welcome to the Slint installer! (version 15)

You may now type (without the quotes):

'doc' to know the features and usage of the installer.
'start' to start the installation.

The installer can prepare the drive where Slint will be installed,
creating the needed partitions. If you prefer you can do it yourself
using command line utilities available in the installer, then type 'start'
when done. You can also leave the installer and use a tool like gparted
to do that then start the installer again.

We recommend that you type 'doc' first in this case, or if you want to
encrypt the root Slint partition.
When you finish reading this menu will be displayed again.

As soon as this menu is displayed, you have the hand on the installation process.

You read the screen and type commands in a virtual terminal. The installer includes 4 virtual terminals sharing the same physical keyboard and screen, that can be used in parallel.

The installer starts in the virtual terminal 1 named tty1 but you can switch to another one. For instance you can switch to tty2 by pressing Alt-F2 then Enter to activate it and later go back to tty1 by pressing Alt-F1, without erasing information displayed in both terminals. Alt-F1 means: press and hold the Alt key then press the F1 key.

This can be useful to continue reading the documentation during installation: for instance you can switch to tty2 to begin installation, switch to tty1 to continue reading the documentation, then switch to tty1 again to proceed to the next installation step.

This can also be used to consult the glossary while reading other documents.

The installer has several modes of interaction with you, the user:

  • You type commands at the prompt and read their output.

  • The installer asks a question, you type the answer and confirm it by pressing Enter.

  • The installer displays a menu of choices or options: you select one of them using the up and down arrow keys, then confirm your choice by pressing Enter, or cancel by pressing Escape.

  • The installer displays information in a pager. Then use arrow keys to read the next or previous line, press space to display the next page, Q to stop reading the document.

2.4.4. Slint with an encrypted root partition.

In Auto mode the installer proposes to encrypt the root system partition. If you agree, at each boot the GRUB boot loader will ask you the passphrase that you will have typed during installation to unlock the drive, before displaying the boot menu. Be aware that unlocking the drive will take a few seconds (about ten seconds).

Having an encrypted root system prevents the steal of data it contains in case of loss or theft of the machine, or of a removable drive. But this won’t protect you if the computer stays running and unattended, only if the machine has been switched off completely!

During installation the Slint system partition will be encrypted, and also the additional partition that you may request.

A Slint system (or root) partition will the be named: /dev/mapper/cryproot once opened, if it has been encrypted.

This is shown by this command:

lsblk -lpo name,fstype,mountpoint | grep /$

Which gives an output like:

/dev/mapper/cryptroot ext4    /

This command instead:

lsblk -lpo name,fstype,mountpoint | grep /dev/sda3

gives:

/dev/sda3             cryptoLUKS

/dev/sda3 is now a "raw" partition that includes the so called "LUKS header" that you will never need nor ever should access directly. It hosts all that is needed to encrypt or decrypt the partition /dev/mapper/cryptroot, which actually hosts your data (in this example the Slint system).

Warning

If you forget the passphrase all data in the drive will be irrecoverably lost! So write down or record this passphrase and put the record on a safe place as soon as done.

Drives die. If that happens and it is encrypted your data will be lost. So, regularly back up your important data is not optional.

Also, make a backup copy of the luks header which you can restore in case the luks partition is damaged for any reason. The command could be in our example:

luksHeaderBackup /dev/sda3 --header-backup-file <file>

where <file> is the name of the backup file, that you will store in a safe place.

Then would you need to restore the backup, type:

luksHeaderRestore /dev/sda3 --header-backup-file <file>

Don’t resize a partition of an encrypted drive as after that it would be definitively locked and all the data it contains will be lost! If you really need more space, you will need to backup all the files that you want to keep, then install anew and restore the backed up files.

Choose a strong passphrase, so that it would take too much time for a robber to discover for it to be worthwhile.

Never ever fiddle with the so-called "LUKS header" located on the raw partition (the third one, like e.g. /dev/sda3 for the raw partition on top of the Slint system partition). Practically: don’t create a file system in this partition, don’t make it part of a RAID array and generally don’t write to it: all data would be irrecoverably lost!

To avoid weak passphrases the installer requires that the passphrase include:

  1. At least 8 characters.

  2. Only non accented lower case and capital letters, digits from 0 to 9, space and following punctuation characters:

     ' ! " # $ % & ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~

    This guarantees that even a new keyboard will have all characters needed to type the passphrase.

  3. At least one digit, one lower case letter, one capital letter and one punctuation character.

GRUB assumes that "us" keyboard is in use when you type the passphrase. For this reason, if during installation you use an other keyboard map, before asking the passphrase the installer will set the keyboard map to "us", and after having recorded it restore the previously used one. In this case the installer will also spell each typed character of the passphrase, as it may differ from the one written on the key.

The application cryptsetup is used to encrypt the drive. To know more type after installation:

man cryptsetup

2.4.5. Key bindings for the Speakup screen reader

This chapter is intended for users needing a screen reader but not acquainted with Speakup.

Keep numlock off to use Speakup.

The CapsLock key is used like a shift key. For instance "CapsLock 4" means:
hold down the CapsLock key like a shift key and press 4.

First key bindings to remember:
PrintScreen         Toggle speakup on/off.
CapsLock F1         Speakup Help (press Space to exit the help).
Key bindings to change settings:
CapsLock 1/2        Decrease/Increase the sound volume.
CapsLock 5/6        Decrease/Increase the speech rate.
 Key bindings to review the screen:
 CapsLock j/k/l      Say Previous/Current/Next word.
 CapsLock k (twice)  Spell current word.
 CapsLock u/i/o      Say Previous/Current/Next line.
 CapsLock y          Say from top of screen to reading cursor.
 CapsLock p          Say from reading cursor line to bottom of screen.
// First_steps

2.4.6. First steps after installation

Here are the first tasks to perform after installation

In this document, all text after a # character are comments of the suggested commands, not to be typed.

Initial Software update

After installation, the system should be updated to get the most recently provided version of each software, as well as new software provided since the release of the ISO. This is especially necessary if no network connection was available during installation, as then only the packages included in the distribution media were installed, and they could be outdated.

Most commands typed below request administrative right associated to a specific account named 'root', for which you have recorded a a password during installation.

To issue a command as 'root', first type

su -

then issue the password for root and press Enter before type the command.

When you are done issuing commands as 'root', press Ctrl+d or type 'exit' to get back your "regular user" status.

Alternatively the user registered during installation and other members of the 'wheel' group can type:

sudo <command>

then also the password for root.

To update, type as root in a console or a graphical terminal:

slapt-get --add-keys # retrieve the keys to authenticate the packages
slapt-get -u # update the list of packages in the mirrors
slapt-get --install-set slint # get the new packages
slapt-get --upgrade # Get the new versions of installed packages
dotnew # lists the changes in configuration files

When running dotnew, accept to replace all old configuration files by new ones. This is safe as you didn’t make any customization yet.

Alternatively, you can use these graphical front-ends: gslapt instead of slapt-get, and dotnew-gtk instead of dotnew.

To learn more about slapt-get, type:

man slapt-get

or as root:

slapt-get --help

and read /usr/doc/slapt-get*/README.slaptgetrc.Slint

3. Slint usage

This chapter presents the ways you can interact with your Slint system to have it do what you want.

3.1. What is a Slint system?

Slint is a set of software that roughly fall into these categories:

  • The operating system, made of the Linux kernel and utilities. It acts as an interface between the user, the applications and the hardware.

  • The applications that carry out the tasks that users want to accomplish.

Slint can be used in two modes distinguished by the appearance of the screen and the way to interact with the system:

  • In text mode you type commands interpreted by a shell. These commands can start an utility or an application. The text mode is also called console mode. In this mode the screen only displays the commands and their output in a (usually black) background.

  • In graphical mode graphical elements like windows, panels or icons are displayed on the screen, generally associated to applications or utilities. The user interacts with these elements using a mouse or a keyboard.

Commands can be also be typed in graphical mode inside a window associated with a terminal in which runs a shell.

3.2. Utilities provided

Beyond the utilities found in most Linux distributions, Slint includes tools written for it, inherited from Slackware and borrowed to Salix.

Here are the utilities that you can use to (re)configure your Slint system after installation. Usage of simpler ones is self-explanatory, most have an associated --help option, some are presented in further details in chapter Manage your system.

Unless otherwise noted these utilities should be used as root. To become root, i.e. get the 'admin' status and privileges type "su -" then root’s password. To get back the regular user status pres Ctrl+d or type exit.

Alternatively you can run commands needing root’s privileges typing "sudo <command>"

Most utilities have a command line and a graphical version. The command line version is listed first below. Unless otherwise stated all commands should be typed as root.

General settings

  • To manage users: usersetup or gtkusersetup

  • To change the language and region: localesetup or gtklocalesetup

  • To change the keyboard setup and the input method: keyboardsetup or gtkkeyboardsetup

  • To configure the date, the time or the timezone: clocksetup and gtkclocksetup.

  • To choose which services start at boot: servicesetup and gtkservicesetup.

  • To (re)configure the network: netsetup.

  • To choose to start in text or graphical mode and in the later case the graphical login manager: login-chooser

  • To choose a desktop among FVWM, i3, LXQt, MATE and WindowMaker: session-chooser (as regular user)

  • To choose one of these desktops or one of the standalone window managers: xwmconfig (as regular user)

  • To display or not the applications specific to a desktop in other desktops: show-desktop or hide-desktop (as regular user)

  • To enable or not speech in graphical mode: orca-on or orca-off (as regular user)

  • To choose and enable a console screen reader or disable all of them: speak-with

  • To display or not boot entries specific to MATE and/or LXQt in other graphical environments: display-desktop or hide-desktop (as regular user)

  • To enable or disable emacspeak or speechd-el: switch-on or switch-off (as regular user)

  • To view the layout of the GRUB boot menu as it will be displayed at next boot: list_boot_entries

  • To write a rescue boot stick, allowing to boot if failing otherwise: rescuebootstick

  • To save/restore the speakup settings: speakup-save or speakup-restore

  • To list the voices for espeak-ng, including the mbrola ones: list-espeak-ng-voices (as regular user)

  • To list the sound cards as : list-cards (as regular user)

  • To list the speech synthesizers and associated languages available through speech-dispatcher: spd-list (as regular user)

3.3. How Slint starts

Upon installation, the software shipped in the installation ISO or downloaded from remote repositories is installed in a drive.

When you boot Slint, the firmware first checks the hardware then looks for a program called an OS loader (commonly named a boot loader) which it starts.

There can be several OS loaders in the machine. In this case the firmware allows the user to choose which one to start in a menu.

In Slint the software that makes and install a boot loader is GRUB.Actually the boot loader built by GRUB is also a boot manager, as it allows to choose which OS to start if several are installed.

The OS loader built by GRUB can be installed in a boot sector (in case of Legacy booting) or in an EFI System Partition or ESP (in case of EFI booting).

The aim of the Slint loader is to start the Slint system. To do that it first loads in RAM the kernel, then the initrd, which in turn initializes the Slint system.

In the last step of this initialization the user is invited to "log in", in other words to connect oneself to the system and take the hand on it. To do that the user first type one’s user (or login) name then password, of which validity is checked. Slint as other Linux distributions being multi-users this allows this user to access one’s files but not those of other users.

At time of installation you chose to start Slint in either text or graphical mode.

  • If you chose C for console after initialization of the system you type your user (or login) name then your the password, each input being confirmed pressing the Enter key, then you can type commands.

  • If you chose G (graphical) you type the same information in a display manager or login manager, which then starts the graphical environment.

After installation, you can change the mode typing as root login-chooser, in console mode as well as in graphical mode (in a terminal). This command allows you to choose text (synonym of console mode), or, for graphical mode, among several display managers. Your choice will be effective at next boot of the computer.

We will now present the graphical environments, then how to use a shell.

3.4. The Graphical Environments

A full featured graphical environment includes several components, among which a window manager which draws windows on the screen associated with applications, move, re-size and close these windows.

Slint includes several graphical environments: BlackBox, Fluxbox, FVWM, i3, LXQt, MATE, TWM, and WindowMaker. It is a matter of preference which one you choose.

LXQt MATE and XFCE are are full featured desktops, FVWM and WindowMaker offer unique features and can be selected with the graphical lightdm login as well and also started from a console typing "startx". The other ones are mainly window managers that can only be started from a console. All allow you to access your documents and applications, generally opened in a window.

You can choose among FVWM, i3, LXQt, MATE and WindowMaker typing as regular user session-chooser. In Graphical mode you also can choose one when logging in.

To choose one of the other graphical environments you need to use the command "xwmconfig".

Note

if you want to use i3 and need speech we recommend that you login in text mode and run i38 before startx.

We will now briefly describe the components of the Mate desktop, which is the default and is also the most accessible with speech and braille.

Using the mouse you can discover the features of each component doing or simulating a right, middle or left click. Move or delete most of the components, modify them and add new ones can be done the same way.

These components can be reached moving the mouse and also through keyboard shortcuts. We indicate below inside parenthesis the keyboard shortcuts allowing to reach, in other words put the focus on each element. We will also summarize the key bindings for the Mate desktop (using the default Marco windows manager) and those for the Compiz windows manager.

Tip

You can discover most of the features of applications and other components of Slint with a right, middle, or left click of the mouse. For instance by clicking on the panel, the title bar, the left and right buttons of any window, an icon in the panel, or on an empty space of the screen.

3.4.1. The windows

A window is a rectangular area associated with an application. Windows can be moved, re-sized, maximized, restored reduced, closed (terminating the application it handles) using the mouse or keyboard shortcuts.

3.4.2. The work spaces

To allow having a lot of windows opened in an orderly fashion, the graphical environment provide several work spaces and allow to switch between them. Each work space will display the same desktop and panels, but windows can be placed in specific work space or in all of them. This setting is available with a right click on the top edge of the window. Switching to another workspace can be done clicking on its position on the bottom panel of the screen, in the work space changer, as indicated below.

3.4.3. The desktop

The desktop encompasses the whole screen, on which other components can be be put, in case of Mate and as shipped in Slint a top and a bottom panels, and four icons which from top to bottom allow to open in windows:

  • the root directory in the file manager

  • your home directory in the file manager

  • the Slint Control Center

  • the trash can, where are placed files that you intend to delete but didn’t yet.

Windows of application you start as also put on the desktop.

Mate includes two panels, which presents themselves as slim rectangular horizontal areas, one at the top and one at the bottom of the screen.

Pressing Ctrl+Alt+Tab allow to cycle between the desktop, the top and the bottom panels

Pressing Alt+Tab allows to cycle between the windows on the desktop.

3.4.4. The top panel

It presents, from left to right:

  • Three menus:

    • An Applications menu which can be opened pressing Alt+F1. From there you can open the other menus using the right arrow key. You can use the down and up arrow keys to navigate in each menu.

    • A Places menu.

    • A System menu which gives access to a preferences sub-menu, the Mate Control Center and buttons to get help about the desktop, lock the screen, close the session and shut down the computer.

  • Applications launchers for mate-terminal, the file manager Caja, the email client Thunderbird, the web browser Firefox, the text editor Geany.

  • A notification area which can gather applets like a Bluetooth manager, a sound mixer, a network manager, and an "update available" notifier.

  • A clock and calendar.

  • A screen locker.

  • A close session dialog.

  • A shutdown dialog.

Tip
  • To customize the panel to your liking: right click on an empty space on the panel.

  • If you wish to move an item on the panel: Middle-click the element, drag your mouse, and it will follow the mouse until the middle button be released.

  • For a contextual help press F1

3.4.5. The bottom panel

It presents, from left to right:

  • A windows list that can be configured with a right click on the line of three vertical dots at its beginning and choosing preferences. This also allows to start the System monitor in a window.

  • A show desktop button. A left click on it will minimize or hide all windows, clicking once again will restore the windows in their previous state.

  • A work space switcher, or pager. It allows to switch from a work space to another one and also to move windows from a work space to another one by drag and drop.

3.4.6. The Slint Control Center

We will end this introduction to Slint’s usage by presenting the Slint Control Center. You can display it from the application menu on the top panel or clicking on its icon in the desktop or typing qcontrolcenter in a "Run…​" dialog raised with Alt+F2

The goal of the control panel is to gather applications that are useful for system administration, documentation, and settings in a consistent fashion in all window managers. By clicking on a category in the left menu, you can display the corresponding applications in the right pane. We will present them in table format. This will give us the opportunity to present the administration tools that have a graphical user interface as well.

Most administrative tools should be used with administrative privileges. You will be asked for the root account password in order to launch a tool.

Category

Tool

Purpose and comments

Applications

Dotnew

This tool allows you to manage the new (named something.new hence the name of the tool) vs old configuration files after having upgraded some packages. It’s a good habit to run if after an upgrade. It will tell you if there is something to take care of and then present you a choice of actions.

Applications

Gslapt Package Manager

Gslapt is a graphical front-end to slapt-get. It is a handy tool to perform software management in Slint. It allows you to search for, install, remove, upgrade, and configure software packages.

Applications

Sourcery SlackBuild Manager

Sourcery is a graphical front-end to slapt-src. It allows you to search for SlackBuilds scripts that it can then use to automate the build process and installation of software packages. It can also remove and reinstall packages on your system.

Applications

Application Finder

Find and launch the applications installed on your system. The search field is very handy to find applications in comparison to manually searching the application menu.

Information

SlackDocs Website

The documents in this wiki are primarily intended for a Slackware user, but many of them are useful for a Slint user. Caution: Some of the listed tools, like slackpkg, should not be used in Slint.

Information

Slackware Documentation

This documentation can be also useful for Slint users. Slint is based on Slackware.

Information

MATE system monitor

This tool displays information about the system, like the process, resources usage (RAM, CPU, network traffic) and file systems usage.

Information

Slint Documentation

This gives local access to documents also available on Slint’s website.

Information

Slint Forum

People whose native language is not English may also post in the localized Salix forums.

Information

Slint Website

The Slint website provides documentation, links, and a way to find the ISOs and packages.

Information

System Information

This tool collects information about your computer, such as its connected devices (internal and external), and displays it all in one place. It can also do system bench marking.

System

Display boot menu

Display the layout of the boot menu as it will be presented at next boot

System

System clock

This tool allows you to set system clock.

System

Keyboard

This tool allows you to setup the keyboard layout.

System

System Language

This tool allows you to set the system locale (language and geographic peculiarities), so that the applications you use will display information in this locale (if available).

System

System Clock

This tools allows you to set the time zone, choose if the clock should be synchronized with Internet servers (this is recommended but of course needs an Internet connection), and if not, set the date and time.

System

System Services

This tool allows you to choose which services will be enabled at startup. For instance, Bluetooth, the CUPS print server, or a web server. Only use it to change the defaults settings if you know what you are doing.

System

Users and Groups

This tool allows you to add, remove, and set up user accounts and groups. It is mostly useful on multi-user systems.

System

GUEFI Boot Manager

This tool is a graphical front end to the efibootmanager command. It allows editing of the EFI firmware’s boot menu with actions like adding, removing items or changing menu items order. <System

3.4.7. Terminals

You can type commands in graphical mode as in console mode, if you open a window with a terminal in it. In Mate you can just press Ctrl+Alt+t, or click on the mate-terminal icon on the top panel, or open a "Run…​ " dialog pressing Alt+F2 then typing mate-terminal in the small window that opens.

Most of the information below about the command line and the shell in Console mode also apply to typing commands in a terminal. You can close mate-terminal pressing Alt+F4 as with any other window.

3.4.8. Key bindings

We present here the default key bindings for the Compiz window manager and the Mate desktop, and how to customize them.

Note

When a key binding includes one or more + sign, press then hold from left to right the keys before the last one like a Shift key, then press the last key.

Key bindings for the Mate desktop

When using Mate in Slint, some key bindings are the same using either the Marco or Compiz window managers. They are listed below:

Alt+Tab               Cycle between windows
Shift+Alt+Tab         Cycle backward between windows
Control+Alt+Tab       Cycle between panels and the desktop
Shift+Control+Alt+Tab Cycle backwards between panels and the desktop

Once in a graphical environment, you can toggle between it and a console. Let’s say you want to use tty2 (tty1 being busy): Press Ctrl+Alt+F2, then login.
Press Alt+F7 to go back to the graphical environment.

The same general key bindings are used in all graphical environments, with a few exceptions, Mod1 being generally the left Alt key:

Mod1+F1 raises the panel's application menu.
Mod1+F2 raises a 'run..." dialog, but in Fluxbox (starts lxterminal instead).

Also in Fluxbox:

Mod1+F3 restarts Fluxbox.
Mod1+F4 closes the focused window.

In Mate, partially sighted users can use the Compiz window manager instead or Marco which is the default.

As a regular user, type:

gsettings set org.mate.session.required-components windowmanager compiz

To go back to Marco:

gsettings set org.mate.session.required-components windowmanager marco

This setting will take effect at next start of a Mate session.

Or to make the change just for the current session type:

compiz --replace &

and to go back to Marco:

marco --replace &

The replacement will be effective immediately.

This setting is also available graphically from mate-tweak, in the Windows category.

You can access specific Compiz settings just typing:

ccsm &
Key bindings for the Compiz window manager

In the default settings indicated below the key or mouse buttons are named like this:

Super: Windows key on most keyboards
Button1: Left Mouse Button (if used with the right hand)
Button2: Centre Mouse Button, or click with the scroll wheel)
Button3: Right Mouse Button (if used with the right hand)
Button4: Scroll Wheel Up
Button5: Scroll Wheel Down Button6: (I don’t know, I thought that was on mouses for gamers)

The default settings listed below by category can be changed from the CCSM. We indicate the short name of the plugin between square brackets.

  1. Category General

    [core] General options, tab "key bindings":
    close_window_key = Alt+F4
    raise_window_button = Control+Button6
    lower_window_button = Alt+Button6
    minimize_window_key = Alt+F9
    maximize_window_key = Alt+F10
    unmaximize_window_key = Alt+F5
    window_menu_key = Alt+space
    window_menu_button = Alt+Button3
    show_desktop_key = Control+Alt+d
    toggle_window_shaded_key = Control+Alt+s

    [matecompat] Mate Compatibility
    main_menu_key = Alt+F1
    run_key = Alt+F2

  2. Category Accessibility

    [addhelper] Dim inactive (less light on non focused windows)
    toggle_key = Super+p

    [colorfilter] (Filter color for accessibility purposes)
    toggle_window_key = Super+Alt+f
    toggle_screen_key = Super+Alt+d
    switch_filter_key = Super+Alt+s

    [ezoom] Enhanced Zoom Desktop
    zoom_in_button = Super+Button4
    zoom_out_button = Super+Button5
    zoom_box_button = Super+Button2 (zoom out to go back to normal)

    [neg] Negative (toggle inverse colors of the window or screen)
    window_toggle_key = Super+n
    screen_toggle_key = Super+m

    [obs] Opacity, Brightness and Saturation adjustments
    opacity_increase_button = Alt+Button4
    opacity_decrease_button = Alt+Button5

    [showmouse] (Increase visibility of the mouse pointer)
    initiate = Super+k

  3. Category Window Management

    [move] Move window
    initiate_button = Alt+Button1 (hold Button1 while moving the mouse)
    initiate_key = Alt+F7 (Esc to stop moving)

    [resize] Resize window
    initiate_button = Alt+Button 2 (hold Button2 while moving the mouse)
    initiate_key = Alt+F8 (Esc to stop moving)

    [switcher] Application switcher (switch between windows or panels and the desktop)
    next_window_key = Alt+Tab (cycle between windows)
    prev_window_key = Shift+Alt+Tab
    next_panel_key = Control+Alt+Tab (cycle between panels and desktop)
    prev_panel_key = Shift+Control+Alt+Tab

How to add a custom keybinding for Mate.

Let’s take an example: we want that Alt+F3 starts firefox. type in a terminal or in Run command (brought up pressing Alt+F2):

mate-keybinding-properties

In the new window you can use the down and up arrow keys press to navigate in the list of existing key bindings.

To set a new key binding, press Tab twice to put the cursor on Add, then press Enter. In the small dialog box brought up type the name of the custom key binding, like firefox, press Tab, type the name to the associated command, in this case firefox, then press Tab twice to put the cursor on Apply and press Enter.

To activate the new key binding, navigate until you find it on the bottom of the list, pres Enter the press Alt+F3.

Next time you pres Alt+F3 that should start firefox

3.5. The shell

Note
This chapter is a short introduction. More in depth information is provided in the document Shell and bash scripts, mostly borrowed from SUSE.

When the computer starts in console mode, after having logged in typing your user name and password, the shell displays a "prompt" like the one below:
didier@darkstar:~$
In this example:

  • didier is the user name

  • darkstar the machine name

  • the tilde ~ represents the home directory of the user, in this example /home/didier

  • the dollar sign $ indicates that the user is a "regular one" not a "super user" (see below).

The cursor is then positioned after the prompt.

The user can now type a command on the line (hence the name "command line") and confirm it pressing Enter. The shell then analyzes the command and execute it if valid, else output a message like for instance "command not found". You can edit the command before pressing Enter using the left and right arrows and the keys Backspace, Home, End and Del.

During its execution the commands can display an output on the screen or not. In all cases after execution the prompt will be displayed again in a new line, meaning that the shell is waiting for the next command to be typed.

For this to work, the user needs to know which commands are available and their syntax. Some commands are executed by the shell itself, others start external programs. Will will give below several examples of commands, more are listed in Shell and bash scripts

Several shells are available for Linux to choose from; in Slint the shell used by default is named bash.

To allow running several programs at the same time Linux provides several "virtual consoles" sharing then same keyboard and screen, numbered from one. Initially the system starts in the console (or virtual terminal) number one also called tty1 (the name tty is an abbreviation of "teletype"). From there the user can switch to another console or tty; for instance switch to the tty number two pressing Alt+F2, where another shell will ask again the user’s user name and password. To switch back to tty1, just press Alt+F1. By default in Slint six tty are available but this can be changed editing the file /etc/inittab.

When the shell is used in a graphical environment (in a graphical terminal), its behaves the same way but the prompt is slightly different, as illustrated below:
didier[~]$

You can switch back and forth between the console and a graphical environment:

  • From the graphical environment pressing for instance Ctrl+Alt+F3 to go to tty3. The first time you go to a tty you will have to type your login and password.

  • From a console or tty pressing Alt+F7 if the graphical environment is already running, else typing startx to start it.

3.5.1. Typing commands as root

root is the conventional name of the "super user" which have all rights to do administrative tasks, including those that could harm or even destroy the system.

You can (but this is not recommended for beginners) log in directly as root. To do this type root as user, then root’s password. To inform you (and warn you about the associated risks and responsibilities), the prompt will look like this:
root@darkstar:s~#
the character # (number sign, also commonly named hash) indicates that the commands will be typed as root (not as regular user), with the associated rights, but also risks and responsibilities.

If you are already logged as regular user, you can "become root" typing:
su -
then pressing Enter. In this command, su (which stands for "Super User") is the name of the command, and the character - (hyphen-minus, also named minus) tells that you are opening a "login shell": you will first be asked root’s password, then be directed to its home directory /home/root as if you had logged in as root at startup. This will avoid that you inadvertently write files in your home directory as regular user (/home/didier in the example) which cause issues later.

The regular user registered during installation and other users members of the 'wheel' group can also type commands reserved to root preceding the name of the command by 'sudo' like this for instance:
sudo update-grub

3.6. How-to solve blocking issues

By "blocking issue" we mean "an issue that prevents to use Slint" like:

  • The system fails to boot.

  • The system boots, but the start-up sequence is interrupted before completion. This can happen for instance if the root system partition can’t be mounted because of an error in /etc/fstab, a corrupted root file system or a missing kernel module to mount the root partition, or the system boots successfully but you don’t remember the password for root.

If the system completely fails to boot, try each of the solutions below in sequence, until one works.

  1. If this occurs after a kernel upgrade, try the second boot entry instead of the first one.

  2. Try to boot off the rescue boot stick that you have requested at end of installation.

  3. Jump into Slint to repair it, as explained below.

You can always get help emailing slint@freelists.org providing all information that could help investigate the issue. If not already done, first subscribe to the list emailing slint-request@freelists.org with the subject 'subscribe', then answer the email you will receive. Only if you have an issue using email, request help in the IRC channel #slint, server irc.libera.chat and stay in the channel until someones answer.

We will now explain how to jump into Slint to repair it.

3.6.1. Start the installer and identify Slint’s root partition

If the start-up up sequence is interrupted, jump into Slint from its installer to try to solve the issue. Insert or plug-in the installation media (USB stick or DVD where you have written the installation ISO) then follow the instructions below.

  1. Start the installer.

  2. As soon as logged in as root, to list the drives and partitions, type:

    lsblk -lpo name,size,fstype
  3. Find in the output the name of the Slint root partition, checking its size and file system type, labeled FSTYPE.

  4. Mount this partition

    mount /dev/sda3 /mnt
    Note

    If Slint’s root file system is btrfs (as indicated by the output of "lsblk") you need to mount it using the options mentioned in its /etc/fstab.

    In this case you need to use the same options as in Slint on btrfs, so type instead:

    mount /dev/sda3 /mnt -o subvol=/@,compress=zstd:3
  5. Check that the partition be the right one. For instance if it is /dev/sda3, type:

    cat /etc/mnt/etc/slint-version

    Assuming that you installed Slint64-15.0 the output should be: Slint 15.0

    If the output is "file not found" the partition is not the one you looked for. In this case only, type:

    umount /mnt

    then try another one, going back to the list of drives and partitions.

3.6.2. Issue the needed commands to jump into Slint

  1. mount the file systems /proc /sys and /dev typing:

    mount -B /dev /mnt/dev
    mount -B /proc /mnt/proc
    mount -B /dev /mnt/sys
  2. Issue the next commands to "jump into" your Slint and mount all devices mentioned in its /etc/fstab:

    chroot /mnt
    mount -a

3.6.3. Repair Slint from Slint

From Slint you can modify the system to solve the issue. Here are some examples:

  • Run "update-grub".

  • Run "grub-emu" or "list_boot_entries"

  • Re-install GRUB using the command "grub-install drivename", drivename being the drive where to install Slint.

  • Type "passwd" to change the password for root.

  • Remove, install or upgrade packages.

    1. When done, remove the installation media then type:

      exit
      reboot

4. Accessibility

If you chose to keep speech when asked at the beginning installation, it will be enabled from start up in a console as in graphical environments.

4.1. Use Slint with braille

Slint includes the brltty software to handle braille displays.

Your settings, made before booting on the command line or later, are recorded in the installed system in /etc/brltty.conf.

A comprehensive manual for brltty is available in English, French and Portuguese in several formats including plain text (txt) at this URL: https://mielke.cc/brltty/doc/Manual-BRLTTY/

If braille was not enabled during installation or has been disabled, to enable it do this:

  1. Make /etc/rc.d/rc.brltty executable typing as root:

    chmod 755 /etc/rc.d/rc.brltty
  2. Make yourself member of the braille group, typing as root:

    usermod -G braille -a username

    In the command above, replace username with your login name.

To disable braille type as root:

chmod 644 /etc/rc.d/rc.brltty

4.2. Speech in graphical environments

As a reminder speech in graphical environments using the Orca screen reader is enabled typing:

orca-on

To know how to use Orca, including its specific key bindings, type:

man orca

In short, in a graphical environment:

Insert+Space: display the Orca Preferences dialog.
Insert+S: activate or deactivate the vocal synthesis.
Insert+H: activate the learning mode. In this mode:
   Press a key to hear its function
   F1: to hear the documentation of the screen reader
   F2: list the keyboard shortcuts for Orca
   F3: list the keyboard for the current application
   Esc: end of the learning mode

4.3. Voices and TTS in Slint

Following TTS (Text to Speech synthesizers) are shipped in Slint64-15.0, each with a set of voices, namely:
espeak-ng
flite
pico
mbrola
RHVoice

Most of the time these TTS and the associated voices and languages are managed by speech-dispatcher through its so-called "modules" (roughly, a module is associated to a TTS).

The custom utility spd-list can answer several questions about the available synthesizers, voices and languages. Typing spd-list displays this:

This script lists languages and synthesizers available for applications
relying on Speech Dispatcher, like Orca or speech-up. Each command below answers the question following it.
Don't type the quotes surrounding the command.
"/usr/bin/spd-list" usage?
"/usr/bin/spd-list -s" available synthesizers?
"/usr/bin/spd-list -l" available languages codes?
"/usr/bin/spd-list -ls <synthesizer>" languages available for this synthesizer?
"/usr/bin/spd-list -sl <language code>" synthesizers providing voices in this language?
The language code has most often two characters, like 'en' 'es' or 'fr'

All voices listed are available in Orca and speechd-up, and also fenrir if configured to use speech-dispatcher.

You can get additional voices for flite and mbrola, associated with the modules flite-generic and espeak-ng-mbrola-generic.

You can always know which are installed or not typing as root one of these commands:

slapt-get --search mbrola-voice
slapt-get --search flite-voice

then install one of the not-yet installed one, like e.g.

slapt-get -i mbrola-voice-it2

In addition to the free (as in free beer) voices shipped in Slint, you can buy voices for:
voxin, https://oralux.org/voice.php
voxygen, sending an email to contact@hypra.fr

More voices and synthesizers could be made available later, this will be announced on the Slint mailing list and this ChangeLog

The keyboard shortcuts for graphical environments are listed in Key bindings.

4.4. Use the lightdm login manager with speech

In lightdm, pressing F4 toggle the sound on or off. Initially the cursor is in the password field. Press Tab leads to the "login push button", then to the user’s list or "combo box". In this list pressing space shows the currently selected user. Use the arrow keys to choose another one then type the corresponding password. Instead, choosing "Other…​" adds a field where you can type the login name of a non listed user. Still in lightdm, F10 brings up a menu allowing to reboot or shutdown, and Alt+F4 brings up directly an UI with shutdown or cancel buttons.

4.5. Choose a console screen reader

Slint provides these console screen readers:
espeakup
speehchd-up
fenrir

Additionally, several hardware speech synthesizers can be used in console mode, using speakup.

To choose a screen reader run as root this command:

speak-with

Here is its output with no argument:

root[~]# speak-with
Usage: /usr/sbin/speak-with <screen reader> or <hard synthesizer> or none
Choose a console screen reader to talk with among:
  espeakup (Console screen reader connecting espeak-ng and speakup)
  fenrir (Modular, flexible and fast console screen reader)
  speechd-up (Console screen reader connecting Speech Dispatcher and speakup)
or use one of the supported hard synthesizers:
  acntsa apollo audptr bns dectlk decext ltlk soft spkout txprt
or type "/usr/sbin/speak-with none" to mute all screen readers.
root[~]#

The hardware speech synthesizers listed are those available in the running kernel or shipped as modules.

Example of commands and associated output:

root[~]# speak-with speechd-up
Starting speechd-up
Should speechd-up be also started at next boot? [Y/n]
OK
root[~]# Done.

As soon as you type the command, the previously used screen reader will be stopped and speechd-up will begin talking.

If you answer Y (the default) to the question:
Should speechd-up be also started at next boot?
spechd-up will continue to be used at next boot.
If instead you answer n the screen reader used before typing speak-with speechd-up will be used after next boot.

Other examples:

root[~]# speak-with apollo
Stopping speechd-up...
Should apollo be also used at next boot? [Y/n]
OK
root[~]# Done.

root[~]# speak-with none
Do you also want a mute console at next boot? [Y/n]
OK
root[~]#

4.6. Configure a console screen reader

Slint handle speech hardware synthesizers using speakup and provides the espeakup and speechd-up screen readers.

You can save the settings you make, for instance to increase or decrease the rate of seech or the sound volume. Just type as root: speakup-save. This saves all current settings, including those specific to the hardware synthesizer in use, case occurring.

All these settings will be restored at next boot: the startup scripts rc.espeakup and rc.speechd-up run the command speakup-restore for you.

If you don’t to want to restore the saved settings, type as root:
chmod -x /usr/sbin/speakup-restore

If you want to have them restored again type as root:
chmod +x /usr/sbin/speakup-restore

Here are some key bindings for settings speakup as well as speechd-up:

spk_f9   punctuation_level_decrease
spk_f10  punctuation_level_increase
spk_f11  reading_punctuation_decrease
spk_f12  reading_punctuation_increase
spk_1    volume_decrease (doesn't work with speechd-up)
spk_2    volume_increase (doesn't work with speechd-up)
spk_3    pitch_decrease (doesn't work with speechd-up)
spk_4    pitch_increase (doesn't work with speechd-up)
spk_5    rate_decrease
spk_6    rate_increase

In the table above spk is the speakup key CapLock, or Ins/0 on a numeric keypad. For instance to increase the rate you could press and hold the CapsLock key then press the 6 key.

Some settings available only on specific hardware synthesizers do not have associated key bindings. Then to set a new value you echo it in /sys/accessibility/speakup/<synth>/<parameter>

For instance to change the voice in use by an apollo 2 you could write:
echo 2 > /sys/accessibility/speakup/apollo/voice

speakup-save will also save this setting.

Caveat: I never used a hardware speech synthesizer, so the explanation below is only an assumption based in the speakup_apollo driver, consistent with this manual, found in:
https://archive.org/stream/DolphinApollo2Manual/Dolphin_Apollo_2_Manual_djvu.txt

4.6.1. Speakup desktop keys

Almost all keys listed below are located on the numeric keypad. The Insert or 0 key on the keypad acts like a shift key. For instance, Ins 2 means "hold down the Insert key like a shift key and press 2". Keep numlock off to use Speakup.

Scope: these key bindings can be used with hard synthesizers and with espeakup, and also with speechd-up.

First keys to remember:

PrintScreen    Toggle speakup on/off
Ins F1         Speakup Help (press Space to exit the help)

Keys used for screen review:

1/2/3          Say Previous/Current/Next character
Shift PageUp   Say first character
Shift PageDown Say last character
4/5/6          Say Previous/Current/Next word
5 twice        Spell current word
Ins 5          Spell Current Word phonetically
7/8/9          Say Previous/Current/Next line
Ins 4          Say from left edge of line to reading cursor
Ins 6          Say from reading cursor to right edge of line
Ins 8          Say from top of screen to reading cursor
Ins plus       Say from reading cursor line to bottom of screen
plus           Say entire screen.
Ins r          Say all document
dot            Say position
Ins dot        Say attributes
Ins minus      Say character hex and decimal value.
minus          Park reading cursor (toggle)
Ins 9          Move reading cursor to top of screen (insert pgup)
Ins 3          Move reading cursor to bottom of screen (insert pgdn)
Ins 7          Move reading cursor to left edge of screen (insert home)
Ins 1          Move reading cursor to right edge of screen (insert end)
Control 1      Move reading cursor to last character on current line.
asterisk       Toggle cursoring
Ins asterisk   n<x|y go to line (y) or column (x). Where 'n' is any
               allowed value for the row or column for your current screen.
Ins f2         Set window
Ins f3         Clear window
Ins f4         Enable window

Other keys:

Ins f5         Edit some
Ins f6         Edit most
Ins f7         Edit delim
Ins f8         Edit repeat
Ins f9         Edit exnum

Enter          Shut up (until another key is hit) and sync reading cursor.
Ins Enter      Shut up (until toggled back on)

slash          Mark and Cut screen region.
Ins slash      Paste screen region into any console.

4.6.2. Speakup laptop keys

These key bindings (for US keyboard layout) don’t need a numeric keypad. If you have one, use the speakup desktop keys easier to use, especially if you use another keyboard layout than US.

The CapsLock key acts like a Shift key.
For instance, CapsLock 2 means "hold down the CapsLock key like a shift key and press 2".
Keep numlock off to use Speakup.

Scope: these key bindings can be used with hard synthesizers and with espeakup, and also with speechd-up.

First keys to remember:

PrintScreen          Toggle speakup on/off
CapsLock F1          Speakup Help (press Space to exit)

Key used for screen review:

CapsLock m/comma/dot Say Previous/Current/Next character
CapsLock PageUp      Say First character
CpasLock PageDown    Say Last character
CapsLock j/k/l       Say Previous/Current/Next word
CpasLock k twice     Spell current word
CapsLock u/i/o       Say Previous/Current/Next line
CapsLock h           Say from left edge of line to reading cursor.
CapsLock semicolon   Say from reading cursor to right edge of line
CapsLock y           Say from top of screen to reading cursor
CapsLock p           Say from reading cursor line to bottom of screen
CapsLock apostrophe  Say entire screen.
Capslock r           Read all document
CapsLock n           Say position
CapsLock slash       Say attributes
CapsLock minus       park reading cursor (toggle)
CapsLock f2          Set window
CapsLock f3          Clear window
CapsLock f4          Enable window

Other keys:

CapsLock f5          Edit some
CapsLock f6          Edit most
CapsLock f7          Edit delimiter
CapsLock f8          Repeat edit
shift CapsLock f9    Edit exnum

4.7. Make emacs speak

You can use either emacspeak or speechd-el. To enable or disable one of them type as regular either one of these commands:

switch-on emacspeak
switch-on speechd-el
switch-off emacspeak
switch-off speechd-el

Then just type:
emacs

Enabling one of these software disables the other one.

5. Manage your system

5.1. Software management in Slint

5.1.1. The basics

In Slint software is provided in the form of packages. A package is a bundle of files provided in a compressed archive file, put together to provide all that is needed to run the software. Packages are included in the installation ISO and stored in remote servers from which they can be downloaded and installed. Installing a package means extract the files from the archive file and copy them to some directory of the system.

Installation and removal of software are recorded in a database made of text files in these directories:

/var/lib/pkgtools/packages
/var/log/removed_packages
/var/lib/pkgtools/scripts
/var/log/removed_scripts

The files in /var/lib/pkgtools/packages record information about the packages, mainly their content: the list of files they include and where they are installed.

The main commands to manage the packages are listed below. All of them have associated man pages.

These commands require administrative rights, associated to a specific account named 'root', for which you have specified a password during Slint installation.

To issue a command as 'root', first type su - then enter the password for root and type the command.+ or use sudo.

Commands below can be run from a graphical terminal or in a console, but gslapt that only works in a graphical environment.

installpkg # to install a package stored locally.
removepkg # to remove an installed package.
upgradepkg # to replace an installed package with another one (generally with the same name but at another version).
slapt-get # to install, remove, upgrade packages stored on repositories listed in /etc/slapt-get/slap-getrc

The packages shipped in the installation ISO come from the repositories listed in /etc/slapt-get/slapt-getrc

Do yourself a favor: read the comments in /etc/slapt-get/slapt-getrc and /usr/doc/slapt-get-0.10.2t/README.slapgetrc.Slint in the installed system.

After having installed Slint, you’ll be notified of updates of installed packages coming from repositories listed in /etc/slapt-get/slapt-getrc

You can install additional packages using the command slapt-get or the graphical application gslapt, if stored in a repository listed in /etc/slapt-get/slapt-getrc

slapt-get and gslapt provide a search feature that helps you finding packages.

Warning
you can use slapt-get, gslapt and removepkg to remove installed packages but do not remove packages shipped in the Slint ISO, even if you do not use them at all. Removing an included package will result in no increase in performance and could prevent other applications to run. Also, if you have added a package not included in Slint you may remove it but be careful that the removed package be not a dependency of other ones that you also installed and intend to continue using.

5.1.2. Keep your system up to date

Keep your system safe installing the software updates provided by Slint as soon as they’re available.

All updates are listed in the ChangeLog: http://slackware.uk/slint/x86_64/slint-15.0/ChangeLog.txt

After Slint installation or any change in the file /etc/slapt-get/slapt-getr run this command once:

slapt-get --add-keys

To synchronize the local list of available package with that of the repository, this command is automatically run every two hours:

slapt-get -u

You can also run it manually.

This of course requires that the machine be connected to the internet.

To download and install the upgraded or rebuilt packages run as root the following command:

slapt-get --upgrade

Alternatively you could also use gslapt, a graphical front-end for slapt-get.

To get new packages listed in the ChangeLog as "Added", type:

slapt-get -i <package name>

or to make sure you have installed all packages shipped in Slint, including those added to the repository after you installed Slint, type:

slapt-get --install-set slint

On the desktops, a small icon is displayed in the notification area of a panel (the top panel in MATE) to notify of available software updates. Just make a left click on it and follow the instructions mentioned there.

Be aware that some packages are blacklisted in /etc/slapt-get/slapt-getrc, i.e. can not be automatically upgraded or installed.

5.1.3. Kernel upgrades

New kernels are provided whenever necessary, either to bring security fixes or enhancements.

Usually no manual intervention from the user is necessary when this happens, but it can be useful to know how the kernel upgrade is done and what to do if something unexpected occurs.

Several packages include files associated with each kernel, namely: kernel-generic, kernel-modules, kernel-source, kernel headers. kernel-source and kernel-headers include files used to build software, only kernel-generic and kernel-modules are needed to run a Slint system.

The package kernel-modules ships files called modules, which are pieces of code that are "plugged in" the kernel to provide a specific feature or handle a specific hardware.

As soon as both a kernel package and the associated kernel-modules package are installed, the script /sbin/wrapupgradepkg builds an initrd associated with this kernel (with modules taken from the package kernel-modules) and installs it alongside the kernel in the /boot directory.

Then previous kernels (not in use at time of upgrade) are removed.

Then the script updates the GRUB configuration file /boot/grub/grub.cfg, read by the OS loader to build the boot menu.

This boot menu will then include at least two boot entries each indicating, to indicating a kernel and its associated initrd to use. From the top:

  • A boot entry to start Slint using the new kernel that has just been installed.

  • A boot entry to start Slint using the kernel in use at time of upgrade.

This provide kind of a "safety net" in case Slint wouldn’t boot with the new kernel: in this case just arrow down once when the boot menu is displayed to start Slint with the previous kernel

You can preview the new boot menu before rebooting, typing as root:

grub-emu

Then an emulated or "fake" boot menu is displayed, with the same layout as the real one which will displayed at next boot.

You can navigate in it with the down and up arrow keys to highlight (put the focus on) a boot entry of which you can display the details pressing 'e'. You can go back to the menu pressing Escape.

To exit from grub-emu press c then type exit and press Enter.

Alternatively you can type as root:

list_boot_entries

5.1.4. Get additional applications

The easiest and recommended way to get additional applications not shipped in Slint is to use slapt-get or its graphical front-end gslapt. This gives you access to all packages in repositories enabled in /etc/slapt-get/slapt-getrc by default in addition to the Slint repository:

  • The Slackware repository, with dependency information: SOURCE=https://slackware.uk/salix/x86_64/slackware-15.0/:OFFICIAL

  • The Salix extra repository, fed for Salix distribution by its maintainer George Vlahavas aka gapan but usable in Slint as well: SOURCE=https://slackware.uk/salix/x86_64/extra-15.0/:OFFICIAL

If the application you want is not installed and also not available in one of the repositories enabled in /etc/slapt-get/slapt-getrc you could make a package for it, using build material provided by volunteers @ https://slackbuilds.org. To know how-to proceed, read https://slackbuilds.org/howto/ and https://slackbuilds.org/faq/

The packages built this way should be compatible with Slint.

The application slapt-src and its graphical front-end sourcery allows you to build and install packages using the build material provided at https://slackbuilds.org, to be used as root or using sudo.

We will describe slapt-src in more details.

Note

Pre-built packages for most applications that can be built with slap-src or sourcery are available in the Salix extra repository. Preferably install these pre-built packages using slapt-get or gslapt, unless you need specific build options or a different version than the one provided.

Usage of slapt-srcrc

The default configuration script for slapt-src is /etc/slapt-get/slap-srcrc and has this content:

BUILDDIR=/var/lib/slapt-src
PKGEXT=txz
SOURCE=https://slackbuilds.org/slackbuilds/15.0/

So:

Here is the output of the command slapt-src --help:

Usage: slapt-src [option(s)] [action] [slackbuild(s)]
  -u, --update           update local cache of remote slackbuilds
  -U, --upgrade-all      upgrade all installed slackbuilds
  -l, --list             list available slackbuilds
  -e, --clean            clean build directory
  -s, --search           search available slackbuilds
  -w, --show             show specified slackbuilds
  -i, --install          fetch, build, and install the specified slackbuild(s)
  -b, --build            only fetch and build the specified slackbuild(s)
  -f, --fetch            only fetch the specified slackbuild(s)
  -v, --version
  -h, --help
 Options:
  -y, --yes              do not prompt
  -t, --simulate         show what will be done
  -c, --config=FILE      use the specified configuration file
  -n, --no-dep           do not look for dependencies
  -p, --postprocess=CMD  run specified command on generated package
  -B, --build-only       applicable only to --upgrade-all
  -F, --fetch-only       applicable only to --upgrade-all

Let’s comment some of these options:

  • Use -u or --update every time to update the list of packages that can be built and installed. This commands writes the file /tmp/slapt-src/slackbuilds_data, replacing the previous one case occurring.

  • Use -e to save space on disk, removing most files in /tmp/slapt-src/

  • do not use -U except to list the possible upgrades or downgrades, without confirming: confirming would lead to replace all Slint packages by one at another version if available in the remote repository, possibly breaking software not compatible with this other version.

  • -i can also upgrade a package already installed from https://slackbuilds.org, if a the maintainer of the SlackBuild script has upgraded it, changing the VERSION variable.

  • Use -f to only download the files in https://slackbuilds.org for the target software. This can be useful if you want to check build material, or customize the build. For instance let’s assume you want to fetch the build material for the software mxml. The command below gives some information about the software and which files are stored in https://slackbuilds.org for it:

    slapt-src --show mxml
    SlackBuild Name: mxml
    SlackBuild Version: 3.1
    SlackBuild Category: libraries/mxml/
    SlackBuild Description: mxml (Lightweight xml parsing library)
    SlackBuild Files:
     README
     mxml.SlackBuild
     mxml.info
     slack-desc

    Now fetch theses files and also the source archive from upstream repository with the next command:

    slapt-get -f mxml

    Knowing from the output of the previous command that the files are stored in the subdirectory libraries/mxml, you can check which files have been downloaded with this command:

    ls -1 /var/lib/slapt-src/libraries/mxml
    mxml-3.1.tar.gz
    mxml.SlackBuild
    mxml.info
    slack-desc
  • Use -b if you want to build a package but not install it yet. In the example above it will be stored in /tmp/slapt-src/libraries/mxml, so you will be able to install it afterwards just typing:

    upgradepkg --install-new /tmp/slapt-src/libraries/mxml/xml*txz
  • Use -c if you want to use a custom configuration file instead of the default one /etc/slapt-get/slap-getrc

5.2. Manage users and groups

Two commands are provided to manage users and groups:

  • The usersetup command (TUI)

  • The gtkusersetup command (GUI), with an icon in the Slint Control Center, System category)

These commands allow you to add or delete users and groups of users, and add users to groups.

Bear in mind that each user account is associated by default to its on space in the /home directory. For instance if you add a user leonie, a /home/leonie folder will be created, to which only this user (and root) will be allowed to access.

5.3. Change the default language of the system

Two commands are provided for that:

  • The localesetup command (TUI).

  • The gtklocalesetup command (GUI), with an icon in the Slint Control Center, Settings category.

Bear in mind that this settings changes the language used by the applications' interfaces if they are internationalized, not the keyboard map (see below).

Also, localized packages (if available) matching the language chosen have been already installed at end of Slint installation. If you change the default language afterwards, you will need to install the corresponding localized packages if you want.

Localized means "provided in a given locale", the locale being a language plus peculiarities associated to a geographic area. For instance Portuguese spoken in Portugal and Brazil differ. In the localized packages names, l10n is an abbreviation of "localization" meaning "letter l, 10 other letters, letter n".

Localized packages are included for many languages. Their name include the base package name, a hyphen, then the language code. We list below the base names of the localized packages:

Base package name

Description

aspell

word lists for spell check

libreoffice-l0n

localized LibreOffice office suite

libreoffice-help

localized help for LibreOffice

To find a localized package, type in a terminal emulator as root (example for libreoffice-l10n):
spi libreoffice-l10n

This will display the list of all localized LibreOffice package. Find the one you want and install it. For instance for Persian the language code is fa (short for Farsi), so to install it type:
spi -i libreoffice-l0n-fa

If you prefer you can use gslapt. Then, type the package name in the search field to display all localized libreoffice packages.

5.4. Change the keyboard map

You can change the default keymap used in graphical mode using:

  • The keyboardsetup command (TUI)

  • The gtkkeyboardsetup command (GUI), with an icon in the Slint Control Center, Hardware category.

These commands also allow you to choose if numlock should be enabled when the system is started, and if the SCIM (input method) should be enabled at system startup.

If you use a window manager with a panel, you can also make this setting through a right click on the keyboard applet (displayed by default as the two letters language code of the keyboard map in use).

On the command line but still for the graphical mode use instead the command setxbmap

For instance to set the keyboard layout to Ukrainian in graphical mode, just type as regular user:
setxkbmap -layout ua

To know more, read the man page for setxkbmap.

5.5. Install a printer

In Slint the CUPS print server manages printers and printing tasks. In its default configuration, recorded in the file /etc/cups/cupsd.conf, only users belonging to the sys (short for system) group are allowed to perform administrative tasks, like adding or removing a printer.

For a simple setup (printer attached to a desktop or laptop and not shared between machines), you just need to add one user (who will manage the printers) to the sys group. For instance adding the user didier_to the group sys can be done two ways:

  • In console mode or using a terminal emulator, become root with su - then type:

    gpasswd --add didier sys

  • In graphical mode from the Slint Control Center click on Users and Groups (System category), select the user and click Properties, then in the Groups tab check sys. Or the other way round (select the group then add the user to it).

There are several ways to add and configure a printer (this has to be done by an user member of the group sys):

  • From the Slint Control Center, category Hardware, click on Printer Setup to display a GUI allowing a simple setup…​

  • …​ Or click on Cups Print Control the display a web interface to the CUPS server. You can also display the web interface to the CUPS server typing localhost:631 in the address field of a web browser.

  • If you have a Hewlett Packard device, make a right click on the hp logo in the notification area of the panel.

Note
To make any print setting the CUPS server should be running. It is started when you start Slint if the service cups in checked among the System Services (it is checked by default in Slint).

5.6. Sound set up

In Slint applications either send their sound output either to ALSA or to PulseAudio.

In the latter case PulseAudio in turn sends the output stream to an ALSA mixer which direct it to the sound cards.

As a result, a setting like an output sound volume can always be done by an ALSA mixer, and also by a PulseAudio mixer but only in case the application sends its sound output to PulseAudio.

We will present now applications that can be used to modify the sound settings

5.6.1. pavucontrol (for PulseAudio)

pavucontrol stands for PulseAudio Volume Control and is a graphical application. You can start it from a terminal or application menu, or doing a right click on the sound mixer icon on the top panel of Mate. Actually it allows more settings than just the volume control, take the time to explore all its features.

You can also use volume control applet in the notification area of the panel: a left click allows to adjust the volume, a right click gives access to other settings and allows to start the pavucontrol mixer.

5.6.2. alsamixer (for ALSA)

alsamixer is a ncurses application, providing a semi-graphical user interface.

To use it type in a console or in a graphical terminal:

alsamixer

then:

  • Use the page up key to increase the volume by 5%

  • Use the page down key to decrease the volume by 5%

  • press Esc to leave the application.

5.6.3. amixer (for ALSA)

The command is of the form:

amixer <arguments>

For instance to set the main volume to 70% type:

amixer sset Master 70%

To know more, type one of these commands:

man amixer
amixer -h

5.6.4. sam (the Speech-Friendly Alsa Mixer)

sam allows selection of the sound card to work on when there are more than one such device in your machine.
When there is only one, it directly presents the different mixers for configuration.

All selections, be it sound cards, mixers or a given feature of a specific mixer are selected by scrolling through the available options using the up and down arrows, then entering on the desired one:
q leave the selection list and/or quits.
Shift-q exits the program from anywhere.
F1 Displays any extra information if available.

When the name of the desired option is known, one can instead press its first letter. First-letter navigation is case-insensitive. That will then take you to the first selection starting with the pressed letter. Pressing the same letter again, will move you to the next option starting with that letter if more than one option like that exists. Repeating the letter will cycle among all those options starting with that letter.

The settable features of a mixer can be listed pressing F1.
They are presented as a selection list, showing briefly all relevant information, e.g. "playback volume down from 84 percent" is the option to lower the playback volume setting. As you can see, it also tells you what the current setting is.

Note
sam does not work correctly in a graphical terminal. Use it in a console.

5.6.5. pamixer and ponymix (for PulseAudio)

These utilities are similar, with commands in this form:

pamixer <arguments>
ponymix <arguments>

For instance to set the volume to 70% for the default sink type one of these commands:

pamixer --set-volume 7
ponymix set-volume 7O

To know more, type:

pamixer -h
ponymix --help

5.6.6. pacmd and pactl (for PulseAudio)

Both of these command line applications control a running PulseAudio daemon.

Warning
pacmd typed alone brings up an interactive dialog. Press Ctrl+d to exit from it but do not type exit, as that would kill PulseAudio!

To know more:

man pactl
man pacmd
pactl --help
pacmd --help

5.6.7. Save and restore the sound level

Just make the file /etc/rc.d/rc.alsa executable. As root:

chmod /etc/rc.d/rc.alsa

At startup, this script will restore the previous sound settings if saved, else will set default volumes and store them, so that they will be restored at next reboot.

If you don’t want that this script to set the default volume type as root:

touch /var/lib/alsa/no.asound.state

You can change these default sound levels with alsamixer or amixer then typing as root:

alsactl store

Then at next startup the script will restore them.

To know more:

man alsactl

5.7. Network configuration

If you didn’t set up your network settings during Slint installation, first become root by typing su - either in a console or in graphical terminal like mate-terminal, then type the root password.

Setup of the network is done by the netsetup script. So you would just type the command netsetup in that same terminal, where you’ve just aquired root privileges. You will be first asked for the hostname of your machine. you can choose any name, but mind that it has to be a single word. Then you are asked the domain name. If the machine is not a server you can choose anyone. After that you will be asked how your machine connects to the network. Unless you have a good reason not to (and you know what you are doing), keep the default NetworkManager to automatically configure the network.

For wired connections, that should be enough to be connected on next boot automatically.

To configure a wireless connection, two commands are available using the command line.

Again, you can type the commands directly on the console or in a graphical terminal like mate-terminal. Type them as regular user not as root. If you followed these instructions and became root already, you would just type exit to get back the regular user status.

The two mentioned commands are nmtui (dialog boxes) or nmcli (pure command line), both are accessible.

If you prefer working on a command line, make sure to read the nmcli documentation first. Just type nmcli --help and man nmcli to find out all the details. While nmcli offers more possibilities, in most use-cases the functionality of nmtui will be sufficient for setting up your wireless network, so we will describe it here:

Using nmtui, you can navigate with the Tab and arrow keys. You will be proposed three options:
Edit a connection
Activate a connection
Set system hostname

If no wireless connection has been set yet choose Activate a connection. Starting from top to bottom, first the wired connections (if any) will be proposed, after that all accessible wireless networks will be listed. Navigate with the down and up arrow keys to select the network you want, then just press Enter: you will probably be asked for the password or encryption key. Type it, use the Tab key to confirm, then exit and you are done.

In graphical mode only, instead of nmcli or nmtui you can use the application nm-connection-editor.

5.8. Services configuration

You can change the default settings several ways:

  • Running as root the servicesetup command (TUI)

  • In graphical mode only, using gtkervicesetup, accessible from the Slint Control Center, category System or typing Alt+F2 to raise a "Run…​" dialog then typing gtkservicesetup.

  • As root making the relevant script executable (chmod 755 <path to the script> or non executable (chmod 644 <path to the script>). For instance to make fail2ban executable you would type: chmod 755 /etc/rc.d/rc.fail2ban

Important
Only change the default settings if you know what you are doing.

The services are managed by scripts whose name begin with rc. in the directory /etc/rc.d/. For instance the service acpi is managed by the shell script /etc/rc.d/rc.acpi. Most of the services are activated at startup if the corresponding script is executable. In the table below we indicate if it is activated at startup (on in the column A) or not (off in the column A). If the column is blank the activation of the services depends on a choice made during installation. An A in the column indicates that the service is activated in Auto installation mode, else is activated if chosen by the user during installation. The Package column indicate which software package provides the script corresponding to the service, case occurring

Service

A

Package

Purpose and comments

acpi

on

acpid

Advanced Configuration and Power Interface, allows for instance to manage power or reboot pressing a button

alsa

on

alsa-utils

Provide default sound settings or restore those saved

alsa-oss

off

alsa-utils

ALSA OSS kernel modules. Not useful in most cases, not enabled by default in Slint.

atalk

off

netatalk

Allows Unix-like operating systems to serve as file, print and time servers for Macintosh computers.

atd

off

at

at and batch read shell commands from standard input (or a specified file) storing them as a job to be scheduled for execution at a later time

autofs

off

autofs

AutoFS provides automounting of removable media or network shares when they are inserted or accessed.

bind

off

bind

Name server. Most users will rely on a remote one. Enable it if you want to run a name server in this system.

bitlbee

on

bitlbee

BitlBee is an IRC daemon that can talk to instant messaging networks and acts as a gateway. Users can connect to the server with any normal IRC client and see their 'buddy list' in bitlbee.

bluetooth

on

bluez

Allows to communicate with bluetooth devices

brltty

brltty

Allows to communicate with Braille terminal or screen reader. Activated if requested during installation

cgconfig

on

libcgroups

Runs the cgconfigparser utility that parses /etc/cgconfig.conf to setup the control group hierarchy, including setting the permissions (UID and GID) of the groups and possibly tunable parameters of the controllers. This alleviates doing that ourselves at every startup, for instance running a separate shell script. This script is executable by default but anyway won’t do anything until /etc/cgconfig.conf be edited (all lines are commented out as shipped)

cgred

on

libcgroups

The control groups are a way to control the allocation of system resources like CPU or RAM to "groups" of users and/or processes. This script starts the cgroups rules engine daemon that automatically distributes to appropriate control groups the processes that changes their effective UID or GID. It is executable by default but to make it work you need to set rules in /etc/cgrules.conf.

consolekit

on

ConsoleKit2

This daemon is used by polkit’s auth agent, to check privileges of user wanting to reboot or shutdown the system, for instance.

cpufreq

on

sysvinit-scripts

Settings for CPU frequency and voltage scaling in the kernel.

crond

on

crond

The cron daemon runs in the background and executes tasks on behalf of users at the appropriate time.

cups

on

cups

Startup/shutdown script for the CUPS print server.

cups-browsed

off

cups-filters

Makes remote printers available locally.

dnsmask

off

dnsmask

Start/stop/restart dnsmasq (a small DNS/DHCP server)

dovecot

off

dovecot

Dovecot is an open source IMAP and POP3 server for Linux/UNIX-like systems, written with security foremost in mind.

elogind

on

elogind

elogind is the systemd project’s logind, extracted to a standalone package.

espeakup

espeakup

starts/stop/restart the espeakup console screen reader. On if user requested speech during installation or later typed speak-with espeakup

fail2ban

off

fail2ban

start/stops fail2ban which scans log files like /var/log/pwdfail and bans IP that makes too many password failures, and also updates firewall rules to reject the IP address.

fenrir

off

fenrir

starts/stop/restart the fenrir screen reader, which can be started after installation typing speak-with fenrir.

font

off

kbd

Sets the console font (used in Console mode, not in Graphical mode)

fuse

on

fuse

Load the fuse module and mount the fuse control filesystem. FUSE is a simple interface for userspace programs to export a virtual filesystem to the Linux kernel. FUSE also aims to provide a secure method for non privileged users to create and mount their own filesystem implementations.

fuse3

on

fuse3

Like fuse, but version 3

gpm

on

gpm

The General Purpose Mouse server allows to cut and paste text from the screen on a Linux console.

haveged

on

haveged

The haveged project is an attempt to provide an easy-to-use, unpredictable random number generator based upon an adaptation of the HAVEGE algorithm.

httpd

off

httpd

Starts or stop the Apache web server

icecc-scheduler

off

icecream

Start/stop/restart the icecream (distributed compiler) scheduler

iceccd

off

icecream

Start/stop/restart the icecream (distributed compiler) daemon

inet1

on

network-scripts

This script is used to bring up the various network interfaces.

inet2

on

network-scripts

This shell script boots up the entire network system.

inetd

on

inetd

BSD "super-server" daemon. The user needs to edit /etc/inetd.conf for the services to be actually used.

ip_forward

off

network-scripts

Start/stop IP packet forwarding, needed for your computer to act as a router.

kadmind

off

krb5

Start the Kerberos administration server

kprprod

off

krb5

Start the Kerberos V5 slave KDC update server.

krb5kdc

off

krb5

Start krb5kdc, which is the Kerberos version 5 Authentication Service and Key Distribution Center (AS/KDC). This needs to run first on both master and secondary KDCs.

local

off

sysvinit-scripts

starts daemons not started by /etc/rc.d/rc.M at boot time.

loop

on

sysvinit-scripts

Loads the loop device kernel module.

lxc

off

lxc

This scripts starts (if configured to be auto-started) and stops lxc containers.

mcelog

off

mcelog

Starts the mcelog hardware error logging. This logs and handles CPU hardware errors on x86 systems

messagebus

on

dbus

The D-BUS systemwide message bus. This is a daemon which broadcasts notifications of system events and other messages, providing inter-processes communication.

modules

on

sysvinit-scripts

Compute the kernel modules dependencies and start other scripts that load modules not automatically loaded by eudev, possibly for specific kernel versions

modules.local

on

sysvinit-scripts

Load modules not automatically loaded by eudev

mysqld

off

mariadb

Starts/stop the MariaDB server. MariaDB is a fork of MySQL fully compatible with it

networkmanager

NetworkManager

This is a daemon for automatically switching network connections to the best available connection. Activated if NetworkManager is chosen to configure the network, during or after installation

nfsd

off

nfs-utils

Starts/stop a nfs (Network File Server)

ntpd

on

ntp

Starts stop an ntp ( Net’work Time Protocol) daemon.

numlock

salixtools

Activate numlock on the console

openldap

off

openldap

Start the ldap (Lightweight Directory Access Protocol) server

openvpn

off

openvpn

Start the OpenVPN (secure IP tunnel) daemon

pcmcia

off

pcmciautils

Script to initialize PCMCIA subsystem.

php-fpm

off

php

Starts the PHP FastCGI Process Manager daemon.

postfix

off

postfix

start Postfix, mail transport and submission agent.

pulseaudio

off

pulseaudio

Starts pulseaudio system-wide. This is not recommended in Slint.

rpc

off

rpcbind

Start/stop/restart RPC (remote process communications) daemons needed to use NFS. To run an NFS server, starting these is mandatory.

samba

off

samba

Start/stop/restart the Samba SMB CIFS file and print server for CIFS clients. It allows you to manage a file space or printers on a Samba host available to CIFS clients (such as PCs running Windows).

saslauthd

off

cyrus-sasl

saslauthd is a daemon process that handles plaintext authentication requests on behalf of the SASL library. The CMU Cyrus SASL library is mostly used to authenticate to mail servers.

serial

off

util-linux

Initializes and sets the serial ports on your system

setterm

on

util-linux

Provides the command line for the setterm utility to set the terminal attributes (primarily used for screen blanking and power management).

smartd

off

smartmontools

Start/stop/restart the smartd daemon, which monitors the status of S.M.A.R.T. compatible hard drives and reports any problems.

snmpd

off

net-snmp

Start/stop the net-snmp SNMP (Simple Network Management Protocol) daemon

speechd-up

speechd-up

starts/stop/restart the speechd-up screen reader, which can be started after installation typing speak-with speechd-up.

sshd

on

openssh

Start/stop/restart the secure shell daemon.

swapinzram

on

swapinzram

Configure a swap block device in RAM using zram

syslog

on

sysklogd

Start/stop/restart the system logging daemons, that logs both kernel and system’s messages.

sysstat

off

systat

Reset the system activity logs, used to compute performance statistics

sysvinit

on

sysvinit-scripts

This file provides basic compatibility with SystemV style startup scripts found in many binary packages

timidity

off

TiMidity++

Start/stop/restart the TiMidity daemon. TiMidity is a software synthesizer. It can play MIDI files by converting them into PCM waveform data or other various audio file formats.

udev

on

eudev

This script initializes udev, which populates the /dev directory with device nodes, scans for devices, loads the appropriate kernel modules, and configures the devices.

ulogd

on

ulogd

starts the userspace ulogd daemon for netfilter/iptables related logging.

vde2

on

vde2

Start/stop/restart the VDE daemon. VDE is an ethernet compliant virtual network which includes tools such as 'vde_switch' and 'vdeqemu'.

wireless

on

wireless-tools

This script sets up PCI, USB, and 32-bit Cardbus wireless devices. Normally this script is called from rc.inet1 rather than run directly

yp

on

yptools

Start NIS (Network Information Services). NIS provides network-wide distribution of hostname, username, and other information databases.

You can start or stop a service using as root the command service. To know more type man service.

6. Glossary

Several definitions in this glossary are taken or adapted from Wikipedia and POSIX

Application

An application program (application for short) is a computer program designed to carry out a specific task typically requested by end-users.

Applications are not generally considered as part of the operating system, meaning that they can be added to the system after its installation. They perform non-system-related functions, such as word processing, architectural design, mechanical design, publishing, or financial analysis.

Boot

Boot means switch-on a computer to start an operating system. Several operating systems can be installed in the same computer. Select which one to load into RAM and run can be done either by the firmware or by a software named boot manager (GRUB in Slint’s case). The firmware of a computer can support one of following booting mode, or both:

  • In the Legacy or BIOS mode the OS is loaded executing the instructions written in a boot sector.

  • In the EFI mode the OS loader is a program stored in an executable file, located in a directory of an EFI System partition (ESP).

CPU

The CPU or Central Processing Unit executes the instructions of programs.

Command

Command is defined by POSIX as "a directive to a shell to perform a specific task".

The task to perform can be an application or an utility.

The basic structure of shell commands is defined in the chapter 2.9 Shell Commands of the POSIX specification.

Examples of commands are provided in [bash shell].

Console

The word "console" refers to the beginning of computer systems, when the system administrator typed commands on a device including a keyboard and a printer, linked to the computer, the commands typed and the output from the computer being printed on the console, providing a log of both.

In personal computers the user type the commands on keyboard and their output is printed on a screen, that can be separated from or integrated to the computer as in a laptop.

Device

A computer peripheral or an object that appears to the application as such.[POSIX]

Directory

A directory is another name for a folder. File systems use directories to organize files within partitions.

Directories can contain files and also other directories. The resulting structure can be represented as an upside-down tree. The top-level directory of a drive is named the root directory. In Linux the character / separates the levels of the tree. / alone represents the root directory, /home hosts the files belonging to users, /home/didier hosts the files belonging to user didier. /root hosts the files of the user named root (the system’s administrator). Note: 'root' can refer to the top-level directory or the system’s administrator.

Drive

A drive is a device that stores non volatile data, meaning that the data is not erased when the power is turned off. Examples: hard disks, SSD, USB sticks, SD cards readers, eMMC.

The media storing the data can be permanently attached to the drive or removable like SD cards, USB sticks and drives connected through USB.

An operating system installed in a removable media or an external drive is said portable: it can be moved from a computer to another one.

Display manager

A display manager (or login manager) is a software that displays a window on the screen in which it asks the login name and password of the user, then starts the graphical environment chosen by said user.

Encryption

Encryption is the process of converting data to an unrecognizable ("encrypted") form. It is commonly used to protect sensitive information so that only authorized persons can view it. A single file or directory, a partition as well as a whole drive can be encrypted, which make it accessible only after having typed a small text called a passphrase, kept secret.

File

A computer file is a set of digital data gathered under the same name, recorded on a permanent storage medium, called mass storage, such as a hard disk, a SSD, a DVD, a SD card or an USB stick and handled as a unit.

Files can contain data like texts, images, sounds, videos or computers programs.

File System

A file system is a software that manages the files and directories in a partition. It memorizes the location in the physical media of the data contained in the files, allowing to read or writing them. Examples of commonly used file systems are vfat, ntfs, ext4, f2fs. This command lists all file systems allowing to read data contained in a partition from Linux:

cat /proc/filesystems|grep -v nodev
Firmware

A firmware is a software that initializes and checks the hardware, then either selects and load in RAM the operating system, or starts a software called a boot manager that will do that. The firmware is held in non-volatile memory devices such as ROM, EPROM, or flash memory. It is the first software run when booting a computer. It provides a menu allowing to configure the hardware and select in which mode (Legacy or EFI) to boot, and in which order look for the operating system or other application (like the GRUB boot manager) to run.

Kernel

A Linux kernel is the software at the core of a Slint system which handles the interactions between the applications and the hardware.

It presents itself as a single file, installed in the directory /boot. For instance the file /boot/vmlinuz-generic-5.12.11 is a kernel, coming from kernel-generic package.

At startup the kernel is copied into RAM.

Initrd

An initrd (more accurately an initramfs or initial RAM file system for Slint) is a Linux system provided as a compressed archive file. At boot, just after the kernel has been loaded in RAM the initrd is loaded in RAM too. Its file /init runs: it loads needed kernel modules in RAM, register the devices, possibly unlock the root device, mount the pseudo file systems then switch to the root file system to actually start the system.

An initrd presents itself as a single file, installed in the directory boot. For instance the file initrd-generic-5.12.11 is an initrd

Live system

A live system is an operating system that, instead of being installed in a device like an hard disk or SSD, lies entirely in RAM.

An initrd is also a live system, and so is a Slint installer wich is basically an initrd.

Partition

A partition is a section of a storage media, such as a hard disk or SSD. It is treated by the operating system as a separate logical volume, which makes it function similar to a separate device.

Partition table

A partition table is the permanent structure recording how information is laid out on a media, mainly recording the beginning and end of each partition on the media.

The most common types of partition tables are the DOS partition table, initially used by the MS-DOS operating system, and the GUID Partition Table or GPT, which allows to handle more partitions and larger drives.

Program

A prepared sequence of instructions to the system to accomplish a defined task. The term "program" encompasses applications written in the Shell Command Language, complex utility input languages (for example, awk, lex, sed, and so on), and high-level languages. [POSIX]

RAM

RAM stands for Random Access Memory. This kind of device stores volatile data, meaning that the data is erased when the power is turned off.

Shell

A program that interprets sequences of text input as commands. It may operate on an input stream or it may interactively prompt and read commands from a terminal. The syntax of the commands that can be interpreted by the shell can vary depending on the shell in use but are mainly defined in the chapter 2. Shell Command Language of the POSIX specification.

Slint ships several programs acting as shell, listed in the file /etc/shells. The bash shell is used by default.

Swap

A swap space is used to tentatively store data previously in RAM on a device like a hard disk or SSD, either because else the RAM would become full, or to free space in RAM to store there most frequently used data. The swap space can be a partition on a drive of type 'Linux swap' or a regular file stored in an an existing partition. There is also the 'swap in zram': in this case the data is stored in RAM but in compressed form.

Terminal

Historically a terminal was a physical device composed of a keyboard and a screen used to type commands and receives responses from a remote computer.

Nowadays the commands can be typed in console (or text) mode or in graphical mode.

Utility

An utility is a program that can be invoked by name from a shell (this is also the case of some applications).

Utilities are a part of the operating system (but not of the kernel). They perform system-related functions, such as listing directory contents, checking file systems, repairing file systems, or extracting system status information.

An utility may be invoked as a separate program that executes in a different process than the command language interpreter, or it may be implemented as a part of the command language interpreter.

For example, the echo command (the directive to perform a specific task) may be implemented such that the echo utility (the logic that performs the task of echoing) is in a separate program; therefore, it is executed in a process that is different from the command language interpreter. Practically this means that in this case the utility is a program distinct from the shell

Conversely, the logic that performs the echo utility could be built into the command language interpreter; therefore, it could execute in the same process as the command language interpreter. Such an utility is said "built-in" the shell.

Virtual terminal

A virtual terminal is a software that simulates a physical terminal, device composed of a keyboard and a screen allowing to communicate remotely with a computer.