##

Porteus Version 1.0 FAQ

1. What is Porteus?
2. What does Porteus look like?
3. Who would be interested in Porteus?
4. Can I install Porteus to my hard drive?
5. How do I check an md5sum and why is it ﻿so important?
6. How to disable Kernel Mode Setting on amd/ati, nvidia and intel GPU's?
7. How do I play 1080p movies in Porteus?
8. Why is the KDE-4 desktop missing applications like: konqueror, kontact, kopete, kuser, etc?
9. Why aren't my 32 bit modules working in 64 bit Porteus?
10. How do I get my wireless card to work?
11. The fglrx driver for my Amd/Ati card doesn't work - what to do?
12. How can I install new programs that are not included in the default Porteus ISO?
13. How do I setup national language support in Porteus?
14. How do I report a bug?
15. How can I set LXDE as the default desktop?
16. What is a cheat code?
17. How can I find out more about the various cheat codes?
18. Porteus hangs during xorg/GUI initialization 'starting X11' - how can I fix it?
19. PXE boot doesn't work with my NIC - how can I fix it?
20. My PC has low memory amount - is there any simple way of increasing it?
21. Do you have any plans for switching the 32-bit edition to KDE-4.x?
22. How can I customize the Porteus ISO?
23. I'm using /porteus/rootcopy for adding files to the live filesystem and all of the permissions are messed up. What's the story?
24. How can I boot Porteus from the ISO image file?
25. How can I log in to KDE or LXDE as the root user?
26. How can I change the default passwords for the root and guest users?
27. How do I remove or replace the firefox add-ons that are included by default in Porteus?
28. How do I create a module for use in Porteus?
29. How can I compile software from source code and create a Porteus module from it?
30. How do I compile applications that require access to kernel sources?
31. How can I track missing package dependencies?
32. How can I convert squashfs3 modules to the new squashfs4 format which is used in Porteus (32-bit edition ONLY)?

What is Porteus?

Porteus is a portable linux operating system that can be installed on a portable USB device, CDROM, SD card or Hard Drive. Porteus is based on the Linux Live Scripts which have been heavily modified by Fanthom, our chief maintainer, for a much faster booting and shutdown time. In essence, Porteus is a portable Slackware OS which started out as Fanthom keeping the Slax OS up to date as a community remix project. Unlike a standard linux install, Porteus exists in a compressed state on a postable drive. It has no /root /bin /etc file structure on the portable device itself. The directory structure is created on the fly during the boot process, which only takes around 20-30 seconds on a relatively new computer. It is modular in design which means extra software comes in the form of 'modules' which can be activated and injected into the live file system. Software does not need to be installed and uninstalled as you may expect with other operating systems which take numerous amounts of clicks and agreements. You simply double click on a module and it is activated in a second or two and ready for use. To remove it just double click again and the module is deactivated. It's that simple!

What does Porteus look like?

Here are a few screenshots of the current versions:

Porteus 32 bit desktop

Porteus 64 bit (KDE4) desktop

Porteus Boot menu splash

See various screenshots here

Who would be interested in Porteus?

Anyone who likes an extremely fast and light operating system that boots in seconds, and stays up to date with the latest software and kernel versions. Porteus is also a great way to try out linux from a USB device if you want a taste but aren't too sure. Read more here

Can I install Porteus to my hard drive?

You can 'run' Porteus from your hard drive whether it is an external or internal hard drive. We advise that you run Porteus from these media in it's compressed form, commonly referred to as a 'frugal' install. We do not support decompressing Porteus to your system as a regular linux install. You should install Slackware instead.

How do I check an md5sum and why is it so important?

An Md5sum is a way of ensuring that the file you download was not corrupted during download. You download a file to your computer, then you check it's md5sum and if the md5sum matches with one saved in md5sums.txt file on the server, you can be 100% sure that your download was not corrupted. You can check a files' md5sum by running this command in the console:

md5sum your_file

If the md5sums do not match, please try the 'rsync' utility instead of downloading through your browser/application:

rsync -avP ponce.cc::porteus/x86_64/current/porteus-v1.0-x86_64.iso .

Replace the 'x86_64' portion with 'i486' if you are using the 32-bit edition, and replace the '-v1.0-x86_64.iso' portion to match the release you are using. Be sure to include the final dot - it's actually part of the command and means the file will be downloaded to the current directory you are in when you issue the command. Also, please note that an md5sum check is now included during the Porteus installation.

How to disable Kernel Mode Setting on amd/ati, nvidia and intel GPU's?

