Main menu:

Sponsoring

Please consider a small donation:

 

 

Or you can donate bitcoin:

 

Thanks to TekLinks in Birmingham, AL, for providing colocation and bandwidth.

Page Rank

Fame

FOSS Force Best Blog--2013 Award

Recent posts

Recent comments

About this blog

I am Eric Hameleers, and this is where I think out loud.
More about me.

Search

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 219 other subscribers

My Favourites

Slackware

Calendar

July 2016
M T W T F S S
« Jun    
 123
45678910
11121314151617
18192021222324
25262728293031

RSS Alien's Slackware packages

RSS Alien's unofficial KDE Slackware packages

RSS Alien's multilib packages

RSS Slackware64-current

Meta

Slackware Live Edition

I thought it would be a cool idea to celebrate the “farewell to udev”. With the abandoned ConsoleKit replaced by ConsoleKit2 which is actively maintained by the Slackware-friendly XFCE crew, and Gentoo’s eudev taking the place of udev, we are well equipped to keep systemd out of our distro for a while. Basically eudev contains the udev code as found in the systemd sources, but then stripped from all standards-violating systemd crap and with a sane build system. Hooray, we’re back in business and eudev gained some more traction. Win-win.

How to celebrate the occasion? Easy! By releasing the Slackware Live Edition.

liveslak-1.0.0

Please also check out the original announcement text (moved to a different page) and the follow-up articles on “liveslak” which explain how this project grew from its humble beginnings.

First teasing screenshots of my (then still called) “Project X” were revealed in a blog post in November 2015. I wrote the original annoucement a week later, also in November, on this exact blog page. However, the original text talked about being beta, incomplete and in need of testing. In the meantime, this page’s URL is being linked to from everywhere and I get many questions about “when will it be ready” so I decided to re-write this text into a proper reference page and moved the original text to a different location for posterity.

What is Slackware Live Edition, and what is liveslak?

Slackware Live Edition:
It is a version of Slackware (14.2 and newer)  that can be booted and run directly from a DVD or a USB stick. It is distributed as an ISO image and meant to be a showcase of what Slackware is about. You get the default install, no customizations, but with all the power. You do not have to install Slackware to your harddisk first to experience it first-hand.

Liveslak:
The combination of scripts, bitmaps and configurations to generate the ISO images are called project “liveslak“.

Let me state the reasons I had for starting this “liveslak” project (apart from sheer curiosity):

  1. Provide a Live version of Slackware proper – i.e. show Slackware as it is, but without having to install it. No hiding of kernel messages scrolling across the screen at boot – no custom wallpapers, etcetera. Meant for education and demonstration purposes.
  2. The target should be slackware-current – the bleeding edge. Many people want to know what that looks like but are hesitant to install slackware-current for fear that it breaks stuff and causes productivity loss.
  3. Provide a way to generate a Live ISO with just Slackware packages as the source – fully scripted and deterministic.
  4. Still be able to customize its content – for instance provide stripped-down or minimalist versions of Slackware but also allow for the inclusion of 3rd party packages.
  5. Option to create a bootable USB stick running Slackware Live (which is different from ‘dd’-ing the hybrid ISO to a USB stick!)
  6. Keep It Simple Stupid!

… but I had not anticipated the expansion of scope that can be attributed to the people who have been testing all my Beta versions. They came up with real-life use-cases, worthwhile additions and fixes. My thanks go out to all of you! The “liveslak” is so much more now then I initially conceived. Instead of being just a simple demo-toy it is now usable as a full-blown Live work environment in its own right. I carry a USB stick with a secured Slackware Live on my key chain all the time.

Highlights of Slackware Live Edition

Properly documented

The Slackware Documentation Project contains extensive documentation about “liveslak“, both for users of the Live OS and for people who want to know “how it works”  and want to develop a custom Live OS.
Check it out please, in particular all the boot options for the Live OS.

Good hardware support

The Live OS boots on “good old” BIOS computers but also on modern UEFI hardware (disable secure boot first). The kernel and userland software in the OS is fully up to date and supports modern and older hardware. If your computer is does not support a 64bit Operating System then you can just download the 32bit version of Slackware Live Edition.

Persistence

Slackware Live Edition is persistent if you install its ISO to a USB stick using the “iso2usb.sh” script. Persistence of a Live OS means, the things you change or add (or delete) are stored on the USB medium and will survive a reboot. As opposed to the raw ISO image (burnt to a DVD or ‘dd’-ed to a USB stick) which is a pure Live OS where all your modifications are written to a RAM disk and gone when you reboot.

A feature I consider crucial for a persistent Live OS on a USB stick that you carry around with you in your jacket pocket is… data protection!

Data encryption

How do you protect the stuff you are accumulating in your live user’s homedirectory, such as passwords, confidential documents, GPG and SSH keys etc? You lose the USB stick, someone else may steal it – your sensitive files will be compromised. Therefore the Slackware Live Edition offers you the option to create a LUKS-encrypted container file in the Linux filesystem of the USB stick. The filesystem inside that encrypted container will then be mounted on the /home directory of the Live OS when it boots. The LUKS passphrase you entered when creating the container, will be prompted for during the boot-up of the Live OS. On shutdown, the container will be locked again and a potential thief of your USB stick will be unable to get to the files in the LUKS container (i.e. your homedirectory).

Multiple OS variants or flavors

The “liveslak” scripts are able to generate a variety of Slackware Live ISO flavors: SLACKWARE, XFCE, PLASMA5, MATE, CINNAMON, CUSTOM. The locations where you can download these ISO files are shown in the next paragraph.

  1. By default, “liveslak” creates a 2.6 GB large ISO from scratch that will give you a complete 64bit Slackware-current Live Edition.
  2. The scripts can also create a 700 MB slimmed-down XFCE version with XDM as the graphical login manager which fits on a CDROM medium or a 1 GB USB stick.
  3. A 3.0 GB ISO image of Slackware64-current containing Plasma 5 instead of KDE 4 is also an option. The PLASMA5 variant is spiced up with several other packages I maintain: vlc, libreoffice, calibre, qbittorrent, ffmpeg, chromium, openjdk, veracrypt.
  4. The option to generate a 1.7 GB ISO containing either the Mate or the Cinnamon desktop instead of Slackware’s own KDE 4 could be added courtesy of Willy Sudiarto Raharjo’s repositories.
  5. The “liveslak” scripts allow a large degree of customization so that you can create “your own” variant of a Slackware based Live OS. One example of what’s possible is the Live Edition of Cinelerra CV.

 No custom kernel or 3rd party tools needed

The main script “make_slackware_live.sh” creates an ISO from scratch. The script installs Slackware packages or package sets into compressed “squashfs” modules, configures and optimizes the target filesystem to be run as a Live environment, and then generates an initial ramdisk that will assemble the Live environment when you boot. All that is put into a bootable ISO image file. Thanks to Linux kernel 4.x and the squashfs-tools package added to Slackware 14.2, the process requires no compilation nor does it need non-standard packages to create a Slackware Live Edition (of course, the Plasma, Mate and Cinnamon flavours do require 3rd party packages). The downside is that the ISO has to be created on Slackware 14.2 (older versions of Slackware do not have the proper tools or kernels). It follows that the only Slackware release which is supported as a Live Edition is 14.2 and the “-current” development tree. All future releases will be supported too of course.

Install the Live OS to your hard drive easily

The included program “setup2hd” (all ISOs except the small XFCE variant) is a modified Slackware installer which will guide you through the familiar setup menus and install the content of the Slackware Live Edition to your hard disk. The “setup2hd” program can be run from your X session so that you can keep interacting with the Internet while Slackware installs itself.

setup2hd

Start the builtin PXE server and let the whole LAN run Slackware Live

Load the Live OS into RAM using the “toram” boot parameter and then start “pxeserver” from an X terminal. All computers in your LAN will be able to boot Slackware Live Edition from the network now. Ideal for a hackfest.

pxeserver

Download the ISO images

As stated above, you can choose between several variants of Slackware Live Edition. ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest Slackware-current packages are available.

The ISO images (with MD5 checksum and GPG signature) are available on the master (bear) and its mirror servers. A symlink called “latest” will always point to the latest set of ISO images.

And if you love the bleeding edge, an ISO file for slackware64-current is automatically (re-)generated every time there is an update to the ChangeLog.txt of Slackware-current. You can find this ISO image here:

Download the source

Git repository for the scripts can be found here:

A checkout of the repository can be found here:

Booting the Live OS

When you boot Slackware Live on a BIOS computer, Syslinux will handle the boot and show the following menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Memory test with memtest86+

You can select a keyboard mapping that matches your computer’s. And/or boot Slackware in another language than US English. You will probably want to change the timezone; syslinux allows you to edit the boot commandline by pressing <TAB> because the syslinux bootmenu does not offer you a selection of timezones.

On UEFI computers, GRUB2 handles the boot and it will show a menu similar (and similarly themed) as the Syslinux menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Non-US Timezone selection
  • Memory test with memtest86+

Editing a Grub menu is possible by pressing the ‘e’ key. After making your changes to the boot commandline, press <F10> to boot.

Another difference between Syslinux and Grub menus: in Grub you select keyboard, language and/or timezone and you’ll return to the main menu every time. You still have to select “Start Slackware Live” to boot. In the Syslinux menu, only the keyboard selection menu will return you to (apparently bot not actually) the same main menu. The non-US language selection will boot you into Slackware Live immediately without returning to the main menu. A limitation of syslinux.

liveslak-0.9.0-xfce

 

Things to remember when you boot the ISO

Slackware Live does not log you on automatically! This is a demonstration environment, with the purpose of getting you acquainted with Slackware, remember? Therefore you will first see all these intimidating kernel messages scrolling across the screen while booting the OS. Then you need to login manually.

The Slackware Live Edition comes with two user accounts: user ‘root’ (with password ‘root’) and user ‘live’ (with password ‘live’). My advice is to login as user live and use “su” or “sudo” to get root access.

Note: the “su” and “sudo” commands will ask for the ‘live’ user’s password!

Consult the documentation for assistance with the various boot parameters you can use to tailor the Live OS to your needs. The syslinux boot has help screens behind the F2, F3, F4 and F5 function keys and the grub boot screen has a “help on boot parameters” menu entry.

How to create a persistent USB stick from the ISO?

The ISO can be burnt to a DVD or copied to USB stick using ‘dd’ or just plain ‘cp’, but that will give you a read-only medium because all changes to the Live OS are in fact written to your computer’s RAM and lost when you reboot.

Use the ‘iso2usb.sh‘ script to create a Live OS on the USB device with persistence.

Note: The “iso2usb.sh” script can also be found in “/usr/local/sbin” when you boot Slackware Live Edition.

By default, the changes you make while running Slackware Live will then be preserved across reboots because the OS will write all these changes to the directory “persistence” in the root of the USB device. The script requires an input and an output parameter at a minimum:

# ./iso2usb.sh -i ~/Download/slackware64-live-14.2.iso -o /dev/sdX

… where /dev/sdX is the device name of your USB stick (the actual device, not a partition on the device).

Alternatively you can use a file “persistence.img” in the root of the USB device which will be loop-mounted by the Live OS and changes to the system will be written to the filesystem inside this container file. A feature which should be appreciated by people who want to use a USB stick with a VFAT partition instead of a Linux ext4 partition. The script requires an additional parameter “-P” in this case:

# ./iso2usb.sh -P -i ~/Download/slackware64-live-current.iso -o /dev/sdX

Note that your USB stick will get formatted by the script – erasing all data currently stored on it. The iso2usb.sh script will pause to show you the characteristics of the target device and ask you once more if you really want to continue erasing it. You will not easily destroy your hard drive unless you are really not paying attention!

How to create a LUKS encrypted homedirectory container?

The iso2usb.sh script has a parameter “-c” which takes a size argument. If you want to create a 400 MB encrypted container file to hide your homedirectory in, then you need to specify “-c 400M”. If you want 2.5 GB for your homedirectory, use “-c 2.5G”. If you are not concerned so much with the exact size but want to allocate a percentage of the free space on the stick, then use “-c 40%” to create a LUKS container that uses 40% of the available free space.

Now to put that into an actual example command line which will create a file (its name will be “slhome.img”) using up 50% of the free space on the stick:

# ./iso2usb.sh -i slackware64-live-xfce-current.iso -o /dev/sdX -c 50%

When the script gets to the point where it creates the LUKS container file, it will prompt you for a passphrase which will be used for encrypting and decrypting the container’s data. Right after that, the script will prompt you to enter that passphrase again when the LUKS container is unlocked and the ISO’s /home content is copied into the container.

Help, I messed up my persistent USB stick!

You can still boot a USB stick containing persistence and/or encrypted LUKS homedirectory to a “pristine condition”.

Suppose you screwed up somehow and the USB stick won’t work properly anymore or won’t even boot to the desktop. If this happens, you can still boot the original unmodified Live OS, discarding all your accumulated persistent changes. The unmodified OS should always boot unless your USB stick is physically damaged.

You have two options to solve the levels of brokenness:

  1. Start by adding the boot command parameter “nop” which stands for “no persistence”. The “nop” boot parameter will  cause Slackware Live to ignore your persistent data, as most probably the persistent data store will contain the cause of your issue. Even when passing “nop” to grub or syslinux, Slackware Live will still mount your encrypted LUKS container on the /home directory if you are using that. It is possible that your issue is somewhere in your homedirectory (for instance you might have an issue with configuration files in ~/.local ~/.config or ~/.kde).
  2. If you want to ignore any LUKS container as well as ignoring the persistent storage, and use the /home directory of the original Live OS, an additional parameter “luksvol=” must be added to the boot commandline. Note that there is nothing at the right side of that equal sign! The two parameters together look like “nop luksvol=“.

After logging in to a pristine Slackware Live you can then remount the Linux partition of your USB stick to make it writable:

# mount -o remount,rw /mnt/livemedia

Now that the USB stick’s partition is writable you can either prune the persistence directory “/mnt/livemedia/persistence” (i.e. delete all data in there) and/or fix the content of your LUKS container file “/mnt/livemedia/slhome.img“.

Have fun! Eric

Below, you will find all the comments made by visitors since the original announcement was posted here on the blog.

Comments

Comment from Didier Spaier
Posted: November 20, 2015 at 23:37

Hi Eric,
I can’t wait to DL it and lift the hood to have a look at the engine.

Thanks!

Comment from Ryan P.C. McQuen
Posted: November 20, 2015 at 23:37

The fun won’t stop! Thank you Eric.

Comment from Eduardo
Posted: November 21, 2015 at 00:39

Thank you Eric! I will await until you can offer the Plasma5 version.

Comment from Didier Spaier
Posted: November 21, 2015 at 00:59

Writing this comment from Slackware64-xfce-live in a VM 😉
First feeling: really nice and simple , including the localization.

Just wondering: why Dutch citizens living in Aruba do not have their own locale in the list?.

More seriously., I was a little scared to see only VIM as text editor in the menu, but actually yous ship nano as well.

So the menu needs some polishing, but that’s really a small detail.

Thanks and congrats, Eric!

Comment from alienbob
Posted: November 21, 2015 at 01:06