Since v08, Kernel Mode Setting (high resolution in console mode) is enabled by default on all modern GPU's. If you wish to disable it, just add the: 'nomodeset' cheatcode to /boot/porteus.cfg file.
Be aware that intel, opensource radeon and nouveau drivers wont work without KMS in Graphical User Interface mode.

How do I play 1080p movies in Porteus?

Since Porteus v08, Mplayer has had vdpau and vaapi support. If you have a vdpau capable GPU (recent nvidia cards), then you can play HD movies easily by passing following arguments to mplayer:

mplayer -vo vdpau -vc ffh264vdpau /path_to_movie

If you have amd/ati HD series card or Intel GMA/Clarkdale (i3,i5,i7) or newer gpu/igp, then proper command syntax needs to look like this:

mplayer -vo vaapi -va vaapi /path_to_movie

(you can also try vaapi feature with nvidia cards but vdpau does a better job in general)

Why is the KDE-4 desktop missing applications like: konqueror, kontact, kopete, kuser, etc?

Porteus strives to keep it's file size below 300Mb - that's why the KDE-4 module is stripped of all less important applications. If you really need any special KDE-4 application, please post a request in the relevant thread on the Porteus forum. We'll try to add it to the 'packages section' on the server (konqueror is there already).

Why aren't my 32 bit modules working in 64 bit Porteus?

If you are running the 64-bit version of Porteus, 32bit applications wont work until you install the relevant 32bit libraries. Please use the 32bit compatibility modules as described in this forum post:
Click here to read it

How do I get my wireless card to work?

Since the v06 release, firmware which is needed by some wifi cards is included in the 001-core module. Use 'wicd' or the 'pns-tool' utility to setup your connection in an 'easy way'. Launch it from console by typing pns-tool or through KMenu/Lxde menu. In case of troubles with getting your wifi driver to work you can try the 'ndiswrapper' utility which is provided with Porteus. For more info about this: click here

The fglrx driver for my Amd/Ati card doesnt work - what to do?

Some users have reported that the fglrx driver provided in the Porteus repo doesn't work for them. If it's your case then you can use the script from this post to compile a driver locally for your card.

How can I install new programs that are not included in the default Porteus ISO?

A new program has been added for Version 1.0 of Porteus, called Porteus Package Manager (PPM). It can be opened from the KDE/LXDE menu under the 'system' heading, or run from the command line, as 'porteus-package-manager'. Click here for more information about it.

How do I setup national language support in Porteus?

Use Language-Selection-Tool. Launch it from console by typing language-selection-tool or through KMenu/Lxde menu. This tool can also be accessed through the Porteus-Settings-Assistant, located in the KDE/LXDE menu under the 'system' heading.

How do I report a bug?

Try to recreate the bug first: boot Porteus in 'always fresh mode' with basic Porteus modules only. If you are able to recreate the error, post a bug report on Porteus forum in the relevant thread. Please attach links to the screenshots and logfiles if possible (examples: /var/log/messages, /var/log/dmesg, /var/log/Xorg.0.log). For storing of log files please use external sites like pastebin.com and post web links only. Make sure that error was not created by the user mistake/fault - save our free time!

How can I set LXDE as the default desktop?

To boot Lxde with all options available through the booloader (always fresh, vesa, copy to ram, etc) you need to:
- remove kde modules from /porteus/base folder and Lxde will be started automatically, or:
- add the 'lxde' cheatcode, for example: 'lxde autoexec=xconf;telinit~4'
In the second case you are be able to use KDE applications and still have lxde as default deskop.

What is a cheat code?

A cheat code refers to a command that can be entered at the start of booting (or entered into porteus.cfg for permanence) which passes a value to porteus such as 'nocd' to boot with no CD support or 'acpi=off' to disable advanced configuration and power interface settings. These can be very useful for trouble shooting problem components.

How can I find out more about the various cheat codes?

You can find an updated cheatcode list in the /boot/docs/cheatcodes.txt file inside the Porteus ISO, or you can go here. Familiarize yourself with the cheat codes as they can come in handy.

Porteus hangs during xorg/GUI initialization 'starting X11' - how can I fix it?

Try to add 'vmalloc=256MB' cheatcode to /boot/porteus.cfg file under the mode you boot into. If the error still exists, please post bug report on Porteus forum in relevant thread.

PXE boot doesn't work with my NIC - how can I fix it?

To add support for your ethernet card to /boot/initrd.lz file. Please boot to Porteus and execute these commands in a console:

xz -d initrd.xz && mount -o loop initrd /mnt/cdrom
cp --parents /lib/modules/`uname -r`/kernel/drivers/net/name_of_your_driver.ko /mnt/cdrom
depmod -b /mnt/cdrom && umount /mnt/cdrom && xz --check=crc32 --x86 --lzma2 initrd

My PC has low memory amount - is there any simple way of increasing it?

Create a swap file on your hard drive which will act as an extra (but slower) memory bank. Run the following command in a console to create and activate a 500MB swap file on sda9 partition:

mkfileswap /mnt/sda9/Porteus.swap 500

If you want to have this swap file activated by default, add following command to your /etc/rc.d/rc.local:

swapon /mnt/sda9/Porteus.swap

You should replace sda9 with the path of your own partition. You can see your partition setup by typing fdisk -l in a console from any position.

Do you have any plans for switching the 32-bit edition to KDE-4.x?

No--The reason is simple: We don't want to get a lot of reports that KDE-4 is working slowly on users' PCs. The 64-bit edition of Porteus has KDE-4 included by default as 64bit CPU'a are fast enough to handle it - well, maybe except atom's :) Some users have experimented with KDE-4 in the 32-bit edition. Search the repo's and forum for more information if you are interested (but keep in mind, running KDE-4 in 32-bit Porteus is not officially supported).

How can I customize the Porteus ISO?

Make all of your desired changes to the /boot and /porteus folders to make them look exactly how they should appear on your custom ISO. Then (from Windows) double click on /porteus/make_iso.bat to execute it, or (from Linux) run the script /porteus/make_iso.sh. These scripts will create a new ISO with a name and location you provide.
Example of how to run make_iso.sh:

cd /mnt/sdXN/porteus/
./make_iso.sh

where sdXN is the location of your /boot and /porteus folders.

I'm using /porteus/rootcopy for adding files to the live filesystem and all of the permissions are messed up. What's the story?

When the /porteus/rootcopy folder is placed on a FAT/NTFS filesystem, all files are given 777 permissions due to Windows filesystem limitations. When Porteus is booted over a network (PXE) then all files from /porteus/rootcopy are given 444 permissions (that's how http service works). During boot-up, linuxrc will set 755 permissions on all scripts/binaries placed in /porteus/rootcopy: /etc/rc.d, /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin and /usr/local/sbin folders.

If you want to keep your original permissions then you must use an xzm module and not /rootcopy.

REMINDER: all of the above applies to FAT/NTFS and pxe-boot only, You can use /porteus/rootcopy as normal when placed on supported linux fs.

How can I boot Porteus from the ISO image file?

In order to boot from the ISO image, your bootloader must boot Porteus from the linux kernel and initrd included in that ISO (otherwise, the kernel version will differ from the version of the kernel modules included in the ISO in /porteus/base/000-kernel.xzm). You need to unpack /boot/vmlinuz and /boot/initrd.xz and place them somewhere on your hard disk or USB drive. Then, you need to point your bootloader to the kernel and initrd and use the from_iso cheatcode. For example, using SYSLINUX on a flash drive, with the kernel and initrd in the /boot/porteusISO directory of that device:

`LABEL xconf
MENU LABEL 32-bit beta KDE
KERNEL /boot/porteusISO/vmlinuz
APPEND initrd=/boot/porteusISO/initrd.xz from_iso=/path/to/porteus.iso autoexec=xconf;telinit~4
TEXT HELP
Run Porteus the best way we can.
Try to autoconfigure graphics
card and use the maximum
allowed resolution
ENDTEXT`

Or, a more complex example would be using lilo to boot a porteus ISO from a hard disk with multiple partitions, with saved changes and a rootcopy directory on the hard disk. This is what the lilo.conf would look like:

`# Porteus
label = Porteus
vga=791
image = /boot/vmlinuz-ps1
initrd = /boot/initrd-ps.xz1
append = "from_iso=/dev/sda5/iso_images/porteus-v1.0_rc2-x86_64.iso changes=/dev/sda4/porteus_changes rootcopy=/dev/sda4/porteus_rootcopy extramod=/dev/sda4/porteus_xzm autoexec=xconf;telinit~4 toroot copy2ram lxde nohd nocd"`

How can I log in to KDE or LXDE as the root user?

As of Version 1.0, Porteus will log you in as a non-root user called 'guest' by default. This is done to increase the security of your system. If you would like to boot into KDE or LXDE as the root user, just use the 'toroot' cheatcode.

How can I change the default passwords for the root and guest users?

If you would like to change the default passwords ('toor' for root and 'guest' for guest), this can be done through the "Porteus-Settings-Assistant" tool, available in the KDE or LXDE menu under "System". Navigate through the script (skip through any of the sections you don't want to modify) until it asks about user settings. On the 'user settings' screen, click on the 'continue' button, and then click 'change passwords now'. This will open a console and prompt you for new passwords. Follow the instructions to assign new passwords. A module, psswd.xzm will be created and placed on your storage media at /porteus/modules. Once this module is in place, your new passwords will be enforced. If you are booting off a CD or other read-only media, the module will be created as /home/guest/Desktop/psswd.xzm, and you'll need to remaster your ISO to add this module to your ISO image, inside the /porteus/modules directory. For more on remastering an ISO, see question #22, above.

How do I remove or replace the firefox add-ons that are included by default in Porteus?

Add-ons are stored in the firefox xzm module in your /porteus/base/ folder. For the 32-bit edition, this is 008-firefox.xzm, and for the 64-bit edition it 006-firefox.xzm. You must extract this module, remove or replace the add-on, then recompress the module.
For example, in the 32-bit edition, you would perform these actions, as root:
1) Copy the 008-firefox.xzm module to your desktop
2) Right click on the module and select "Extract xzm module..."
3) Double click on the 008-firefox folder that is now on your desktop
4) Navigate inside this folder to usr/lib/firefox/extensions/
5) Remove or overwrite the randomly named folder that corresponds to the add-on you want to remove or replace (navigate inside each of these randomly named folders and open the 'chrome' folder to find out which folder corresponds to which extension)
6) Go back to your desktop, right click on the 008-firefox folder, and select "create xzm module..."
7) Copy the resulting firefox module back to /mnt/sdXN/porteus/base/, and remove the old 008-firefox.xzm module (or save it somewhere else in case the new module fails).
In the 64-bit edition, you would follow the same steps, but the add-on files are located in:
/usr/lib64/firefox/extensions/
Be aware that the add-ons stored in /usr/lib (/usr/lib64 in the 64-bit edition) are enabled or disabled globally. If you want to enable add-ons for some users but not others, please place the add-ons in the home folder instead. For example:
006-firefox.xzm/home/fanthom/.mozilla/firefox/6fhu8eso.default/extensions/