Didier, nano is not a graphical editor, and gvim is. That is why you find one in the XFCE menu but not the other.
Note that in order to shrink the ISO to 700 MB, lots of programs had to be left out, so the menu is looking a bit sparse. If you want the full monty you’ll have to download the 2.5 GB ISO.
No comment on localization choices, I thought I explained that in the post.

Comment from Didier Spaier
Posted: November 21, 2015 at 01:17

About localization: do not take my remark too seriously Eric, it was a joke. Yes I have read your explanation, and also looked in the ISO to better understand.

Comment from Karl
Posted: November 21, 2015 at 04:09

Can’t wait for it to finish downloading so I can try it. 🙂

I don’t know your definition of “lots of bandwidth”, but I’ve got a mirror server with 100Mbps upstream. Location is http://repo.gsacrd.ab.ca/slackware-live/

Comment from Ed Ender
Posted: November 21, 2015 at 05:50

Excellent job Eric. I have tried both of them and they work great. Can’t wait for the next release.

I have them uploaded to Mega if you would like to use it. The url is: https://mega.nz/#F!uN1W0LrR!cyX3FlyvSfmz4BCbrC62VQ

Comment from Regnad Kcin
Posted: November 21, 2015 at 06:37

I’m going to try this too in a few days. It’s exciting actually.

The persistence of memory on the USB seems to be a crucial element for Daliy use.

Comment from Brent
Posted: November 21, 2015 at 08:10

Thanks for all your hard work! I’m a big fan of Live mediums. Can’t wait to try it out. Downloading it now!

Comment from alienbob
Posted: November 21, 2015 at 10:18

Ed, the Mega link is fine with me. The ISOs are accompanied by GPG signatures (the.asc files) so people can easily check that their Mega download is the genuine stuff.

Comment from alienbob
Posted: November 21, 2015 at 10:19

Regnad Kcin, creating a Live OS to use for your daily work was not one of my goals. Yes, you will get persistency in my next ISO release but that is just a side effect 🙂

Comment from alienbob
Posted: November 21, 2015 at 10:22

Karl, 100 Mbit would be just fine for a mirror server. I was more concerned about your monthly data plan. These ISOs are going to cost you Terabytes of bandwidth per month if your mirror would prove to be a popular one.

Pingback from Slackware Live Edition | Caylak Penguen Blogs
Posted: November 21, 2015 at 12:11

[…] Linux Geliştiricilerinden Eric Hameleers tarafından hazırlanan Slackware Live Sürümü […]

Pingback from Böse 2015-11-21 | Niente stronzate ©
Posted: November 21, 2015 at 12:18

[…] 00:23 RT @mcnalu Bleeding edge Slackware current now has a Live Edition | Alien Pastures – http://alien.slackbook.org/blog/slackware-live-edition/ loweel repeated a notice by […]

Pingback from Links 21/11/2015: Community Appreciation Day, Jolla’s Problems | Techrights
Posted: November 21, 2015 at 12:58

[…] Slackware Live Edition […]

Comment from fabio
Posted: November 21, 2015 at 13:31

2G Ram old notebook. Core i3:
Man! This is fast. Current-live on a stick is as fast as stable installed on disk. No noticeable difference in boot time and KDE startup.Even knowing there is no persistence i went ahead and customized KDE, very easy to forget you are on a live system. Installed flashplayer (youtube played me slayer perfectly). Attempting to install more stuff will freeze the system (no space left on disk, stupidity of mine of course). Samba/NFS shares worked flawlessly (just give them executable permission), transfer rate the same as a installed system. In dolphin file manager the user home is populated by system files and folders, they could be hidden to avoid human error (in case of persistence). Several virtual devices are shown as well. Everything in KDE running smoothly (didn’t noticed any lags). I’m very impressed by the speed and stability of this system. A great showcase of -current and mr Hameleers skills. I never run -current or betas, but after this test i am considering running it on disk. Looking forward to the Plasma 5 version. I know it’s not the main goal, but with persistence it can be easily a production system in your pocket. Thanks mr. Hameleers, your curiosity brought something really special to the community. Great day to be a slackware user folks!!

Comment from araba
Posted: November 21, 2015 at 14:41

Great job!

Thanks Eric Hameleers and all persons of Slackware team.

Comment from Relativ
Posted: November 21, 2015 at 15:41

Is is safe to assume that “64 bit only for now” means that a 32 bit version of the live disc is around the corner?

I am hoping so. Zenwalk has dropped support for 32 bit, leaving quite a few of us out in the cold.

Thanks for all your work Eric – I’m really looking forward to seeing this boot on my 32bit boxen.

rel

Comment from gegechris
Posted: November 21, 2015 at 16:49

Thanks Eric for making the iso for Slackware Live.
I grabbed the Slackware XFCE iso from Mega: thanks to Ed Ender for the upload.
I’m writing this note using Slackware Live!!!
I selected the French language and booting went fine except for the time. It’s 17h47 in Slackware Live whereas it’s actually 16h47 in Paris. Maybe a timezone problem?
date gives me “sam. nov. 21 17:47:15 CET 2015”. So it’s not a summer/winter time issue.

Pingback from 2 – Slackware Live Edition – Exploding Ads
Posted: November 21, 2015 at 17:36

[…] Read more here: http://alien.slackbook.org/blog/slackware-live-edition/ […]

Comment from Gérard Monpontet
Posted: November 21, 2015 at 18:25

kde live iso , work perfectly here Eric,

again a good work, Thanks 😉

Comment from Donnie Pennington
Posted: November 21, 2015 at 18:37

Thanks for this, Eric. I dd’d the iso to usb stick. Boots and runs fine on non-UEFI laptop. On my UEFI desktop I get ‘Welcome to GRUB!” followed by a grub prompt.

Comment from me
Posted: November 21, 2015 at 19:51

Thank you Eric 😀
This makes it easy to have a clean compile environment.
I will use it as an compilation VM.

Comment from me
Posted: November 21, 2015 at 19:57

If it was an torrent the i would seed it with my 100Mbit with no limits in dataplan (i might even upgrade it to 250Mbit since it’s the same price).
When 14.2 is out please make a torrent of the live version so i can seed it as i do with slackware releases.

Comment from Ricardo J. Barberis
Posted: November 21, 2015 at 20:13

+1 to the torrent idea, if it helps sharing our home bandwithd

Comment from Hugo aka hugok
Posted: November 21, 2015 at 20:19

Hi Eric, congratulations for this live edition:)
I see that you don’t include Portugal in your non-us languages, only Brazil… well, the Brazilian speak portuguese but Portuguese of Portugal is the mother language…
Thanks.

Comment from fsLeg
Posted: November 21, 2015 at 21:48

Great work. The system works like a charm under VM.

However, there’s a small problem called UEFI. I don’t really have a spare stick so I usually use the one that already has some data on it. Probably, the only benefit of UEFI booting is that you don’t have to format the stick in some special way, just have a /efi/boot/bootx64.efi file and you’re good to go. This works with almost all distros that support UEFI, including Slackware. But your image doesn’t have /efi directory, so the only way to boot the live system is to dd the image to stick, which, as stated by Donnie Pennington, doesn’t even work.

So I copied contents of the image to my USB stick, upgraded syslinux to 6.03 (don’t know why Slackware still ships 4.06) and used it to boot under my UEFI laptop. It worked fine (there wasn’t cursor-based menu though), until the pre-init script tried to mount the stick’s filesystem. There’s no module for FAT filesystem in the ramdisk, so it’s impossible to boot your image without building my own kernel/modules for yours.

If you don’t want to think much, just use the latest syslinux for the time being to boot Slackware Live under UEFI.

Also, I would love to see your scripts so I could customize the live system for my needs.

Comment from speck
Posted: November 21, 2015 at 21:49

I’m having issues (see image) booting slackware64-live-current.iso, the MD5SUM matches on the iso as well as after dd’ing it to the USB thumb drive. I did not pass any options to the kernel or make any other selections (I just hit enter).

System:
sda – Windows partitions that also contain LILO on the MBR
sdb – Slackware
sdc – USB thumb drive containing Slackware 64 live

http://imgur.com/fbTVXLV

Comment from alienbob
Posted: November 21, 2015 at 22:04

Like I said Hugo, this was just an initial internationalization attempt. Just to see how it works.
For every language I add to the menu, I also need to add the kde-l10n and calligra-l10n packages and that will make the ISO slightly larger.
The slimmed-down XFCE version (700 MB) does have all languages included, so there it would just be a matter of expanding the selection menu. But like I said, I am not too happy with the current implementation because choosing the language will automatically define keyboard and timezone. I would like at least to be able to select a keyboard independently from the language choice.

Comment from Donnie Pennington
Posted: November 21, 2015 at 22:04

I got the same result as speck when booting either of the iso’s dd’d to usb under legacy mode on a UEFI desktop. The same usb’s work fine on a legacy-only laptop.

Comment from Niki Kovacs
Posted: November 21, 2015 at 22:05

Great job, Eric! Thanks a lot! I’m curious about one thing. What was your method for stripping the Xfce Live CD? Did you “manually” go through all the packages, thinking “OK, this I’ll keep, this I have no use for, this depends on that, nothing depends on this so it can go…”? Or was there a more “scientific” approach to it, if I may say so?

Comment from alienbob
Posted: November 21, 2015 at 22:13

gegechris – is your computer’s hardware clock interpreted as local time or UTC? When selecting a language, the Live OS sets /etc/hardwareclock to “localtime” instead of “UTC”. So when your regular OS writes the system time back to the hardware clock as UTC (in rc.6), then the one-hour difference can be explained.

Comment from alienbob
Posted: November 21, 2015 at 22:14

I had considered a torrent, but since these ISOs will probably be short-lived, it did not make sense to start seeding them.

Comment from Didier Spaier
Posted: November 21, 2015 at 22:14