How do I create a module for use in Porteus?

Open your file manager (e.g. konqueror or dolphin), navigate to the location of the folder you want to convert, then right click on it and choose "create xzm module" from the service menu. From the command line, you can use the dir2xzm command. For more information, see this article and this article.

How can I compile software from source code and create a Porteus module from it?

First of all you should follow the official Slax documentation which is placed here:
http://www.slax.org/documentation_create_modules_rules.php
If you want to install all files to a specified directory please use this command:
make install DESTDIR=/tmp/destination
Sometimes the DESTDIR function is not present or does not work. If that's the case, please read this thread:
http://www.slax.org/forum.php?action=view&parentID=69223
Or, you can pull out the files that are installed by the compiler using the 'changes-time.sh' script, which is included in the default ISO and saves all changes made to the Porteus system within a defined time interval. Simply run the script and enter a number of minutes, and your recently modified files will be placed in a new directory. For example, entering '5' for the number of minutes would save all files added or modified in the last five minutes to /root/changesXXXX/, and you could then create a module from that directory that would contain all of the files installed by 'make install'. It's a good idea to go through the files saved by this script, to make sure it only contains the files you want to go in your module.

How do I compile applications that require access to kernel sources?

Some applications need the kernel sources to compile successfully -- 64bit Porteus edition keeps them outside of the default build to save space for other applications. Just get and activate the "crippled_sources" module for your version and edition (32 or 64-bit) from the Porteus repo and compile your application as normal. Be aware that VirtualBox needs the full kernel sources and the information in the 'crippled-sources' module is not enough. You can recreate the full kernel source by applying the Porteus kernel patches from the repo to the relevant kernel sources version from kernel.org.

How can I track missing package dependencies?

Porteus Package Manager (PPM) should resolve and download any required dependencies for your packages. However, if you are using packages from another location, you can use the 'slackyd' tool to download missing libraries. Open a terminal and type 'slackyd -u' to update the package database, and then 'slackyd -d' to check and download missing dependencies.

How can I convert squashfs3 modules to the new squashfs4 format which is used in Porteus (32-bit edition ONLY)?

Modules are converted on the fly by double clicking on them or you can open konqueror and right mouse click on a sq3 (slax-6.1.2) module and choose the proper conversion option. You can also use Brokenman's 'Module Tools' - CLI or GUI version. Launch them from console or through the KDE or LXDE menu under the 'System' heading.

Thanks for reading this document :)
Please pay special attention especially to Q/A "14. How to report a bug?" as very few people are reporting bugs in the correct way. Please remember - the less time we spend on answering questions that are already answered in this FAQ, the more time we'll have for adding new features to Porteus!