To fsLeg, comments about UEFI:
– Unfortunately, Syslinux 6.03 can boot on UEFI firmware but not off optical media like CDs, so using it would restrict the live media to USB sticks.
– However one year ago I provided installers that use it and can boot on BIOS and UEFI here: http://slint.fr/testing/ but as I said, usage is limited to USB sticks.
– The reason Slackware still ships Syslinux 4.06 (that could be upgraded to 4.07 because of the aforementioned limitation 6.03 wouldn’t add much features, and also still has annoying bugs.

Comment from alienbob
Posted: November 21, 2015 at 22:16

Donnie, fsLeg … I do not have any UEFI computers here, so I can not test. What I did was use the EFI parameters to mkisofs that Slackware also uses (-eltorito-alt-boot -no-emul-boot -eltorito-platform 0xEF -eltorito-boot isolinux/efiboot.img), and hoped that this would just work.
NO idea where the grub came from… unless syslinux’s “efiboot.img” contains an embedded grub.

Comment from speck
Posted: November 21, 2015 at 22:18

Following up Donnie’s post, my system is BIOS only (it does not have UEFI).

Comment from alienbob
Posted: November 21, 2015 at 22:24

Niki, I used my OpenVZ package list as a base. That one is X-less. I called that package list “min”. I then hand-selected a list of packages that would give me a basic X.Org system (i.e. packages from x/ directory). I used tools like sbbdep and a TCL script written by Eric Jan Tromp to find out the missing dependencies, which I added to either the “min” or the “xbase” list depending on how essential I thought that dependency would be.
I releated the process for the xap/ directory to get a “xapbase” list, again this expanded the “min” and “xbase ” package lists because new missing dependencies were found. And finally, another repetition was done for the xfce/ package directory.
All in all, two weeks’ worth of evenings spent on fine-tuning this and a (yet unreleased) 1 GB version sporting KDE4 instead.
However Patrick asked me to move the focus of the Live Edition to a full Slackware instead, so I created that too (which was a lot easier of course since I did not have to hand-pick the packages). I did have to re-write my Live ISO generation script almost from scratch because the initial script was not versatile enough that it could use different package source definitions (custom package lists versus Slackware tagfiles for instance) and also the way that I assembled the various squashfs modules had to change quite drastically.

Comment from gegechris99
Posted: November 21, 2015 at 22:24

Eric – file /etc/hardwareclock of my Slackware 14.1 64bit is set to “localtime” and time is correctly displayed. I booted the Live CD on the same computer and the hour was +1h in advance.

Comment from alienbob
Posted: November 21, 2015 at 22:30

speck, what happens if you allow the USB stick some more time by adding “waitforroot=10” on the boot commandline?

Comment from Niki Kovacs
Posted: November 21, 2015 at 22:40

Thank you very much for that detailed explanation, Eric!

Comment from Niki Kovacs
Posted: November 21, 2015 at 22:47

Here’s an idea for your next beta. Add the VirtualBox Guest Additions module. Doesn’t eat much space, and enables the LiveCD to be tested as a VirtualBox guest directly from the ISO, without burning a CD or writing a USB stick. This is what I did with my own handmade Slackware Live CD, which I used for fiddling with LFS, and it worked great.

Comment from Didier Spaier
Posted: November 21, 2015 at 22:51

Eric, efiboot.img just contains an ESP: /EFI/BOOT/ bootx64.efi but if syslinux 4.x was used (and that shgoulsm be the case as the file seems to be te same as in Slackware64-14.1) this can’t work. As a side not mixing files from different versions of syslinux generally does not work. So yes, for the live CD to be able to boot on UEFI you would need to include the /EFI partition of Slackware-current that ships grub, I think.

You can make limited tests on a VM if you do not have an EFI firmware as VirtualBox VMs at least have one (in the GUI highlight your VM then Configuration System => Motherboard => check “Activate EFI”.

Anyway my laptop does have an hybrid BIOS/EFI firmware, so if you need some testing on a “physical” machine I am eager to help: just ask.

Donnie: GRUB is not in the ISO at all, so maybe you had it already installed?

Comment from speck
Posted: November 21, 2015 at 22:58

Thanks Eric. Adding the “waitforroot=10″ option solved the issue and I’m posting this message from Slackware Live. I’m guessing the issue was caused by my USB stick being too slow.

Comment from alienbob
Posted: November 21, 2015 at 23:02

Relativ, I will probably make sure that the make_slackware_live script works for 32bit, but I am not going to host a 32bit Live ISO. With the sources I will release, it should be possible for anyone to create a custom (i.e. 32bit Slackware) Live ISO image.

Comment from Relativ
Posted: November 22, 2015 at 05:30

Great! I can’t wait to give it a try. Thanks for the reply.

rel

Comment from moesasji
Posted: November 21, 2015 at 23:18

I had the same problem as described by Speck above, i.e. booting the kde live dvd fails because it fails to mount the overlay. This happens on two legacy bios laptops (Toshiba M750) and Lenovo T430.

In both cases adding “waitforroot=10” to the boot-options leads to a successful boot

Comment from Donnie Pennington
Posted: November 21, 2015 at 23:34

Didier Spaier: Yes, grub is installed on the hard drive of this UEFI machine (Fedora).
speck/alienbob: I tried waitforroot=10 option but still got the result speck showed in the image. I suppose I could try a bigger number.

Comment from Donnie Pennington
Posted: November 21, 2015 at 23:43

While waitforroot=10 failed, waitforroot=20 succeeded (legacy mode on UEFI desktop).

Comment from V. T. Eric Laytonq
Posted: November 22, 2015 at 02:48

VERY COOL!

As always, thanks to Eric H. and all the hardworking folks who keep Slackware lean and mean.

And remember…

http://i.imgur.com/7hZ16dc.png

Comment from hughetorrance
Posted: November 22, 2015 at 11:17

Thanks… !

Comment from RW
Posted: November 22, 2015 at 13:53

Thanks, but it would be very nice if there was
a option to copy everything to ram ( copy2ram )

Comment from alienbob
Posted: November 22, 2015 at 14:28

Yeah, wel, RW, for some people coming from SLAX or Porteus that would be nice but having to wait for 2.5 GB being copied from DVD or USB to RAM is quite painful.
So I will not write the code.
Once I have my scripts in a public repository, people can write patches and ask for their inclusion of course.

Comment from RW
Posted: November 22, 2015 at 15:25

Hi Eric,

Oke, i understand………but not for me, who is using
Slackware for 18 years. 🙂

RW

Comment from WLD
Posted: November 22, 2015 at 16:00

Thanks Eric, amazing work and us here are all VERY happy we can dodge that systemd clusterf**k for a while longer! Bravo!

Comment from Paul Genho
Posted: November 22, 2015 at 16:42

Hey Eric, I have a lightly used VM in Dallas Tx which might work as a mirror. Apache and a directory is is set up but I’ve not mirrored before.

Comment from alienbob
Posted: November 22, 2015 at 16:58

Hi Paul, if you write a script to mirror the Live ISOs and then schedule that script to run daily as a cron job, you’re all set.
Script example:

#!/bin/sh
#
# Where does apache look for your slackware-live directory?
LOCALDIR=/home/www/slackware-live
#
# Mirror the remote content:
rsync --delete -rlptD rsync://taper.alienbase.nl/mirrors/slackware-live/ ${LOCALDIR}/
#
# Done!

… then share your mirror URL on this page.

Comment from Paul Genho
Posted: November 22, 2015 at 17:11

http://mirrors.edgeorbis.com/distros/slackware-live/

Comment from Niki Kovacs
Posted: November 22, 2015 at 17:11

Speaking of Slackware Live, I never understood how Slax maintainer Tomas Matejicek succeeded to cram a whole KDE Live distro in 217 MB.

Comment from alienbob
Posted: November 22, 2015 at 17:22

Hi Paul..
That was quick!

It also shows that I already have uploaded the ISO image for the Plasma5 edition… actually I did that yesterday but failed to mention it here.

Comment from alienbob
Posted: November 22, 2015 at 17:27

Niki, if you strip a distro so extremely that it fits in 300 MB whereas the full ISO is 2.5 GB (at lease that is how big mine is) then you understand that a lot was lost along the way. Most programs: gone. Man pages and documentation: gone. No wonder that SLAX users were so active creating and adding new modules – SLAX is a showcase of the Linux-Live scripts but quite constrained in its usefulness in your daily job.
SLAX and Porteus make for an ideal rescue environment though: you have all the core tools, networking and a browser and you copy it to CDROM or a USB stick in no time.

Comment from Paul Genho
Posted: November 22, 2015 at 17:27

Well to be fair I already had it set up.

I didn’t know to keep it synced though so so that was good. I added the script you posted to crontab and it should sync nightly.

Comment from keith
Posted: November 22, 2015 at 17:59

Posting from a live session using the Xfce4 CD image. Thinkpad X61 with rtl based wifi (not intel). 512Mb of RAM and one core switched off in BIOS. external USB drive probably running at USB 1 speed. Quite an extreme test!

As you might expect, very sluggish in graphical session until I turned the swap on – the laptop has slackware current 32bit installed for testing and has a swap partition at /dev/sda1. The old Scientific Linux 5.x live CD used to detect a swap partition and just use it, but I think your decision to leave the local hard drive alone to start with is a good one.

I had to use waitforroot = 20 sec in common with earlier posters – dropped me at a root prompt otherwise.

If anyone steps up to do a 32 bit variant, I’d be delighted to try it out.

Comment from keith
Posted: November 22, 2015 at 18:50

Two cores and 1Gb make a lot of difference (X61, as above).

Xfce4 CD: I have to right click on the network manager icon and edit the connection details to get a wifi connection set up – just selecting a wifi network in the list does not bring up the password box.

mp3 playback just works (don’t underestimate that sort of thing for a demo live CD). Sensible range of applications available – basically everything except an Office package.

gnuplot won’t run from command line:

“gnuplot: error while loading shared libraries: libQtNetwork.so.4: cannot open shared object file: No such file or directory” –could save a few Mb there and perhaps add Abiword?

Perhaps dump Thunderbird in favour of Abiword and Gnumeric? Does anyone use an off-line email client on a live session?

Comment from alienbob
Posted: November 22, 2015 at 19:27

keith, add “swap” to the boot commandline and the Live OS will activate all the swap partitions it finds.
In earlier private Alpha test releases for the coreteam, I had this feature enabled by default, until someone warned me that a swap partition may contain a hibrenated OS dump.
I have not succeeded in identifying a swap partition which contains a hibernation image, so I decided that by default, the Live OS should not automatically enable hard disk swap.

Comment from alienbob
Posted: November 22, 2015 at 19:36

Keith, if gnuplot depends on Qt4 (who’d have thought.. and I missed spotting that dependency) then I should just remove it from the XFCE ISO. Packages like gnumeric and abiword are not part of Slackware, therefore they will not end up being part of this ISO.
Remember that this ISO is meant as a demo environment as far as I am concerned. Real life usage is not the #1 of my goals. So I want to be able to show people that Thunderbird is in Slackware – whether someone will actually use it is irrelevant.
With persistency added, the story changes of course. Then it *does* make sense to have the ability to carry around an IMAP mail client on a Live OS.

Comment from tome
Posted: November 22, 2015 at 21:07

Has anyone trick to boot this (extracted) iso image from hd?

Comment from keith
Posted: November 22, 2015 at 22:11

I’d forgotten that the only office package in stock Slackware is Calligre, so sorry for the noise there. The Gnuplot startup message on stock Slackware includes the line “Terminal type set to ‘qt'”, so I imagine that was a compile time choice made in stock Slackware and I fully take the point that you want the live image to run the same as stock.

ModemManager is installed on the Xfce4 live image, but lacking dependencies libqmi and libmbim so it won’t actually run. Could get rid of that one as well unless you want to be able to demo mobile broadband with dongles (usb_modeswitch isn’t installed either). From within Xfce4, the only odd behaviour is this thing of not being able to start a wifi connection by clicking on the name in the list but having to ‘edit connection’ and type in the password. I’ll try it on an unencrypted coffee shop wifi tomorrow.

Runs much faster off a USB stick – especially Firefox that seems to need to read stuff off the CD-ROM a lot – swap seems to make little difference in the case of Firefox. I still needed the waitforroot=20 boot option when booting from USB stick. I’ll give the persistent version a try when it appears and I take the point about IMAP in that case.

One minor difference from a stock Slackware current installation is what happens in Xfce4 when you become root in a terminal. On stock, the command ‘su -‘ simply asks for the *root* password. On the live session, the command specifically asks for *user* password, i.e. ‘live’.

Best of luck with the project and I appreciate what you are celebrating with its release.

Comment from Istvan
Posted: November 22, 2015 at 22:44

Hello Eric! Thank you for the live distro, I was waiting since ever for slackware as live-dvd/cd 🙂 I was hoping to have the 32bit version also as live (for my PIII PC and Sempron laptop), but if a script like make_slackware_live script will come, I am more then happy to run it! Thank you again.

Comment from alienbob
Posted: November 22, 2015 at 23:01

In any case I will create 32bit and 64bit ISO images for Slackware 14.2 once it is released. Those ISOs will be available via bittorrent as well as being downloadable.

Comment from fsLeg
Posted: November 22, 2015 at 23:58

Suggestion 1: add FAT filesystem support in initrd. It is actually essential in order to have persistence on USB, because dd’ing the image will give you read-only filesystem.

Suggestion 2: add an install option. Live systems (especially the ones that act as a demo of the full system) often allow you to install the system from the live session. It isn’t even necessary to add packages to the image, as the setup program can grab them from the network, or the one can just use another medium as the source of packages.

Comment from alienbob
Posted: November 23, 2015 at 00:10

fsLeg, dd-ing an iso9660 filesystem to USB drive will still give you a iso9660 filesystem, only then on the USB stick. It will not become writable.
You need to create actual partitions on the USB stick and extract the data from the ISO to the USB partition(s).
That is exactly what my iso2usb.sh script (unreleased) does.
By the way, the ISO will be extracted to an ext4 filesystem, not to a FAT filesystem, and extlinux will take the place of isolinux as the bootloader. Works really well.
Same issue as with the ISO remains: I do not know how to make it boot on UEFI systems because I do not own one. So, I will do half the work: create the EFI partition, and then I will depend on the community to make it work.
Next beta will be released after I figure out how I want the language/keyboard selection to function. That will be the moment when the scripts are released as well.

Comment from alienbob
Posted: November 23, 2015 at 00:12

About your second question: there’s too much complexity in writing code to transfer the ISO content to a hard drive. I am not inclined to add that functionality.
It’s what the Slackware installer does much better for you, so that is what you will have to use.

Comment from fsLeg
Posted: November 23, 2015 at 00:26

Eric, that’s what I’m talking about: currently extracting the image to an existing writable USB stick to boot from it later is not possible, dd’ing is the only option to boot from USB.

Ext4? That’s an odd choice for a filesystem on a stick. After all, we are talking about a place for a live system, not a place to install a full one. Why not use your approach from the now official usbimg2disk script? That script just extracts the content of the image to a stick, optionally formatting it to FAT filesystem, and then makes it bootable using syslinux. By the way, I tried this approach with the live image and it worked, the only thing that prevented booting was the lack of a module to support FAT in initrd.

Separate EFI partition? For a USB stick? To me that seems like too much. Using a single FAT partition would be easier.

Comment from fsLeg
Posted: November 23, 2015 at 00:29

I wasn’t talking about installing the squashed live system, I meant add the Slackware installer to an image.

Comment from alienbob
Posted: November 23, 2015 at 00:52

> I wasn’t talking about installing the squashed live system,
>I meant add the Slackware installer to an image.

Actually that sounds like something worth considering.

Comment from alienbob
Posted: November 23, 2015 at 00:57

> Ext4? That’s an odd choice for a filesystem on a stick

Persistency for the overlay filesystem only works when the changes are written to a POSIX compliant filesystem that suppors symbolic and hard links.
I think that some of the other live OS-es which let you install to a FAT partition solve that issue by creating an image file containing an ext4 partition and then loop-mounting that image. It is a limiting solution because what size do you choose for such an image file? I leave the whole empty space of the USB stick to whatever needs it – one thing on the TODO is encrypt part of it for your homedirectory.

I can add the required modules for FAT filesystem support nevertheless – similar to what I do for LUKS USB key support.

Comment from alienbob
Posted: November 23, 2015 at 01:52

I tested the Plasma 5 ISO and it has the plasmashell crash issue which is also reported in the comments section of another blog article.
For now, don’t try to download that ISO, you won’t get far.
I will have to look into this tomorrow evening after work.

Comment from Didier Spaier
Posted: November 23, 2015 at 05:53

fsLeg: as it is a removable device, you _need_ an EFI partition in an USB device because that’s where a compliant firmware is supposed to look for an executable EFI image. This is clearly stated in the specification, see §§ 3.5.1 and 12.3.1. The partition should have a specific file type and be formatted as FAT12, FAT16 or FAT32. What variant of EFI FAT to use is defined by the size of the media. Also, only for a diskette (floppy) drive, a partition is defined to be the entire media.

Comment from fsLeg
Posted: November 23, 2015 at 07:14

Eric, I don’t really have much experience with persistent live systems. I only heard (through unetbootin) that live Ubuntu has persistence option, and the one I actually encountered was Parted Magic, where changes (/etc and /home) were written to a tarball during the shutdown procedure, and this tarball was unpacked to a ramdisk during the boot process. If the overlay system has to be POSIX compliant, I guess your solution is fine. Still, the USB stick won’t really be of any use then except as a host for the live system.

Didier, this is actually only true for hard disks. The things are a bit different for the removable devices. Believe me, I struggled with booting a lot when I bought a laptop a year ago and it was an UEFI one. It took me days to figure out, but you don’t need a special separate partition for a removable device to be bootable under UEFI. A FAT (or ISO9660 in case of optical disks; I don’t remember if UDF is also supported) partition with /efi/boot/bootx64.efi file is just enough to make it bootable. My proof is my USB stick which has two partitions, both FAT: the first one is for files and use on Windows machines; the second one has Slackware installer, for which I just copied contents of http://mirrors.slackware.com/slackware/slackware64-14.1/ to it and made the containing partition bootable in BIOS using syslinux, while the EFI booting part is taken care of by the /EFI directory. And this stick successfully boots wherever there is an option to boot from USB, including UEFI machines, even though I didn’t take any special steps other than copying the /EFI directory.

Comment from Somewhat Reticent
Posted: November 23, 2015 at 08:26

What boot parameter/cheatcode is good for a multiboot setup (many ISOs on one device)?

Is FAT the only file-system well-suited for USB flash sticks? What about USB hard drives? Is your ext4 file-system set up without jounaling, or with trim? Would ext2 work?

Ah, such exciting times!

Comment from Nolre
Posted: November 23, 2015 at 12:57

Hi,
Nice work.
You should put a blanck screen as default screensaver, to limit power usage especially on laptops.

Comment from zux
Posted: November 23, 2015 at 13:04

Hi, thanks for the great images.
Also, on my 2 systems booting from USB worked only after adding waitforoot=10

Pingback from 10 Mejores Distribuciones Linux Para Novatos
Posted: November 23, 2015 at 15:27

[…] (creo que por falta de apoyo económico), pero recientemente leí que alguien lanzó una versión Slackcware Live, algo que me puso contento y trajo un poco de nostalgia informática. Después cambié a Red Hat. […]

Comment from Manfred
Posted: November 23, 2015 at 19:19

Hi Eric,

SPLENDID WORK!!!

Writing this from a persistent live version with (I couldn’t resist) integrated ‘rootcopy’, I’m deeply impressed.

After using waitforroot=5 it is running smooth.

Are there any plans to integrate .sxz loading during runtime?

Regards and keep up your good work,

Manfred

p.s. Tweaking initrd to accept ‘NOLOAD’ boot parameter for .sxz modules atm. 😉

Comment from Didier Spaier
Posted: November 23, 2015 at 19:40

fsLeg:
1) For the record, as far addressing is in concern a USB stick behaves exactly like a hard drive although it be physically and mechanically different.

So conceptually it is exactly that: a removable hard drive.

This is why for instance I use this command to hybrid an DVD ISO image of Slint or Slackware, that allows to dd it and make it bootable on UEFI as well as BIOS:
isohybrid -s 63 -h 80 -u filename.iso
63 is the number of sectors and 80 the number of heads, using a CHS or Cylinders/Heads/Sectors (not LBA32) addressing.
For instance as a Slackware64-14.1 ISO without the source and patches directories has a size of 2423070720 bytes, this gives the number of cylinders:
C=2424843700/63/80/512 so C=939 (C should not be greater than 1024 for very old BIOS ).

2) Re-reading what I wrote and the specification you have a point about ESP or not ESP.

In case of a removable device the spec states:
“If FilePathList[0] points to a device that supports the EFI_SIMPLE_FILE_SYSTEM_PROTOCOL, then the system firmware will attempt to boot from a removable media FilePathList[0] by adding a default file name in the form \EFI\BOOT\BOOT{machine type short-name}.EFI.”

But in case of a non removable device:
“If the device supports the EFI_SIMPLE_FILE_SYSTEM_PROTOCOL layered on an EFI system partition, then the system firmware will attempt to boot from the media by executing a default file name in the form \EFI\BOOT\BOOT{machine type short-name}.EFI.”

So if I understand well the the partition type ef00 (EFI) is not mandatory in the former case, only in the latter, but the path to find the EFI executable image is the same, whether the device be removable or not.

As a side note, the partition types as given by usual tools are rather confusing.
I have an USB stick that contains a Slackware64-14.1 installer written using dd after “isohybrid -u”, and here is what I get for the partition that hosts /EFI/BOOT/bootx64.efi:
_ fdisk: id ef, System EFI (FAT-12/16/32)
_ gdisk using the MBR: Code EF00, Name EFI System
_ gdisk using the GPT: Code 0700, Name IOyrdApeAp (should be Microsoft basic data)

Actually isohybrid with the -u option writes a MBR and a GPT, with for the second partition a GUID of (Microsoft) basic data partition, not a GUID of EFI system partition (a variable efi_system_partition is initialized in isohybrid.c but never used, in Syslinux-4.0.6).

If I understand well (which is doubtful) this partition’s type is set to 0 in the MBR. Maybe that’s why when it takes its information there gdisk reports an EFI system partition.

Anyhow, as expected the computer boots off SYSLINUX in Legacy mode, off GRUB in UEFI mode, so all is well that ends well 😉

Sorry for this too long answer and Eric, if that’s too far off topic, I apologize and we can continue this specific discussion elsewhere, maybe on LQ if need be.

PS The Slackware DVD ISO images are already hybrid but I have built one from a local mirror to insure that I know all the steps taken.

Comment from Didier Spaier
Posted: November 23, 2015 at 19:50

I should have written:
isohybrid -s 63 -h 80 -u
and:
C=2423070720/63/80/512
Sorry for the mistakes.

Comment from Didier Spaier
Posted: November 23, 2015 at 19:54

Well, one of the mistake is not my fault. If filename.iso is surrounded by a “less than” sign on the left and a “greater than” sign on the right, the whole thing disappear…

Comment from Chuck Coffee
Posted: November 23, 2015 at 20:12

Excellent.. have both Live and Live-XFCE and both work on three separate systems here. 1)AMD Phenom X6 -1045T w/8Gb of ram, 2)AMD A10-7700k w/16G ram and 3)Lenovo G770 Laptop (i5 quad) w8G Ram. All run well on both DVD versions.

Comment from alienbob
Posted: November 23, 2015 at 20:47

Manfred, “integrate .sxz loading during runtime” is not possible with overlayfs, this functionality still has to be added.

Comment from mimosa
Posted: November 23, 2015 at 20:51

Great idea! I\’ve tried booting the xfce version on three different machines (a hacked Acer Chromebook, a Zotac Zbox (Celeron N2930), and a quite old bogstandard desktop belonging to a friend) with the same result: it gets as far as unpacking the kernel and beginning the boot process, but appears to be unable to read the filesystem on the USB. When \”init can\’t be found\”, the user is dropped into a shell.

Comment from alienbob
Posted: November 23, 2015 at 20:56

Didier, I don’t mind you writing background information here. If there are parts of the text I have to repair (the lesser than / greater than stuff) let me know the actual intended text.

Comment from alienbob
Posted: November 23, 2015 at 21:08

mimosa, did you try adding a delay? “waitforroot=10” or “rootdelay=10”, either works

Comment from mimosa
Posted: November 23, 2015 at 21:33

alienbob, yes, after posting I scrolled up and saw the suggestion by Manfred to do that. It works. Thank you!

I have also seen the same problem with Slackel Openbox Live 6.0.4, based on current (or rather, a recent current). I bet this fixes it there too.

The full KDE version is really responsive on my Zbox, with 4GB RAM, though both it and the XFCE version boot a bit more slowly than their Salix / Slackel cousins.

Comment from Thoralf
Posted: November 23, 2015 at 22:43

Thanks Eric, much appreaciated.

Comment from Drakeo
Posted: November 24, 2015 at 03:57

I been having fun with this. I remember years ago on the dvd with slack10.2 from linux magazine. there was a modular loading live system on it. I been rebuilding the plasm5 desktop cdrom because the nvidia issue is a work in progress.
That an impressive little intrid.img
Keep up the fun.

Comment from Manfred
Posted: November 24, 2015 at 14:28

Hi Eric,

as I don’t know whether patches get crippled when posted here, please find my recent changes at https://repo.fluxflux.net/slackware-live/241115/ .

Changes:

– ‘nopersistence’ boot option added
– ‘hostname’ option added
– ‘noload’ option for addon modules added
– rootcopy function added
– menu for choosing keymap for bootmenu (be,de,nl atm)

/usr/lib/kbd/keytables/us.kmap integrated to make keytab-lilo working

Remarks:

At times the username label is missing in xdm.

Imho you should think about integrating xpi files for firefox corresponding to the locale chosen during boot.

You should delete all .bashrc files before iso creation 😉

Request: Please integrate mc. :pray:

Regards, Manfred

p.s. All remarks/changes refer to the xfce version

Comment from alienbob
Posted: November 24, 2015 at 14:46

Manfred,

Why don’t you just wait until I release my scripts 🙂

– there already is a “nop” boot option in the init script for “no persistence”…
– I don’t see a reason for setting the hostname in a Live environment. And with persistence enabled, you can easily configure a persistent hostname. You do however have the option to change the hostname from the default “darkstar” when you run the ISO creation script.
– explain the need for a “noload” option please? If there is a good reason to have this, I can be convinced.
– syslinux menu for keyboard selection is already added in my scripts and will be available in a next beta – that keyboard selection will then also be the default keyboard when you select the non-US language. In fact, the “make_slackware_live.sh” script generates all the menu filess on the fly when creating the ISO, because they are many (because of the choices made in submenus).
– I do not see the need for “rootcopy”. Other live distros have all the above, and I do not want to be a Porteus clone. This is intended to become a demo environment, not a work environment.

I will not integrate .XPI files or other downloadables. Those are not part of Slackware and therefore not in my scope for this project.
The full Slackware Live version has Nvidia drivers included as the only compromise to show people how the KDE desktop profits from graphics hardware acceleration.
I can however consider an option where you would have a directory in the ISO or on the persistent USB version where Slackware Live would look for a specific command like “firstrun.sh” and execute that the very first time it boots (which will be “every time” when you boot a non-persistent Live OS).

The .bashrc file is created because of the commands I run in the chroot to configure the Live environment. It’s a good idea to clean that up.

Mc would be a good addition. If gnuplot has to go anyway (because it depends on the qt package which will not be part of the small XFCE ISO) then mc can easily take its place.

Comment from Drakeo
Posted: November 24, 2015 at 17:23

There is a kool video of Plasma5 Slack live. people like it.
As for getting the nvidia to loop and then set it up then try to load it then configure the xorg.conf. it all in fun. but I am only playing with the plasma 5.
better yet extract it on to your drive and boot it. just edit the config. 🙂

Comment from alienbob
Posted: November 24, 2015 at 17:35

Drakeo, so where is that video?

Comment from Manfred
Posted: November 24, 2015 at 18:02

Eric,

>> Why don’t you just wait until I release my scripts?

As I started working on the next FluxFlux release a day before you announced Slackware Live, I’m testing your live version as potential replacement for the tweaked ancient linux-live-scripts from Tomas M. I was using until now.

>> – there already is a “nop” boot option in the init script for “no persistence”

silly me! 🙁

>> – I don’t see a reason for setting the hostname in a Live environment
fair enough!
As I’m using my live media for branded live versions at my clients, I’m using this feature for assimilation to the clients network naming conventions.

>> – explain the need for a “noload” option

During my tests I integrated a .sxz in addons which made the live version stuck at boot.
With the ‘noload’ boot option I’m now able to skip the .sxz from loading.

>> – syslinux menu for keyboard selection is already added in my scripts
Hurray! 😉

>> – I do not see the need for “rootcopy”

The rootcopy function is the only possibility to override settings/files without being forced to create/integrate a .sxz module or to recreate the whole ISO.
For example: by simply addings /usr/lib/kbd/keytables/us.map in rootcopy I made keytab-lilo work.

>> ..I do not want to be a Porteus clone.
[rambling mode on]
You wouldn’t be – Slax, Porteus, Salix, Zenwalk, Wolvix, Goblinx or FluxFlux/Slack2go are/were all based on the linux-live-script set from Tomas. M, created at times of kernel 2.6.20.
[rambling mode off]

>> This is intended to become a demo environment, not a work environment.

Your intention is respected but the/your users will use it as work environment and penetrate you for an installer as they do/did with every live cd.

That’s it for today – I’m working on integrating httpfs module loading now … 😉 😉

KEEP UP YOUR SPLENDID WORK!!!

Manfred

Comment from Ferenc
Posted: November 24, 2015 at 21:12

probably this is the video Drakeo was referring to: https://youtu.be/Y2wL4W5Vzjs

Comment from alienbob
Posted: November 24, 2015 at 23:02

Manfred, how would you use the “noload” option on the commandline? An example would be good.
I understand that people will clone my scripts and make something different from it – that is fine and I encourage it. I will also accept good proposals to make the framework more generic and extensible as long as such modifications are not interfering with my own goals.

Comment from slackb0t
Posted: November 25, 2015 at 00:39

I couldn’t get the xfce version to boot on my new Thinkpad gen3. I tried legacy bios but still no go… not that I would expect it to at this point. Just providing feedback. I am very excited about this live cd. I have wanted to try slax for a while but it isn’t really slackware. This will be exactly what I want at some point. Awesome work.

Comment from alienbob
Posted: November 25, 2015 at 00:52

slackb0t – any errors?

Comment from slackb0t
Posted: November 25, 2015 at 01:18

No errors… when I hit f12 and go to the ‘boot options’ I choose ‘usb stick’ then it reboots instantly as if I hit ctrl alt del

Nothing useful… sorry.

I have the option of using UEFI, Both UEFI or legacy BIOS, or BIOS only. Tried all 3 and it did the same thing each time.

Comment from Regnad Kcin
Posted: November 25, 2015 at 06:51

Bob, the Daliy use and “crucial” was a play on Persistence of Memory, as in Salvador Dali. All my clocks are going soft on me now.

Comment from izzle121
Posted: November 25, 2015 at 09:31

Awesome work on this AlienBob! I tried all three iso’s out yesterday in a QEMU VM and they worked wonderfully.
Thanks for all the hard work you and the team put into Slackware!

Comment from ikke
Posted: November 25, 2015 at 11:21

Thank you very much. Very glad there is another Slackbased LiveCD available.

Did a frugal install of the xfce iso. Had to add ‘lang=us’ as a bootcode. Other bootcodes available?

Other question : how did you make your modules? Would like to add a module containing ruby an g++eg.

Allow me to use the iso not only as ‘a demo environment’ but also as ‘a work environment.’

Once more : thank you very much! Such a LiveISO is very much needed

Comment from slackb0t
Posted: November 25, 2015 at 13:14

Update: I managed to get to the usb to boot and got the following error:
“ls: /mnt/media/liveslak/system/*.sxz: No such file or directory
overlayfs: unrecognized mount option “lowerdir=” or missing value
mount: mounting overlay on /mnt/overlay failed: invalid argument
/boot/initrd_4.1.13.gz: Switching to ‘us’ keyboard
/init: line 393: can’t create /mnt/overlay/etc/rc.d/rc.keymap: nonexistent dir…
chmod: /mnt/overlay/etc/rc.d/rc.keymap: No such file…
ERROR: No /sbin/init found on rootdev…”

I managed to find a post that said to fix this error use “rootdelay=10”

It worked and everything booted fine.

Comment from alienbob
Posted: November 25, 2015 at 14:12

The tip to use “rootdelay=10″ or “waitforroot=10″ is all over this post… it should be hard to miss.
In the next Beta ISO, it will even be shown as a hint during boot if the init script can not create the overlay.

Comment from Manfred
Posted: November 25, 2015 at 14:52

Eric,

>> how would you use … “noload” …?

Please find my patch for init below or at https://repo.fluxflux.net/slackware-live/251115/initrd.fluxflux.diff

Both ‘noload’ and ‘load’ option from linux-live-scripts are integrated and adapted to your logic.

To be able to use the ‘load’ option I’ve renamed graphics folder to optional.
In my local test version I’ve stored a mc module in addons/0080-mc-x86_64.sxz and a fluxbox module in optional/0081-fluxbox-x86_64.sxz.

Thus I’m able to skip loading mc by appending noload=mc and load fluxbox by appending load=fluxbox to the kernel commandline.
If one wants to load/noload more than one module, the parameters have to be separated by a colon or semi-colon.
eg. (no)load=mc,nano,gedit.
If you integrate nvidia drivers, simply store them in optional and append load=nvidia to the kernel commandline.

Hint: modules loaded with ‘load’ must not be marked as deleted in persistence.

>> there already is a “nop” boot option …

But it is not working, because if ‘nop’ is used OVLWORK variable will be not declared 😉
You’ll find a fix in my patch.

Another (minor) glitch:
Booting from usb media I forgot to remove the cd. As both are labeled ‘LIVESLAK’ booting failes.

initrd.fluxflux.diff:

— initrd-alienbob/init 2015-11-20 22:18:06.000000000 +0100
+++ initrd-fluxflux/init 2015-11-25 14:39:37.437049651 +0100
@@ -39,9 +39,6 @@
# By default, let the media determine if we can write persistent changes:
VIRGIN=0

-# The NVIDIA variable determins if binary Nvidia drivers will be installed:
-NVIDIA=0

INITRD=$(cat /initrd-name)
WAIT=$(cat /wait-for-root)
KEYMAP=$(cat /keymap)
@@ -66,16 +63,16 @@
RUNLEVEL=$ARG
;;
init=*)
– INIT=$(echo $ARG | cut -f2 -d=)
+ INIT=${ARG#*=}
;;
kbd=*)
– KEYMAP=$(echo $ARG | cut -f2 -d=)
+ KEYMAP=${ARG#*=}
;;
livepw=*)
– LIVEPW=$(echo $ARG | cut -f2 -d=)
+ LIVEPW=${ARG#*=}
;;
locale=*)
– LOCALE=$(echo $ARG | cut -f2 -d=)
+ LOCALE=${ARG#*=}
;;
nop)
VIRGIN=1
@@ -90,13 +87,25 @@
USE_SWAP=1
;;
rootpw=*)
– ROOTPW=$(echo $ARG | cut -f2 -d=)
+ ROOTPW=${ARG#*=}
;;
tz=*)
– TZ=$(echo $ARG | cut -f2 -d=)
+ TZ=${ARG#*=}
;;
waitforroot=*|rootdelay=*)
– WAIT=$(echo $ARG | cut -f2 -d=)
+ WAIT=${ARG#*=}
+ ;;
+ hostname=*)
+ NEWHOSTNAME=${ARG#*=}
+ ;;
+ load=*)
+ LOAD=$(echo ${ARG#*=} | sed -r ‘s/\*/.\*/g’ | sed -r ‘s/,|;/|/g’)
+ ;;
+ noload=*)
+ NOLOAD=$(echo ${ARG#*=} | sed -r ‘s/\*/.\*/g’ | sed -r ‘s/,|;/|/g’)
+ ;;
+ zram)
+ ZRAM=$ARG
;;
esac
done
@@ -127,6 +136,15 @@
fi
fi

+# Initialize zram on request
+if [ ! -z $ZRAM ]; then
+(echo $(($(cat /proc/meminfo | grep MemTotal | sed ‘s/[a-zA-Z: ]//g’) /4 *3072)) \
+> /sys/block/zram0/disksize # 3/4 of available RAM
+mkswap /dev/zram0 1>/dev/null 2>/dev/null
+swapon /dev/zram0 -p 32767 1>/dev/null 2>/dev/null
+echo 100 > /proc/sys/vm/swappiness) &
+fi
+
# Sometimes the devices need extra time to be available.
# A root filesystem on USB is a good example of that.
sleep $WAIT
@@ -236,22 +254,26 @@
if ls /mnt/media/liveslak/addons/*.sxz 1>/dev/null 2>/dev/null ; then
for MODLOC in /mnt/media/liveslak/addons/*.sxz ; do
MODBASE=”$(basename $MODLOC .sxz)”
– mkdir /mnt/live/modules/${MODBASE}
– mount -t squashfs -o loop ${MODLOC} /mnt/live/modules/${MODBASE}
– RODIRS=”:/mnt/live/modules/${MODBASE}${RODIRS}”
+ if [ “$NOLOAD” -a “$(echo $MODBASE | egrep -i “$NOLOAD”)” ]; then
+ echo “$MODBASE” >> /mnt/live/modules/skipped
+ else
+ mkdir /mnt/live/modules/${MODBASE}
+ mount -t squashfs -o loop ${MODLOC} /mnt/live/modules/${MODBASE}
+ RODIRS=”:/mnt/live/modules/${MODBASE}${RODIRS}”
+ fi
done
fi

– # And finally any explicitly requested graphics drivers:
– if [ $NVIDIA -eq 1 ]; then
– if ls /mnt/media/liveslak/graphics/*nvidia*.sxz 1>/dev/null 2>/dev/null ; then
– for MODLOC in /mnt/media/liveslak/graphics/*nvidia*.sxz ; do
– MODBASE=”$(basename $MODLOC .sxz)”
– mkdir /mnt/live/modules/${MODBASE}
– mount -t squashfs -o loop ${MODLOC} /mnt/live/modules/${MODBASE}
– RODIRS=”:/mnt/live/modules/${MODBASE}${RODIRS}”
– done
– fi
+ # And finally any explicitly requested optional components:
+ if ls /mnt/media/liveslak/optional/*.sxz 1>/dev/null 2>/dev/null ; then
+ for MODLOC in /mnt/media/liveslak/optional/*.sxz ; do
+ MODBASE=”$(basename $MODLOC .sxz)”
+ if [ “$LOAD” -a “$(echo $MODBASE | egrep -i “$LOAD”)” ]; then
+ mkdir /mnt/live/modules/${MODBASE}
+ mount -t squashfs -o loop ${MODLOC} /mnt/live/modules/${MODBASE}
+ RODIRS=”:/mnt/live/modules/${MODBASE}${RODIRS}”
+ fi
+ done
fi

# Get rid of the starting colon:
@@ -264,6 +286,7 @@
# Create the mount point for the writable upper directory of the overlay:
# Assume the default to be a readonly media – we write to RAM:
UPPERDIR=/mnt/live/changes
+ OVLWORK=/mnt/live/.ovlwork
if [ “$VIRGIN” = “0” ]; then
if [ “LIVEFS” != “iso9660” -a -d /mnt/media/persistence ]; then
# Looks OK, but we need to remount the media in order to write to it:
@@ -275,9 +298,6 @@
UPPERDIR=/mnt/media/persistence
OVLWORK=/mnt/media/.ovlwork
fi
– else
– UPPERDIR=/mnt/live/changes
– OVLWORK=/mnt/live/.ovlwork
fi
fi
# Create the writable upper directory, plus the workdir which is required
@@ -361,6 +381,16 @@
echo “root:${ROOTPW}” | chpasswd –root /mnt/overlay
fi

+ if [ ! -z “$NEWHOSTNAME” ]; then
+ # User entered a custom hostname on the boot commandline:
+ for FILE in etc/HOSTNAME etc/NetworkManager/NetworkManager.conf; do
+ sed -i “s/darkstar.*/$NEWHOSTNAME/g” /mnt/overlay/$FILE
+ done
+ fi
+
+ # Copy contents of rootcopy directory to overlay
+ cp -af /mnt/media/liveslak/rootcopy/* /mnt/overlay 2>/dev/null # may be empty
+
# ——————————————————————— #
# SLACKWARE LIVE – !END! #
# ——————————————————————— #

Comment from philanc
Posted: November 25, 2015 at 22:45

Very cool!!

It might be useful to include some support for a USB keyboard within the initrd for rescue mode and for the repair shell if init is not found.

Adding modules hid. usbhid, hid_generic should be enough (– maybe I am dead wrong on this, I didn’t test it! 🙂

Many thanks again for the great idea of a *regular* Slackware live CD.

Comment from cwizardone
Posted: November 26, 2015 at 15:58

Downloaded the plasma image and burned it to a DVD.
Fired it up and it took 8 minutes and 45 seconds to get to an error:
Executable: plasma shell PID: 1370
signal: segmentation fault (11).

Comment from cwizardone
Posted: November 26, 2015 at 16:15

Fished the DVD out of the trash and started it up inside of VirtualBox. So far it has now been 11+ minutes, one core is running at 99% and I’m looking at a blank KDE5 wallpaper, gawd that is ugly, with a “chrome like” gizmo in the upper left corner.
Back in the trash it goes. What a waste of band width and a disk.

Comment from alienbob
Posted: November 26, 2015 at 16:22

cwizardone considering your past issues with Plasma 5 why did you even bother.

By the way, the ISO starts up and ends with a proper Plasma 5 desktop session in QEMU, within a minute or two max… I’d have to time it if you want to know exactly.

But that is the unreleased Plasma 5 ISO I have here locally. As stated here 3 days ago by me: “I tested the Plasma 5 ISO and it has the plasmashell crash issue which is also reported in the comments section of another blog article. For now, don’t try to download that ISO, you won’t get far.”

Comment from kjhambrick
Posted: November 26, 2015 at 22:17

Eric —

This is completely awesome.

Burning a Thumb Drive NOW !

Thank You !

— jhg

Comment from izzle121
Posted: November 27, 2015 at 02:02

AlienBob, will future versions include a means to install from the Live DVD?

Comment from Thoralf
Posted: November 27, 2015 at 02:05

The Plasma5 version does not work for me. After logging in, Plasma crashes and the whole computer hangs.

The XFCE version works well.

Comment from alienbob
Posted: November 27, 2015 at 10:18

Thoralf, like I said a couple of times: the Plasma 5 ISO is broken and will not work for many (although it seems to work for some).
An updated ISO should become available in or after the weekend: Beta 2.
Lots of fixes and release of the scripts too.

Comment from Manfred
Posted: November 27, 2015 at 10:23

>> … release of the scripts …

HURRAY!!! 🙂

Comment from alienbob
Posted: November 27, 2015 at 11:04

izzle121, I have not decided yet. I was not among my goals for this Live Edition, and there is a reason for not wanting this: the boot process of the Live Edition has been tweaked to skip certain initializations that are necessary when you often install new software on your computer. When you install the content of the Live ISO to a computer, you will have a Slackware installation that is non-standard. And that is something I will not do.

What I might still do, is add another menu entry to start the regular Slackware installer, and then you would be able to install Slackware from a network repository.

Comment from relop7
Posted: November 27, 2015 at 17:10

I tried to boot my Lenovo laptop with the new Live cd and all I got was the “Welcome to GRUB” message.

Comment from alienbob
Posted: November 27, 2015 at 17:21

relop7 – that happens because my ISO is not yet capable of booting on UEFI hardware unless you select legacy boot option.
My Beta 2 (around the corner, I am generating the ISOS tonight and will test them before releasing) will still not have UEFI boot capability.
However, since I will release the build scripts together with Beta 2, I hope and expect that someone will write patches to fix that omission.

Comment from serafin
Posted: November 27, 2015 at 17:23

[quote]Fished the DVD out of the trash and started it up inside of VirtualBox. So far it has now been 11+ minutes, one core is running at 99% and I’m looking at a blank KDE5 wallpaper, gawd that is ugly, with a “chrome like” gizmo in the upper left corner.
Back in the trash it goes. What a waste of band width and a disk[/quote]
What a enthusiastic!

Pingback from Slackware Linux « 14.2 » presque béta : deux ans d’attente pour « ça » ? | SVNET Libre
Posted: November 27, 2015 at 18:16

[…] y a une grosse semaine – au moment où je rédige cet article, le 26 novembre 2015 – un des grands noms du monde Slackware, Eric Hameleers, propose une version live de la Slackware […]

Comment from kingbeowulf
Posted: November 27, 2015 at 20:37

Eric,
Apologies if I missed seeing this error mentioned.

Previously, I just “shut down” via the power switch. Yesterday (and just noticed today), on the full KDE iso (not plasma) dd’ed to USB, when selecting “shutdown” from the menu, all goes well until:


/etc/rc.d/rc.0: line 215: /sbin/halt: input/output error
Turning off swap.
Unmounting local filesystems:
/dev/shm/ has been successfully unmounted.
/ has been successfully unmounted.
Remounting root filesystem read-only:
mount: none mounted on /.
/etc/rc.d/rc.0: line 296: /sbin/poweroff: input/output error
INIT: no more processes left in this runlevel

This is on the Dell Latitude E7440 mentioned on G+ Slackware Community.

Thanks for all the effort.
-Ed

Comment from alienbob
Posted: November 27, 2015 at 21:55

Someone who does not grasp what Slackware is actually about and why he had to wait almost twoi years for what he views as no progress at all… and then goes on telling his audience that the Slackware old-timers are laughing at the idea that a Slackware newbie would be able to remove a critical package like glibc because Slackware does not offer safety nets???
I saw this kind of criticism coming the moment Redhat aliased the rm command to “rm -i”… Linux for the dumb.

https://www.svnet.fr/slackware-linux-14-2-presque-beta-deux-ans-dattente-pour-ca/

Comment from Didier Spaier
Posted: November 27, 2015 at 22:11

Don’t worry Eric. This guy is not a skilled writer and I doubt that many people read his ramblings (I didn’t until I read your post and won’t bookmark this blog), let alone consider him as a guru 😉

Comment from alienbob
Posted: November 27, 2015 at 22:21

Well too bad for him 😉
Loading up a brand new Plasma 5 Live on my USB stick for some experimenting.

Comment from philanc
Posted: November 27, 2015 at 22:35

Eric,

I suggested to include some support for a USB keyboard within the initrd for rescue mode. if you are interested, adding modules hid. usbhid, hid_generic *and uhci_hcd* should be enough (it adds ~ 90KB to the initrd).

I added uhci_hcd to the list because many cheap or old USB keyboards are still USBv1

Congrats for Live Slackware!

Comment from alienbob
Posted: November 27, 2015 at 23:12

philanc:

This should be suffucient for your needs:

KMODS=${KMODS:-“squashfs:overlay:loop:xhci-pci:ehci-pci:uhci_hcd:usb-storage:hid:usbhid:hid_generic:jbd:mbcache:ext3:ext4:isofs:fat:nls_cp437:nls_iso8859-1:msdos:vfat”}

Comment from philanc
Posted: November 28, 2015 at 00:16

> KMODS=${KMODS:-“squashfs:overlay:. . .

I understand this is part of your generation script, where the default kernel modules in the initrd are defined. If yes, this is just perfect.
Thanks.

Pingback from Alien Pastures » Slackware Live Edition – Beta 2
Posted: November 28, 2015 at 02:12

[…] Slackware Live Edition […]

Comment from oki-doki
Posted: November 29, 2015 at 15:07

what about gnome?

Comment from alienbob
Posted: November 29, 2015 at 15:10

What about it? I don’t care about Gnome so you will not see ISO images created by me that contain it.
However, you can grab the scripts yourself and create a Slackware Live which does contain Gnome; similar to how I did it for Plasma 5.

Comment from Ray Vine
Posted: December 3, 2015 at 11:43

I use extlinux as my boot manager and like to add a live .iso image to that to try out, rather than burning to a USB stick or CD/DVD, or using qemu which is too slow. I downloaded the XFCE-based image and couldn\’t do that out-of-the-box so came up with a patch for the init script which might be of interest to others.

1] Extract kernel and initrd.img from the .iso image
2] Unpack initrd.img:
zcat initrd.img |cpio -i
3] apply init patch
4] re-pack initrd:
find . -print | cpio -o -H newc 2>/dev/null | gzip -f -9 > [new]initrd.img
5] add kernel, [new]initrd.img, and command line parameters to boot manager

For example:
extlinux.conf:
————-
LABEL sl
MENU LABEL Alien Sl64 Live
TEXT HELP
Beta 1 original .iso
booted from extracted kernel
and modified initrd.img
ENDTEXT
KERNEL generic
INITRD initrd.img # the [new] one
# \’from=\’ is any full path, with or without the leading \’/\’, from the root of any partition – currently only ext3/4 modules are included in initrd.img for LiveSlak
APPEND from=/path/to/slackware64-live-xfce-current.iso load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0

init patch:
———-
1] If no LiveMedia has been found by this point, run this patch
2] Check for \’from=\’ in the command line
3] Wait for USB devices to register – especially slow from a USB HDD
4] Mount each device in turn to look for .iso image
5] If/when found, loop mount it to /mnt/media
6] .. init script continues

I\’ve left in some comments which I\’ve used to show (me) what\’s happening in the script and I\’ve posted two screen captures from a qemu simulation I\’ve done -> http://rayv.16mb.com/init-patch-booting.html

— init–original 2015-11-25 15:08:53.000000000 +0000
+++ init–new 2015-12-03 09:36:25.000000000 +0000
@@ -209,6 +209,77 @@
sleep 1
done

+
+# With acknowledgement to the Slax init scripts
+# if no LiveMedia has been found by this stage
+if [ -z \”$LIVEMEDIA\” ]
+then
+# Has the .iso image been included in the kernel command line – look for \’from=\’
+FROM=$(cat /proc/cmdline | sed \’s| |\\n |g\’ | grep \”from=\” | cut -d = -f 2)
+# if it\’s there ..
+ if [[ $FROM ]]
+ then
+# wait for all device nodes to be created – using blkid on a USB HDD can cause timing errors
+# compare the device(s) found by the kernel to those generated (by (e)udev?)
+ DEVDMSG=$(dmesg|grep -A 15 \”Direct-Access\”|grep -o \”sd[a-z]\”|sort -u -k 1.3d)
+ DEVUUID=$(ls -al /dev/disk/by-uuid | grep -o sd[a-z]| sort -u -k 1.3d)
+# add counter so that if a USB device is removed, or added, or unformatted,
+# – creating conditions that will never be satisfied – then the wait will be terminated
+ COUNT=\”0\”
+ until [ \”$DEVDMSG\” == \”$DEVUUID\” ]
+ do
+ DEVUUID=$(ls -al /dev/disk/by-uuid | grep -o sd[a-z]| sort -u -k 1.3d)
+ echo \”waiting for USB drive(s) ..\”
+ COUNT=$((COUNT+1))
+#### remove me ###########
+# show counter working
+echo \”count = \”$COUNT
+##########################
+# exit if count reaches 11 [= 20+ seconds]
+ [[ $COUNT -eq 11 ]] && echo \” ## giving up ## \” && break
+ sleep 2
+ done 2>/dev/null
+#### remove me ###########
+# show list of devices to be searched for .iso image
+echo -e \”\33[33;1m$(ls -al /dev/disk/by-uuid | grep -o /sd[a-z][0-9]*$ | sort -k 1.5n | sed \’s|/|/dev/|g\’)\33[0m\”
+##########################
+ echo
+ echo \”Looking for .iso image ..\”
+# create device mount point
+ mkdir -p /mnt/isotest
+# list formatted devices [including non-partitioned] and put them in numerical order
+ ls -al /dev/disk/by-uuid | grep -o /sd[a-z][0-9]*$ | sort -k 1.5n | sed \’s|/|/dev/|g\’ | while read DEVICE
+ do
+# mount each device in turn if its filesystem is supported
+ DEVFS=$(blkid $DEVICE | sed \’s| |\\n_|g\’ | grep _TYPE | cut -d \’\”\’ -f 2)
+ if [[ $(cat /proc/filesystems|grep -o $DEVFS) ]]
+ then
+ echo \” looking in $DEVICE\”
+ mount -t $DEVFS -r $DEVICE /mnt/isotest 2>/dev/null
+# look for the .iso image ..
+ ISiso=$(ls -1 /mnt/isotest/$FROM 2>/dev/null)
+ if [[ $ISiso ]]
+ then
+ mount -o loop $ISiso /mnt/media 2>/dev/null
+ echo \” .. found in\” $DEVICE
+ echo
+# exit this \’while\’ loop as the .iso has been found and mounted
+ break
+ fi
+ else
+ echo $DEVICE\” – filesystem is \”$DEVFS\” – cannot search for .iso image in this filesystem\”
+ fi
+# .. if not found, unmount device for next cycle of the loop
+ umount /mnt/isotest 2>/dev/null
+ done
+ else
+ echo \”.. no \’from=\’ option in command line\”
+ fi
+LIVEFS=$(cat /proc/mounts | grep /mnt/media | cut -d \” \” -f 3)
+LIVEMEDIA=$(losetup | grep /mnt/isotest | rev | cut -d \”/\” -f 1 | rev)
+fi
+
+
if [ ! -z \”$LIVEMEDIA\” ]; then
echo \”${INITRD}: Live media found at ${LIVEMEDIA}.\”
else

Comment from kjh
Posted: December 8, 2015 at 22:45

WooHoo !

I’ve been tied up with work ( doing a System to print Obamacare Forms for Employees — ick ).

Moreover, my new Laptop has Qualcomm Ethernet and Wireless which don’t work at all yetso I’ve procrastinated with installing Slackware-Current … sigh …

Anyhow, I plugged in a cheap USB Wireless Adapter , switched over to BIOS boot and started up Plasma 5 via syslinix.

NetworkManager saw the Wireless and let me sign on immediately !

Posting from the new Laptop !

Not so hesitant to blow away WinDOS 10 now that I can get online to figure out the Killer N1535 Wireless and E2200 Ethernet …

THANK YOU ERIC !

— kjh

Comment from alienbob
Posted: December 8, 2015 at 23:08

kjh – Slackware-current should support that Killer N1535 wireless card out of the box, as far as I know.

Comment from kjh
Posted: December 10, 2015 at 16:53

Thanks Eric.

It looks like it should but neither the N1535 nor the E2200 are available.

here’s lspci:

root@darkstar:~# lspci
00:00.0 Host bridge: Intel Corporation Sky Lake Host Bridge/DRAM Registers (rev 07)
00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 07)
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31)
00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31)
00:17.0 SATA controller: Intel Corporation Device a102 (rev 31)
00:1b.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Root Port #17 (rev f1)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #1 (rev f1)
00:1c.6 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #7 (rev f1)
00:1c.7 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #8 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #9 (rev f1)
00:1d.4 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #13 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-H PMC (rev 31)
00:1f.3 Audio device: Intel Corporation Sunrise Point-H HD Audio (rev 31)
00:1f.4 SMBus: Intel Corporation Sunrise Point-H SMBus (rev 31)
01:00.0 VGA compatible controller: NVIDIA Corporation GM204M [GeForce GTX 970M] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GM204 High Definition Audio Controller (rev a1)
02:00.0 SATA controller: Samsung Electronics Co Ltd Device a801 (rev 01)
3c:00.0 Ethernet controller: Qualcomm Atheros Device e0a1 (rev 10)
3d:00.0 SD Host controller: Realtek Semiconductor Co., Ltd. Device 5250 (rev 01)
3e:00.0 SATA controller: Samsung Electronics Co Ltd Device a801 (rev 01)
3f:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)

Here’s lsmod …

root@darkstar:~# lsmod |grep ath
ath10k_pci 29082 0
ath10k_core 194198 1 ath10k_pci
ath 19282 1 ath10k_core
mac80211 552915 1 ath10k_core
cfg80211 443477 3 ath,mac80211,ath10k_core

but here is dmesg |grep ath:

root@darkstar:~# dmesg |grep ath
[ 4.623086] md: multipath personality registered for level -4
[ 18.684972] ath10k_pci 0000:3f:00.0: pci irq msi-x interrupts 8 irq_mode 0 reset_mode 0
[ 18.830814] ath10k_pci 0000:3f:00.0: Direct firmware load for ath10k/cal-pci-0000:3f:00.0.bin failed with error -2
[ 18.955135] ath10k_pci 0000:3f:00.0: otp calibration failed: 3
[ 18.955310] ath10k_pci 0000:3f:00.0: failed to run otp: -22
[ 18.955484] ath10k_pci 0000:3f:00.0: could not init core (-22)
[ 18.955685] ath10k_pci 0000:3f:00.0: could not probe fw (-22)

and here is ifconfig -a

root@darkstar:~# ifconfig -a
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 0 (Local Loopback)
RX packets 200 bytes 12000 (11.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 200 bytes 12000 (11.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163 mtu 1500
inet 192.168.1.112 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 2602:306:bd1f:c8c0:221:2fff:fe33:e5be prefixlen 64 scopeid 0x0
inet6 fe80::221:2fff:fe33:e5be prefixlen 64 scopeid 0x20
ether 00:21:2f:33:e5:be txqueuelen 1000 (Ethernet)
RX packets 539838 bytes 261619043 (249.4 MiB)
RX errors 0 dropped 6575 overruns 0 frame 0
TX packets 32482 bytes 6272889 (5.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

The wlan0 is the USB Adapter I plugged in to get online.

Other users reported issues with the N1535 … some had to recompile the kernel, others have been able to get it going with a simple depmod arg …

Will work on it after I install Slackware Current this weekend

Thanks again !

— kjh

p.s. I just noticed that I posted this under the wrong Article !

I meant to post under the Beta + Persistence article … oh well …

Comment from alienbob
Posted: December 10, 2015 at 22:04

Looking at dmesg, it is the firmware which is giving you issues. There’s several firmware binaries for your wireless chip in slackware-current’s kernel-firmware package; all under “lib/firmware/ath10k/QCA6174/”.

Check out https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1383184/comments/115 for a story on how to nick a working firmware file out of the Windows driver.

Comment from kjhambrick
Posted: December 11, 2015 at 11:51

Woo Hoo !

Yes, I had already cut-n-pasted that thread in my todo-try-this directory.

Your analysis of my dmesg output moves that one to the top of my list !

Thanks again Eric. I will let you know next week when I can get at it.

— kjh

Comment from kjhambrick
Posted: December 11, 2015 at 14:23

p.s. I forgot to add that the 2nd answer at the site below did work to activate eth0 ( a QualComm e2400 on the same killer wireless N1535 PCI Card ):

modprobe alx
echo 1969 e0a1 > /sys/bus/pci/drivers/alx/new_id

I’ll need to rebuild the alx module for the new device id to make it permanent.

I’ll write all this up for linuxquestions.com when it’s all done.

Thanks again Eric.

— kjh

http://askubuntu.com/questions/670347/is-there-any-way-to-install-atheros-e2400-drivers

Comment from James
Posted: December 13, 2015 at 03:45

I haven’t tried the Full Monty yet but XFCE Live works fine. I’m pleased to see that even the generic 4x kernel has no issues with my box. My only problem with the XFCE build is I’m bitten by nVidia HDMI hda Intel bug so no lovely audio from my Elsa Juli@. It isn’t a huge issue even if it means a wasted CD (I’ll never use it as a real system without sound) but I do wonder why the choice is made to support that bug which is for hardware only generally useful for HTPC. Anyway it is solvable by rebuilding and/or persistence so I’m still very grateful and looking forward to the full build. I hope it’s OK that I’ve “advertised” the launch of Slackware Live on the OverClockers.Net fortum in the Linux section. It has already gotten good feedback and that place is all but married to Arch! 🙂

Comment from alienbob
Posted: December 13, 2015 at 12:51

Hi James,

I don’t know what you mean by “I do wonder why the choice is made to support that bug which is for hardware only generally useful for HTPC”?
I make no choices here, the Live ISO you get is a default software configuration.
If I have to add something to make your sound work without recompiling any of the Slackware packages, just tell me what it is, so that you do not have to add it to the persistence directory and/or waste a CDROM.
The Beta is meant to resolve as many issues as possible before the launch of Slackware 14.2 so I can provide an adequately working Live Edition of it.
It’s OK to advertise the Live Edition anywhere of course! You just need to realize that there was a second article after the one you commented to. I think I will add a link to the second article.

Pingback from Alien Pastures » Beta3 of Slackware Live Edition is available
Posted: December 24, 2015 at 23:09

[…] do another public update of my “liveslak” scripts for the Slackware Live Edition. The previous two articles about the Live OS generated quite some feedback and I think I was able to address a […]

Pingback from Alien Pastures » Slackware Live Edition, updated
Posted: January 24, 2016 at 00:52

[…] scripts for the Slackware Live Edition. Check out my previous articles about Beta1 Beta2 and Beta3 releases for these scripts, they contain a lot of background about the reasons […]

Comment from Darin
Posted: January 24, 2016 at 10:30

I might suggest adding a script during boot to detect the Nvidia and ATI cards. I already have it wrote if you need it but it is for Slackware 11. The basic script works fine but for each card I have it going to another script to follow the proper setup for the xorg.conf file. If you would like to look at my scripts I can send them to you so you can follow what is going on and adapt it to these liveslak scripts.

Comment from Darin
Posted: January 26, 2016 at 09:07

Beta 4 issues I have ran into: Nvidia does not work on nforce motherboards with a gtx550. Easy fix by adding geforce and nvidia to the detection script. On log out of live user, you cannot log back into the root account. I will retest these issues again with a fresh iso download. I also just used the dd command onto a 1GB flash drive so if there is an issue this might be it rather than setting up a persistent partition.

Comment from Darin
Posted: January 27, 2016 at 12:26

Seems as I though I had a bad write to the USB or something. I am not having the log out issues now with a new iso and 3 burns to be sure it was not a bug. Have you thought about a script like linux-live has to build modules for additional packages. I am not sure if this may be a bug but while running live for several hours testing as well as rebuilding some packages to use in a live environment, while copying over files to my normal partition, I got a NFS stale entry when trying to delete from my normal install. Fixed with the fsck but still something that might be looked at. I also am not getting the same partitions shown on the root account as I do the live account and sometimes randomly unmounting them between log outs of users.

Comment from alienbob
Posted: January 27, 2016 at 13:07

Darin, the script “makemod” is copied to “/usr/local/sbin/” in the Live ISO.
The script accepts either a Slackware package or else a directory as input and converts that into a .sxz module.

# ./makemod
— Usage:
makemod <packagename|directory> modulename.sxz

Comment from Darin
Posted: February 2, 2016 at 22:16

I ran into another issue which is pretty big. I made custom packages for Chrome with my settings and plugins. On the doinst.sh I added chown -R live:users /home/live/.config/google-chrome and chmod -R 777 (yes I know but testing) /home/live/.config/google-chrome. This breaks the xsession with not being able to log out and not being able to deactivate the screensaver. Basically I was just trying to see if I could get away with building a settings package to install with the additional programs I prefer running from my USB. I am just reporting some bugs from testing and running and thanks alienbob for letting me know where that script was.

Comment from alienbob
Posted: February 2, 2016 at 22:32

I fail to see how a “chmod -R 777 /home/live/.config/google-chrome” could break stuff like that. Are you sure you did not run that “chmod -R 777” on some other location?
Anyway, I do not believe that this is a bug I should address – it’s your own private screw-up.

Comment from Darin
Posted: February 3, 2016 at 01:41

I’m sure but you may be right as it might be a XFCE issue. I will try to isolate it as I also have openjdk being installed as well as a crystal white cursors and mousepad along with it’s dependency. I tested all the packages alone and each installed individual and worked without issues. Right now the way I am getting my personal settings for google chrome is copying over /.config/google-chrome I have saved on another partition. This approach seems to work fine without any of the issues I stated prior.

Comment from alienbob
Posted: February 3, 2016 at 09:39

Darin, I think you need to inspect that package you created for Chrome and look at your filesystem after you’ve installed it. Its installation may have modified higher-up directories if you made a logical error or a typo somewhere.
Not being able to logout or de-activate the screensaver means you messed up something outside of that ~live/.config/google-chrome/ directory.

Comment from Jack Carpenter
Posted: February 5, 2016 at 05:45

How many parts are there going to be? Right now there 4 parts.

Comment from alienbob
Posted: February 5, 2016 at 10:29

Jack I do not understand your question…

Comment from Jack Carpenter
Posted: February 5, 2016 at 20:04

How many more parts is there going to be for Slackware Live Edition? Right now there 4 parts

Comment from Jack Carpenter
Posted: February 5, 2016 at 20:09

In Slackware Live Edition when finish can you supply or make a pdf file for download? I would like to have a hard copy and a list of current files you need to create it. I’m all most 68 and mind is slipping.

Comment from Didier Spaier
Posted: February 5, 2016 at 20:09

@Jack Carpenter: just repeating the question doesn’t help understand it. Could you please tell us what you mean by a “part”? Or better; list the 4 parts you are speaking of.

Comment from Jack Carpenter
Posted: February 5, 2016 at 20:49

All right you started with Slackware Live Edition then you have beta 2, beta3 and beta4 to me that 4 parts.

How many more beta are there going to be?

Hope that is going help or is that same as before.

Comment from Didier Spaier
Posted: February 5, 2016 at 21:01

Now I understand. Just one more question: why does it matter to you? I ask because in my opinion the only important concern is the end result, not the number of intermediary steps to get there.

Comment from Jack Carpenter
Posted: February 5, 2016 at 21:10

Maybe more I read the I understand how to do it. I’ll keep using what I have. I wanted to see if I could do it. Don’t worry I won’t be back.

Comment from Didier Spaier
Posted: February 5, 2016 at 21:14

Well, that’s alienbob’s blog but as far as I am in concern you are welcome here. I just wanted to know what you want to achieve, so that maybe we can help you.

PS I am 67, so you are not _that_ old 😉

Comment from Jack Carpenter
Posted: February 5, 2016 at 21:41

I just want something to do then watch TV. And I do like Slackware over all the other distro.

If you don’t know, just say you don’t know.

What I wanted to achieve, I wanted to learn how to build a Live distro and more info the better I should get I hope.

Like said in few post back is I like to have a Hard Copy to read.

I have 4 years longer then any men in my family. I will 68 on Feb 9.

Comment from alienbob
Posted: February 5, 2016 at 22:01

Jack, there are no “four parts” here. There are four Beta releases until now (and Beta 5 will come this weekend hopefully). Each release is a product all by itself, you do not need the previous releases. The most recent release will usually be what you need.

You are talking about PDF hardcopies of these “parts” which makes me think that perhaps you mean, how many blog articles are going to be written after the four already published? The articles I wrote until now each have some unique pieces of information which could make it somewhat harder to understand – but remember, these releases are called “Beta” because I am still developing the scripts, and you will see an all-in-one documentation when I release my 1.0 version of the liveslak scripts.
I am writing pieces of this README document when I have time, soI will get there.
In the meantime, use the print function of your browser to create PDF files of these articles in my blog.
And do not hesitate to ask when something is not clear. This blog is interactive.

Comment from Jack Carpenter
Posted: February 5, 2016 at 22:24

alienbob do you know or about when we will see an all-in-one documentation? What I mean is could it be up to a year from now or longer?

Comment from alienbob
Posted: February 5, 2016 at 22:29

I intend to have a 1.0 release ready when Slackware 14.2 gets its release. But probably sooner than that.
WIth the upcoming Beta 5 I think I have added all that I really need to be in the Live Edition. The documentation should be my focus for the release after that, and perhaps I will stamp that 1.0 if the Live OS is stable and without showstoppers.
Think weeks.

Comment from Jack Carpenter
Posted: February 5, 2016 at 22:49

I downloading slackware64-live-mate-current.iso right now. I will test it and get back. Can it be install on a USB to try?

Comment from Jack Carpenter
Posted: February 6, 2016 at 00:55

Well I did it I burn a DVD with slackware64-live-mate-current.iso.

My question is how can I remove the programs I don’t want?

Or will I have to create a new DVD with the programs I want?

What like it to do is save my Data when I shut down or power off.

If I have any problem I will report them here if you don’t mind.

Comment from alienbob
Posted: February 6, 2016 at 01:35

Jack, my version of Slackware Live is not meant to give you the opportunity to remove programs. It is meant to demo Slackware.
If you want to remove individual packages, you’ll have to have a very good understanding of how my scripts work because you will have to re-write the make_slackware_live.sh script in a non-trivial manner.

If you want to save your data when you shutdown, I hope you realize that a DVD medium is not going to be of much help… the only way to save your data, command history or changes is to create a USB version of my Slackware Live Edition, because what you want is what’s called “persistence” (retain your changes across reboots) and only the USB version offers that feature.

Comment from Jack Carpenter
Posted: February 6, 2016 at 01:58

Can I create USB version with slackware64-live-mate-current.iso?

And use the ‘iso2usb.sh‘ script to create a Live OS on the USB?

How big of USB will need to have? I have a 8gb, 16gb or 32gb and I have all 3 and like to use the 32gb if I can.

Comment from alienbob
Posted: February 6, 2016 at 02:08

You should indeed use the ‘iso2usb.sh’ script with the ISO as the input parameter (-i) and the device file for your USB stick as the output parameter (-o).
Any USB stick with a larger capacity than the size of the ISO plus 100 MB (for the UEFI partition) will be OK. So, any of your 3 USB sticks will be OK.

Comment from Jack Carpenter
Posted: February 6, 2016 at 02:37

So if I use the USB 32gb thumb drive it will use the whole 32gb as 1 parttiion?

The format on the USB thumb drive can it be ext4 ext3 as 1 partition cause the USB thumb drive with fat32 only use a 4gb partition.

Comment from alienbob
Posted: February 6, 2016 at 02:47

Jack, if you want such detail I suggest you re-read my blog posts and then read the scripts.
Otherwise, just run “./iso2usb.sh -h” to see an overview of its parameters plus example.
The script will _wipe_ your USB stick and then create 3 new partitions, copy the ISO content to the 2nd and 3rd partitions (EFI and BIOS boot files, plus the actual Live modules) and that’s it. NO further interaction needed.
The 3rd partition will be the big partition, spanning almost the complete USB stick, and it will be ext4-formatted.

Comment from Jack Carpenter
Posted: February 6, 2016 at 02:55

Thank you Alien Bob for your help. I will go with the USB 3.0 32gb thumb drive.

With it running off of a DVD rom it running real fast. The USB will much better.

Pingback from Alien Pastures » Slackware Live Edition – on it’s way to 1.0?
Posted: February 6, 2016 at 23:21

[…] out my previous articles about Beta1 Beta2 Beta3 and Beta4 releases for these scripts, they contain a lot of background about the […]

Comment from JWSmythe
Posted: February 21, 2016 at 08:24

FYI, there’s another mirror of the site files here:

http://mirror.cgicoders.com/slackware-live/

It’s a fast line. Technically GigE, but over something like 10Mb/s @ 95th percentile, we have to pay more.

This one is sitting at One Wilshire in Los Angeles. It should be fast for anyone in the US and countries connected to the West coast of the US.

Pingback from 10 Mejores Distribuciones Linux Para Novatos | Capacity Academy Blog
Posted: February 22, 2016 at 19:58

[…] (creo que por falta de apoyo económico), pero recientemente leí que alguien lanzó una versión Slackcware Live, algo que me puso contento y trajo un poco de nostalgia informática. Después cambié a Red Hat. […]

Comment from SelfProgrammed
Posted: March 1, 2016 at 21:29

I have used Slackware since 1996, there-abouts. Thanks for the distro.
Problem: It will not book on the machine I wanted it for, the error message is that it can not run 64 bit. This will be true for 6 of the 8 machines here, that I wanted to use a bootable Linux CD upon.
Problem2: Memory sizes are 32M, 180M, 900M. Not everyone has Gigabyte sized memories. But with Linux I never use over 200M and still never use Swap, even running Gimp.

Comment from alienbob
Posted: March 1, 2016 at 22:45

SelfProgrammed, I did not try creating a 32-bit version of the Live ISO, but someone did and his patches have already been applied to the source scripts. It should be possible.
I do not think anything recent will run in 32 MB of RAM, perhaps not even in 180 MB of RAM. If you stick with old releases of Slackware, those old machines should be able to run it.
IN 900 MB of RAM you should be able to run XFCE, KDE4 and of course just the console. My Asus eeepc 1000H has 1 GB of RAM and runs KDE4 without real issues (it’s slower than modern hardware of course but it is perfectly manageable).

Comment from HadrianKross
Posted: April 12, 2016 at 22:41

Don’t really care about KDE (Plasma 5)…

How about lxde and compiz?

Comment from alienbob
Posted: April 12, 2016 at 22:56

Everyone has his or her preferences.
I do not care for compiz but it is part of Slackware so I suppose you can use it with other window managers if you do not like KDE.
LXDE is no more, it evolved into LXQT which is based on Qt5 like Plasma 5. I might provide a Live variant for LXQT sometime, but currently it is not on my TODO.

Comment from ikke
Posted: April 13, 2016 at 13:13

"I might provide a Live variant for LXQT sometime"

Nice to read. Am interested in Slackware and LXQT. Should be a nice combination.

Thank you.

Pingback from Alien Pastures » Slackware Live Edition Beta 8
Posted: April 20, 2016 at 15:24

[…] will soon update the original blog article (http://alien.slackbook.org/blog/slackware-live-edition/) because that is what most sites are linking to. The information in there is not reflecting the […]

Comment from grand142
Posted: May 11, 2016 at 04:21

Wow, nice. i will try now

Pingback from Alien Pastures » Stable 1.0.0 release of liveslak
Posted: May 19, 2016 at 16:18

[…] weekend I will “re-write” the original blog post on Slackware Live because it is the page that has had the biggest hit rate for the past months. […]

Comment from waem
Posted: May 25, 2016 at 14:01

Hi,

I am typing this message from Slackware Live on the purism laptop. It works like a charm.

Comment from alienbob
Posted: May 27, 2016 at 00:41

FYI, the complete article has been rewritten to reflect the current state of affairs (stable featureful version available). The original post has not been overwritten; I have given it a new place in http://alien.slackbook.org/blog/slackware-live-edition-original-article/

Comment from Speccyfighter
Posted: May 28, 2016 at 21:19

Sorry, my english is very bad

slackware-live-current.iso
kde4 session
audio stream not playing in amarok

$ LANG=C amarok –debug

$ amarok: BEGIN: void Playlist::PrettyListView::trackActivated(const QModelIndex&)
amarok: BEGIN: void Playlist::Actions::play(const QModelIndex&)
amarok: BEGIN: void Playlist::Actions::play(quint64, bool)
amarok: BEGIN: void EngineController::play(Meta::TrackPtr, uint, bool)
amarok: BEGIN: void EngineController::stop(bool, bool)
amarok: END__: void EngineController::stop(bool, bool) [Took: 0s]
amarok: [EngineController] play: bounded is QObject(0x0) current “????? (http://fr1.1mix.co.uk:8016)”
amarok: [EngineController] Just a normal, boring track… 😛
amarok: BEGIN: void EngineController::playUrl(const KUrl&, uint, bool)
amarok: [EngineController] URL: KUrl(“http://fr1.1mix.co.uk:8016”) “http://fr1.1mix.co.uk:8016”
amarok: [EngineController] Offset: 0
amarok: END__: void EngineController::playUrl(const KUrl&, uint, bool) [Took: 0.003s]
amarok: END__: void EngineController::play(Meta::TrackPtr, uint, bool) [Took: 0.003s]
amarok: END__: void Playlist::Actions::play(quint64, bool) [Took: 0.003s]
amarok: END__: void Playlist::Actions::play(const QModelIndex&) [Took: 0.003s]
amarok: END__: void Playlist::PrettyListView::trackActivated(const QModelIndex&) [Took: 0.003s]
amarok: [EngineController] slotTrackLengthChanged( -1 )
amarok: BEGIN: void ProgressWidget::redrawBookmarks(const QString*)
amarok: END__: void ProgressWidget::redrawBookmarks(const QString*) [Took: 0s]
amarok: MPRIS2: Queueing up a PropertiesChanged signal
amarok: [EngineController] slotStateChanged from Phonon::LoadingState to Phonon::StoppedState
sh: kreadconfig5: command not found
sh: kreadconfig5: command not found

Comment from alienbob
Posted: May 28, 2016 at 22:47

Interesting. That error about kreadconfig5 seems to come from xdg-settings but that script will only invoke kreadconfig5 if it determines that you are running KDE5:
if [ x”${KDE_SESSION_VERSION}” = x”5″ ]; then …
However on KDE4 that variable KDE_SESSION_VERSION has a value of “4”.
I just checked, the same happens here in KDE4 on Slackware Live when I try to play an internet URL.
I do not have a “real” computer running Slackware-current and KDE4 so I can not repeat this test. I am using Plasma5 here and Amarok plays an Internet URL just fine.

Pingback from Alien Pastures » Updated ISOs for Slackware Live Edition
Posted: May 29, 2016 at 23:55

[…] alienbob on Slackware Live Edition […]

Comment from mg
Posted: June 6, 2016 at 04:23

Found it:
The Slackware Live Edition comes with two user accounts: user ‘root’ (with password ‘root’) and user ‘live’ (with password ‘live’). My advice is to login as user live and use “su” or “sudo” to get root access.

Comment from Andres
Posted: June 8, 2016 at 03:16

Hi Eric,
I try to use the “iso2usb.sh” script, but it gives me an error that i need the iso-info package.
I’m in a Kubuntu distro right now for work, and want to try the persistence with the plasma version of liveslack. The system has the “isoinfo” tool installed, but not the “iso-info” and can’t find it to install it. The question is, the “iso-info” that is referred in the script is a typo for “isoinfo” or i must have “iso-info” installed?

Thanks for the awesome work!
Regards.
Andres.

Comment from alienbob
Posted: June 8, 2016 at 11:50

Hi Andres

The “isoinfo” is part of the “cdrtools” package, whereas “iso-info” is part of “libcdio”. Slackware has both so I picked the one that gives nicer output. Both work however. And apparently other distros have isoinfo but not iso-info…
So I will make a change to the iso2usb.sh script and use isoinfo in future.
In the meantime, you can do one of three things:
(1) find and install the Ubuntu package containing “iso-info”
(2) as root, make a symbolic link “/bin/iso-info” that points to your “isoinfo” binary,
(3) edit the iso2usb script and change the word “iso-info” to “isoinfo” everywhere. Then on the line that starts with:
VERSION=$(isoinfo ${SLISO}
add two parameters so that the start of that line looks like:
VERSION=$(isoinfo -d -i ${SLISO}

Next update of liveslak will have that last option implemented: http://bear.alienbase.nl/cgit/liveslak/commit/?id=8d3aef31b97ff8c1db1b397ba59b47db18832d7c

Comment from Andres
Posted: June 8, 2016 at 14:50

Thanks Erick, I was thinking in do the third option, so i’ll try it, but I’ll try to install the right package too.
Later I’ll tell you how it goes.

Comment from Andres
Posted: June 12, 2016 at 01:02

Hello Erick,
I changed the iso-info references in the script, and a few other more to match the location of some tools in the kubuntu machine (like mount, umount, gptmbr.bin, etc).
Installation goes well, but the usb do not boot with error “failed to load COM32 file vesamenu.c32” or something like that.
Do you know where the error is?
I’ll try again later.

Regards.

Comment from Didier Spaier
Posted: June 12, 2016 at 04:38

@Andres:
check that the file vesamenu.c32 be in /boot/sylinux in the ISO.

It should have been copied from /usr/share/syslinux/vesamenu.c32.

Comment from alienbob
Posted: June 12, 2016 at 09:54

Looks like Kubuntu has all these files in different locations. Can you tell me Andres what you had to do to make it work (other file locations)? Where is the file “vesamenu.c32” located on your computer?

Edit: unfortunately Ubuntu uses different file locations. According to http://packages.ubuntu.com/search?mode=exactfilename&suite=quantal&section=all&arch=any&keywords=vesamenu.c32&searchon=contents it is “/usr/lib/syslinux/vesamenu.c32” in Precise and Quantal but “/usr/lib/syslinux/modules/bios/vesamenu.c32” in Wily.

Comment from Didier Spaier
Posted: June 12, 2016 at 11:24

Also it is safer to use all syslinux files at exactly the same version. For instance this applies to isolinux.bin and vesalinux.c32 (more generally to all .c32 files). In case of problem using the official binaries shipped in the same source tarball is recommended.

Comment from OlekA
Posted: June 13, 2016 at 14:26

I tried to boot IBM Lenovo machines :T420 and X220 using 16GB freshly built pendrive using ./iso2usb.sh script, but nothing happened.
I got only return to F12 boot option, where a choice of boot disks is given.
I tried also with -w 15 option, no luck as above.

Comment from alienbob
Posted: June 13, 2016 at 15:23

OlekA if two computers were unable to boot from that USB drive then it is likely that there’s something with the USB stick or with the files installed onto it.
I can boot a USB Live pendrive on my T450 and on my T400. If I hit “select boot option” during startup I see my USB stick listed as a selectable option. Do your laptops have Secure Boot enabled? Because in that case it is not going to work.

When creating the USB stick, what was the commandline you used and was there anything peculiar in the script’s output?

Comment from Andres
Posted: June 13, 2016 at 16:30

About the kubuntu, yes it’s a mess of locations. I have kubuntu 16.04.
The vesamenu.c32 file was in /usr/lib/SYSLINUX directory, also gptmbr.ini.
mount and umount are in /bin/ not in /sbin/.
I think it cover all the changes.
I tried using dd but it also fails to boot. I’ll change the USB drive and download again the ISO.
Regards!

Comment from OlekA
Posted: June 13, 2016 at 21:40

I must admit that a Xubuntu 15.04 live stick boots well on my X220.
Also a slackware usb-installer (66MB) boots well.
In my bios setup there’s no strict “Secure Boot” option anywhere.

This is a complete output of the script:

bash-4.3# ./iso2usb.sh -i slackware64-live-current.iso -o /dev/sdb
#
# We are going to format this device (erase all data) – ‘/dev/sdb’:
# Vendor : Kingston
# Model : DataTraveler 2.0
# Size : 14766 MB
#
# FDISK OUTPUT:
# GPT fdisk (gdisk) version 1.0.0
#
# Partition table scan:
# MBR: protective
# BSD: not present
# APM: not present
# GPT: present
#
# Found valid GPT with protective MBR; using GPT.
# Disk /dev/sdb: 30240768 sectors, 14.4 GiB
# Logical sector size: 512 bytes
# Disk identifier (GUID):XXXXXXXXXXXXXXX
# Partition table holds up to 128 entries
# First usable sector is 34, last usable sector is 30240734
# Partitions will be aligned on 2048-sector boundaries
# Total free space is 2014 sectors (1007.0 KiB)
#
# Number Start (sector) End (sector) Size Code Name
# 1 2048 4095 1024.0 KiB EF02 BIOS Boot Partition
# 2 4096 208895 100.0 MiB EF00 EFI System Partition
# 3 208896 30240734 14.3 GiB 8300 Slackware Linux

*** ***
*** If this is the wrong drive, then press CONTROL-C now! ***
*** ***

Or press ENTER to continue:
1+0 records in
1+0 records out
512 bytes copied, 0.037531 s, 13.6 kB/s
Found valid GPT with corrupt MBR; using GPT and will write new
protective MBR on save.
The operation has completed successfully.
Setting name!
partNum is 0
REALLY setting name!
Setting name!
partNum is 1
REALLY setting name!
Setting name!
partNum is 2
REALLY setting name!
The operation has completed successfully.
The operation has completed successfully.
Disk /dev/sdb: 30240768 sectors, 14.4 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 30240734
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02 BIOS Boot Partition
2 4096 208895 100.0 MiB EF00 EFI System Partition
3 208896 30240734 14.3 GiB 8300 Slackware Linux
3:2:1 (legacy BIOS bootable)
mkfs.fat 3.0.28 (2015-05-16)
mkfs.fat 3.0.28 (2015-05-16)
mke2fs 1.43 (17-May-2016)
/dev/sdb3 contains a ext4 file system labelled ‘LIVESLAK’
last mounted on /mnt/alienusb.WwKyrc on Mon Jun 13 11:53:10 2016
Creating filesystem with 3753979 4k blocks and 940240 inodes
Filesystem UUID: f1f9339b-4b16-41be-ae45-512ebfcbfe09
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

tune2fs 1.43 (17-May-2016)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
mount: /dev/loop1 is write-protected, mounting read-only
— Copying files from ISO to USB… takes some time.
2,728,822,449 100% 3.15MB/s 0:13:47 (xfr#80, to-chk=0/89)
— Making the USB drive ‘/dev/sdb’ bootable using extlinux…
/mnt/alienusb.mCbLWW/boot/extlinux is device /dev/sdb3
— Cleaning up the staging area…
bash-4.3#

Comment from giovanni
Posted: June 17, 2016 at 13:51

Hi Eric,
Tank you for this amazing work.
I’ve Just installed a peristent slackware mate on a 16gb usb stick. I’ve tried to install slapt get from jaos site, but the tgz don’t install. Installpkg reports that “tar archive is corrupt (error code 2)”. Anyway gzip and tar program work becouse I’m able to unpack the tgz manually. Can you help me?

Comment from alienbob
Posted: June 17, 2016 at 14:10

giovanni,

As a test I downloaded http://software.jaos.org/slackpacks/14.2-x86_64/slapt-get/slapt-get-0.10.2s-x86_64-1.tgz to a Slackware Live (ISO boot without persistence). Installing that package using “installpkg” went OK, no errors. I tested this with the small XFCE ISO and also with the MATE ISO.
Perhaps a corrupted installation? A bad USB stick?

Comment from giovanni
Posted: June 17, 2016 at 16:30

Hi, Thank you for the fast reply! I resolved, but there is still something strange, I try to explane maybe is interesting. As internet connection I use a blackberry passport whit a 4g speed and i connect slackare with a WiFi always throught the blackberry. When i download the jaos tgz throught the blackberry and I try to install IT, also moving the tgz on the HD or the usb stick everithing goes right. When i try to download the tgz trought the slackware firefox the tgz is corrupted. No idea… but I like to test this things…

Comment from Didier Spaier
Posted: June 17, 2016 at 18:33

@giovanni: in Firefox, type about:config in the address bar, discard the warning, then check the value of the parameter “network.http.accept-encoding”. The default is “gzip,deflate” to help serving gzipped web pages thus saving some bandwith, but a side effect is that it deflates content even in cases it shouldn’t. To avoid that, you could change the setting but then you won’t get some gzipped web pages displayed. So, just avoid using Firefox to download gzipped files but use a dedicated ftp client like wget, lftp, whatever.

Ref:
http://kb.mozillazine.org/Network.http.accept-encoding
http://www.linuxquestions.org/questions/slackware-14/%5Bannounce%5D-eudev-for-slackware-14-1-is-available-for-testing-purposes-4175505218/page2.html#post5174868

Comment from giovanni
Posted: June 17, 2016 at 20:24

You are right. It’s exacly that the problem, Thankyou very much.

Comment from giovanni
Posted: June 17, 2016 at 21:03

Hallo, another question. I’ve localized the live distribution using the boot menu. that doesn’t affect properly x11 programs. Anyway I’ve configured X11 keyboard with

” cp /usr/share/X11/xorg.conf.d/90-keyboard-layout.conf /etc/X11/xorg.conf.d ” and editing the file.
Is there a way to set the x11 localization according with the boot choice? thanks

Comment from alienbob
Posted: June 17, 2016 at 21:19

giovanni if you do not tell me what you had to change in that file, I can not help you.

Comment from Didier Spaier
Posted: June 17, 2016 at 22:03

If I understand well Giovanni would like that X parameters XkbLayout, XkbVariant and XkbOptions be automatically set according to the kernel keymap chosen (the opposite conversion is easier, that’s what Debian do).
A way that often (but not always) work to do that is is to just feed a table:
keymap|layout|variant|options

This is done in Salix by the utility keyboardsetup shipped in the package salixtools and in Slint with a slightly different table.

For Italian the conversion is trivial, not so for other language like Greek that need the ability to toggle between US and Greek layouts. However that help users, who can anyway tune the settings after installation.

Comment from alienbob
Posted: June 17, 2016 at 22:45

OK. Giovanni, you can specify X keyboard and variant using the “xkb” boot parameter. For italian I did not get any feedback about incorrect X keyboard configuration when selecting Italian language so nothing was added to the ‘languages‘ file of liveslak.
The line for the italian configuration looks like this:


#code:name:kbd:tz:locale:xkb
it:italiano:it:Europe/Rome:it_IT.utf8:

I.e. no custom X keyboard configuration.

Comment from giovanni
Posted: June 17, 2016 at 22:53

Ok, sorry for the delay. The main problem is that the @ in not in the right position on the keyboard. I resolved as I told you modifing the 90-keyboard-layout.conf file. Thanks.

Comment from alienbob
Posted: June 17, 2016 at 23:02

giovanni I know you edited “90-keyboard-layout.conf” but you still have not told me what exactly you changed in there.
If you use the “xkb” boot parameter then a file “/etc/X11/xorg.conf.d/30-keyboard.conf” is created with the X keyboard configuration (layout,variant) you specified and additionally the XkbOptions are set to “grp:alt_shift_toggle,grp_led:scroll,compose:ralt”.

It’s as simple as this: give me more info and I can give a better answer.

Comment from giovanni
Posted: June 17, 2016 at 23:09

yes, sorry. I’ve just added
Option “XkbLayout” “it”
and everything work fine now. I understud your explanation, thank you very much.

Comment from Rodney
Posted: June 18, 2016 at 01:40

Hello alienbob,

I came here to congratulation, as a coder, not a system code yet, hope one day enjoy the efforts and help Slackware environment, as I appreciate all your, and Patrick strength to do this for love, as we can see.

I hope see some day, an improvement in slackware.com site, using some new technologies, like angular and foundation, and html5, css3 and javascript.

My dream is see the Slackware screaming that is not dead, and it is still alive, and very alive, open the arms and embrace everyone back. I know, is wanna so much, but we can see the respect that you have with everybody.

Who knows, when we you and Patrick, feel comfortable, announces a new release, with this live capability, and with new desktops like the amazing, Plasma, Mate, and Cinnamon.

You know when Slackware move any things, and breath, all Gnu/Linux stop, and pain attention the old father.

The 21th Century, the modern days, have hope, and is awaiting for you.

Maybe to you and Patrick this can be nothing, but to those, like me, we win the day, and the rest of days, when our favourite Linux Distribution, shows that is very alive, and who knows, prepare to grow, and conquer, what wanna be yours again, and embraced by Slackware.

Yeah I know, talks about Slackware is speak a poem.

Long live dear Slackware. Conquer the world in all area again (business, desktop, servers, and everywhere else).

And thanks a lot for everything that you have done for us.

Believe, we, will fight with you, and when this day happen, everyone here could be a most well succeed boss, or leader, that will contribute, with pleasure, with this project (my dream is one day do this too, contribute, coding, doc, or with resources, or money, and I believe that every slacker feels the same).

Cheers buddy.

Comment from OlekA
Posted: June 22, 2016 at 20:50

@ alienbob
What can we do in my Lenovo X220/T420 case ?

Comment from alienbob
Posted: June 22, 2016 at 21:56

Hi OlekA

Since you own a X220 and a T420 and I do not, I guess you’ll have to figure it out and provide me the information I need to fix this in my scripts (if something needs fixing).
I have no issues whatsoever on my T400 and T450 laptops.

Comment from cezar
Posted: June 30, 2016 at 12:26

Hi I cannot watch any videos with the Slack-live. It is warned a plugin is missing. Also, the sound fails. It mixes the onboard sound card (which is disabled) and the offboard one (which is in use)…but in general it is quite nice…tkd

Comment from alienbob
Posted: June 30, 2016 at 12:37

cezar what ISO variant did you try and what plugin is missing?
With regard to sound, can you use the sound applet/widget to select the proper sound card?

Pingback from Alien Pastures » Slackware 14.2 released
Posted: July 2, 2016 at 00:17

[…] alienbob on Slackware Live Edition […]

Comment from Andres
Posted: July 20, 2016 at 06:44

Hello Erick. I have problems with a new laptop with a nvidia graphic card. I boot the live usb but i have no video, only text.
Then, if I startx, this dont start and hangs with “waiting for x server to begin accepting connections”.
Any idea?
Regards!

Comment from alienbob
Posted: July 20, 2016 at 13:09

Andres, does that laptop have a hybrid video? I.e. a Nvidia GPU as well as an Intel GPU? If so, you probably will have to look for something like bumblebee to support your hybrid graphics. The Slackware forum on linuxquestions.org has multiple topics about this.
One solution is to disable the Nvidia GPU and only use the Intel GPU but that deprives you from fast graphics.
I do not own such hardware so I can not test or experiment. I do take constructive feedback in case I need to change anything.

And… my name is Eric not Erick – that is not so hard to find out on this blog, right? If you address me directly, I would like my name to be written correctly.

Comment from Andres
Posted: July 20, 2016 at 14:38

Thanks Eric.
First, sorry for the name misspelled, I did not want to disrespect you. I don’t often comment, and sometimes i do from my smartphone, which is not so smart. I’ll try to not do it again.

About the problem, yes, it’s an hybrid video, now i can point in that direction to solve this. I’ll search in linuxquestions, if i can achieve some improvements, i will comment here.

Regards.

Comment from alienbob
Posted: July 20, 2016 at 15:30

Andres, check out this information: http://docs.slackware.com/howtos:hardware:nvidia_optimus
If it helps you with the Nvidia card it would be worth trying to create a squashfs module for it. Let me know what you achieve.
Alternatively, you could try the binary nvidia drivers. All ISOs except the SLACKWARE and the XFCE variants, have a nvidia module in the “optional” directory. Try adding “load=nvidia” boot parameter to your syslinux or grub commandline.

Comment from Andres
Posted: July 21, 2016 at 02:12

Ok, with load=nvidia the xorg server fails but at least try to start.
I installed 14.2 in the HD and the problem was the same, so searching i found that the culprit may be the nouveau driver. So i blacklisted it, and rebooted. All graphics worked like a charm.
So, the key is to blacklist the nouveau driver at boot time.
Now, one question: the live-current version comes with Plasma 5? If not, i will use the live-plasma version.
Regards!

Comment from Andres
Posted: July 21, 2016 at 04:55

Well, in the boot parameters from the live version i add “nouveau.blacklist=1 blacklist=nouveau” and the boot process goes to graphical interface smoothly.
Now i’m installing to disk.
Regards!

Comment from alienbob
Posted: July 21, 2016 at 11:47

Andres, great to hear. With nouveau blacklisted, which driver are you using now?
The “slackware64-live-current” by the way, is the full standard Slackware edition without any other software. Therefore it does not contain PLasma 5. You need the “plasma” ISO for that.

Comment from Andres
Posted: July 21, 2016 at 14:13

Now it’s using the intel board, with i915 module loaded.
Ok, so i have made a good decision, i’ve installed to disk the plasma ISO. Now i’ll configure to update to current.
Thanks Eric for your help.

Comment from alienbob
Posted: July 21, 2016 at 14:20

Andres, if you are going to install the Nvidia binary drivers you might want to read this article which explains how graphics can be rendered on the Nvidia GPU and displayed on the Intel GPU using xrandr (bumblebee is not used): https://wiki.gentoo.org/wiki/NVIDIA/Optimus

Comment from Andres
Posted: July 21, 2016 at 14:29

Excellent, thank you.

Write a comment