I finished the compilation of new KDE 5_16.03 packages (64-bit) and that was a good point to stamp a new version on the liveslak scripts and build Live ISO images based on liveslak-0.7.0. This update of the Live ISOs is using Slackware64-current dated “Mon Mar 14 02:18:20 UTC 2016” as the base.
In the meantime the upload of the new ISO images for Slackware Live Edition, release “0.7.0” to slackware.uk has completed.
As always, I encourage new readers to visit my previous articles on Slackware Live Edition for more background information.
What’s new in 0.7.0?
I could not spare as much time as for the previous betas (work comes first because it pays for food and shelter). So the new ISO images are primarily meant to be a showcase of both Slackware -current and the new Plasma 5 version. Still, there are a few things to mention.
- The scope of the boot parameter “livemedia” has been extended. It will now also accept an ISO file (containing Slackware Live Edition of course) as parameter value, so that you can more easily test a freshly downloaded ISO without having to copy it to a USB stick or burn it to a DVD first. It’s use is quite versatile:
- “livemedia=/dev/sdX1:/path/to/live.iso” points to an ISO file on partition “/dev/sdX1”.
- “livemedia=DATA:/path/to/liveslak.iso” points to an ISO file on a filesystem with label “DATA”.
- “livemedia=”7550954e-3d40-4e46-ae91-d02dce1d52a4:/your/live.iso” points to an ISO file on a partition with a specific UUID.
- A new boot parameter “nga” was added. It stands for “no glamor acceleration” and should be useful on hardware (including QEMU virtual hardware) where X.Org refuses to start with the error “EGL_MESA_drm_image required; (EE) modeset(0): glamor initialization failed“. It adds a file to /etc/X11/xorg.conf.d/ to disable glamor 2D acceleration, something which used to be off by default and since X.Org 1.18 seems to be on by default.
- The “setup2hd” hard disk installer was polished a little bit.
- A wiki-fied version of the README.txt documentation was added to the Slackware Documentation Project. See http://docs.slackware.com/slackware:liveslak.
- Documentation on how to customize the Live Edition for your own Slackware derivative was added. This is a work in progress – I still need to separate the syslinux and grub theming from the menu content.
- Lots of small improvements and bug fixes were applied to liveslak. Check out the commit log if you are interested.
Download the ISO images
I have created ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest Slackware64-current packages available (Mon Mar 14 02:18:20 UTC 2016) as well as the latest Plasma 5 release which I yet have to upload to ‘ktown‘… you will see it first on Slackware Live Edition!
You can find the ISO images plus their MD5 checksum and GPG signature at any of the following locations – look in the “0.7.0” subdirectory for ISOs based on the liveslak-0.7.0 scripts. I made a symlink called “latest” which will always point to the latest set of ISO images:
- Primary location: http://taper.alienbase.nl/mirrors/slackware-live/ (please do not download from here, use a mirror)
- Darren’s mirror (fast!): http://slackware.uk/people/alien-slacklive/ (rsync://slackware.uk/people/alien-slacklive/)
- Willy’s mirror: http://repo.ukdw.ac.id/slackware-live/
- Ryan’s mirror: https://seattleslack.ryanpcmcquen.org/mirrors/slackware-live/
- Shasta’s mirror: http://ftp.slackware.pl/pub/slackware-live/ (rsync://ftp.slackware.pl/slackware-live/)
- Tonus’s mirror: http://ftp.lip6.fr/pub/linux/distributions/slackware/people/alien-slacklive/
These mirror servers will sync up in the next 24 hours – slackware.uk is already uptodate.
Good to know when you boot the ISO
Slackware Live Edition knows two user accounts: root (with password ‘root’) and live (with password ‘live’). My advice: login as user live and use “su” or “sudo” to get root access.
Note: the “su” and “sudo” commands will want the ‘live’ user’s password!
Slackware Live Edition is able to boot both on BIOS-based computers (where syslinux takes care of the boot menu) and UEFI systems (where grub builds the boot menu, which looks quite similar to the syslinux menu):
Let me know if you are creating a custom Live distro based on liveslak. I may be able to help with scripting adjustments if necessary. There’s a reboot of FluxFlux by Manfred Müller using these scripts for instance.
Have fun! Eric
Downloaded the Mate ISO from slackware.org.uk. The md5 checks out. However VirtualBox balks when opening the ISO: Could not get the storage format of the medium ‘/E/Isos/Slackware/0.7.0/slackware64-live-mate-current.iso’ (VERR_NOT_SUPPORTED).
Testing iso2usb now, downloading another ISO …
Iso2usb the Mate ISO: runs OK.
VirtualBox “accepts” the XFCE ISO: runs OK.
BTW: I do appreciate your work!
Regards, Dick
To prevent misunderstandings: The above VirtualBox failure is for the Mate 0.7.0 ISO, the Mate 0.6.0 ISO was accepted and ran OK.
D.L.C. Burggraaff, I ditched VirtualBox long ago and am using VMWare Player since. That works properly *and* supports UEFI so that it allows me to test my ISOs in an UEFI boot scenario.
The error “VERR_NOT_SUPPORTED” seems to be caused by the way mkisofs and isohybrid create the ISO image. According to (if I remember correctly) Didier, these issues seem to disappear when creating the ISO with xorriso but since that tool is not part Slackware, I am sticking with mkisofs.
In any case, the MATE ISO boots fine in both VMWare and QEMU, so as far as I am concerned this is a VBox issue, to be resolved there.
so as far as I am concerned this is a VBox issue, to be resolved there.
Fair enough.
I recreated the ISO using the “mkgriso” script that I maintain for PartedMagic with genisoimage as well as mkisofs – no xorriso in sight. I only had to do some very minor amendments. In both cases VirtualBox “accepted” the ISO and ran it OK.
Now having a look at VMware Player again – the last time I looked was years ago, and the problem was that recent kernels on the host were not supported.
Regards, Dick
D.L.C. Burggraaff. I had to burn the image on a disc and then install in virtualbox. that work.
D.L.C. Burggraaff – so your opinion is that with tweaks to the mkisofs commandline it would be possible to create a hybrid ISO image which is accepted by VirtualBox?
@alienbob: When I was looking at stage 4 of the make_slackware_live.sh script in order to extract it to do a test with genisoimage I noticed that this stage 4 looked more or less like my PartedMagic mkgriso script. So rather than extracting stage 4 I used my mkgriso script and lo and behold: VirtualBox “accepted” the new ISO.
As the XFCE ISO did not show the problem I assumed a “mishap” or something to be happened when creating the MATE ISO.
This morning I tried the KDE4 ISO. VirtualBox first “accepted” that ISO after mkgriso’ing it. So a “mishap” is highly unlikely. Then I looked again at the mkgriso messages:
…..
isohybrid: Warning: more than 1024 cylinders: 2597
isohybrid: Not all BIOSes will be able to boot this device
…..
I now think the stage 4 sectors/heads “trickery” is the cause of the VirtualBox problem.
😀
Actually my mkgriso script still “thought” mkisofs does not support EFI booting. I merged your stage 4 mkisofs arguments and thus made mkgriso somewhat “cleverer”.
Cross-pollination like this is what makes FOSS a better option.
😀
Another visitor and commenter on this blog, Didier Spaier, contributed code to the “make_slackware_live.sh” script ensuring that the number of Cylinders will not exceed 1024 when calling isohybrid. It’s this commit: http://taper.alienbase.nl/cgit/liveslak/commit/make_slackware_live.sh?id=b225306ea0f156fc865fb20b1059cb00dc3b56d0 ; therefore it is strange that your isohybrid command complains about the number of cylinders being larger than 1024.
Your “cross-pollination” remark strikes me as a bit odd though. I wanted to check where your mkgriso script differs in its use of isohybrid, but I found out that not only do I have to pay for a download of the Parted Magic ISO (which apparently contains that script), the sources are also nowhere to be found. You do realize that there is a GPL mandate to share the GPL-licensed sources (and their derived code) of your product with the buyers of your product on demand?
Disappointing, but it is your choice and I can live with the sources not being _publicly_ available. Unfortunately this means that your cross-pollination works only one way. It also means that I can and will not fix my script.
Rest assured, my own work will always be free to use and distribute.
Hi,
Gparted complains (at least in Beta 6), that partition table is not completely valid, it misses ms-dos fallback for those systems that doesn’t understand GPT partitioning.
And I had another problem with previous version, when I tried to copy large amount of files (few GB) from another USB to HDD, my computer hanged, and files were somehow permanently deleted from the system pendrive, I wasn’t able to boot it anymore, it just complained about missing lzma archives. The pendrive was freshly bought and md5 sum was ok before that. I think it can be some more serious bug, I’ve also lost all files from my home directory on another computer with Slackware 14.1 installation.
Pi, when isohybrid changes the ISO image to make it boot on a UEFI computer, it does some strange things with the partitioning of the ISO image. I am not worrying about what GParted is telling you – it is intentional.
You issues with corrupted/deleted/vanished files are most likely not related to my Slackware Live ISO or even to Slackware itself. I am regularlyu copying large amounts of data and never lost anything.
Losing all files in your homedirectory sounds like a command you executed incorrectly. Has nothing to do with Slackware.
Well, it seems that Slackware is vulnerable to something, at least it probably can’t handle some particular combination of things (I prefer to not reveal details here in case it’s really something serious, I can assure you it wasn’t anything I did incorrectly, if you think it’s important you can email me). I just executed plain fvwm-crystal package uninstall.
Pi, that package is not even part of Slackware. Don’t blame Slackware because of issues with a 3rd party script.
It is actually built from a SBo script, correct? I found https://slackbuilds.org/repository/14.1/desktop/fvwm-crystal/
If you are having issues with that package, contact its maintaner (Dimitris Zlatanidis) or discuss it on the slackbuilds-users mailing list.
If a package was made correctly (i.e. if the SlackBuild script is written properly), its de-installation will never do harm to other files on your computer.
Well, I thought it was obvious that I call isohybrid without Didier’s sectors/heads arguments. At least for my VirtualBox version (5.0.16 r105871) it does not do the trick.
With “cross-pollination” I meant that I learnt some mkisofs arguments from you and isolated the cause of the VirtualBox problem for you.
The GPL says that when re-distributing GPL-licensed software one has to make the sources including one’s changes (if any) available to the recipients too. So we tell our users the URLs of those sources. These URLs are so obvious and have no access restrictions whatsoever that in practice the sources are publicly available.
We also created a number of “own” scripts, which scripts of course are GPL-licensed. Scripts by their very nature are their own source, so by distributing them we comply with the source requirement as well.
This “mkgriso” script should be placed in the root of the “unpacked” ISO (the actual ISO name is not relevant here):
#!/bin/sh
# mkgriso : make isolinux iso
# ===========================
# Copyright 2016 Parted Magic LLC, Waupaca, WI, USA
#
#
# Written by Dick Burggraaff (burdi01)
# ——————————————————————————
# To remaster this ISO do the following:
# Copy the ISO to the current directory:
# # mkdir /tmp/cdrom
# # mount -o loop pmagic_2016_03_14.iso /tmp/cdrom
# # cp -a /tmp/cdrom .
# # umount /tmp/cdrom
# Apply your changes to cdrom/……
# Run this script:
# # sh cdrom/mkgriso
# ——————————————————————————
V=pmagic_2016_03_14T ; ISO=$(readlink -f $(dirname $0)/../$V.iso)
[ -n “$1″ ] && ISO=”$1″ # for pmagic_save_cd_session
B=”-b boot/syslinux/isolinux.bin -c boot/syslinux/isolinux.boot”
C=”-no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot”
if [ -x “$(which genisoimage 2> /dev/null)” ]; then
M=genisoimage ; D=”-e”
else
M=mkisofs ; D=”-eltorito-platform 0xEF -eltorito-boot”
fi
E=”boot/syslinux/efiboot.img -no-emul-boot”
if ! $M -hide-rr-moved -l -v -d -N -R -J -V “Parted Magic” \
$B $C $D $E -o $ISO $(dirname $0) ; then
exit 1
fi
echo “>>> $ISO created”
if [ -x “$(which isohybrid 2> /dev/null)” ]; then
isohybrid -u $ISO
else
echo “>>> No isohybrid to hybridize this ISO”
fi
exit 0
Hmm, my “blablabla” and indentations were killed …
As I said, files disappeared permanently from live Slackware also, on a different computer, and I didn’t have fvwm-crystal there, and the only thing I did there was to copy some archives from one place to another. These files are the only common things between these cases. They should be quite harmless in itself if you’re concerned about that, just some physics handbooks. I would like to know what happened to avoid it in the future, and I think it could save other users from the same problem.
D.L.C. Burggraaff, the fact that these arguments were added to the isohybrid command in the first place, was because I had initial issues with booting the ISO images in VirtualBox. Didier Spaier helped debugging and also talked to Thomas Schmitt, xoriso developer. We arrived at these commandline parameters to make the resulting ISO images as compatible as possible with all situations where they could be used. Since then I stopped using VirtualBox and switched to VMWare Player because of its UEFI support. Later on Didier switched to using xorriso for creating his own ISO images because those would boot everywhere and mine would not.
I am now wondering if there are any other cases where my ISO images do not work, except for VirtualBox. As said before, QEMU and VMWare do not have complaints. And writing the ISO directly to a USB stick works fine for actual computer hardware.
Hi Eric, the Plasma 5 Edition of 0.7.0 seems to have a problem with starting up X on some machines. On an “old i3” everything is perfect, on a brandnew Skylake-i5 system it fails to startup X (stopps with a black screen). I switched to a text console to inspect dmesg and Xorg.0.log but did not see any issues at first glance. Both machines had no problems with Plasma 5 version of 0.6.0.
To check it again I downloaded the mate and kde 0.7.0 variants. They both have no problems to boot on any system.
Actually just running “isohybrid -u ” suffices to resolve the VirtualBox problem. The unpacking the ISO and running mkisof as is done by my “mkgriso” script is superfluous.
Also I encountered the minor problem that when opening the ISO “engrampa” (mate’s archive manager) balks about an “Unexpected end of archive”. It does so for the “before and after” ISOs.
Kind regards, Dick
Dick, perhaps I should then revert to plain “isohybrid -u” like Slackware does for its own installation ISOs. Thanks for this fruitful discussion.
Arrcchh: Again everything between less-than and greater-than characters (0x3C and 0x3E) is removed. The isohybrid command therefore should be read as “ishohybrid -u ISO”, where “ISO” is the pathname to the ISO.
Testing angle brackets after a small code change in the WP code: <test> <test>.
<quote>testit</quote>
I changed this:
I will download then Mate ISO and see if I encounter the issue with VirtualBox mentioned in the first comment and report here.
If that fails I will use some functions of xorriso that can help find what could be wrong in the ISO and if I find something suspect remaster it using xorriso (no isohybrid), just to see if that changes something.
I confirm the issue with the mate ISO and VirtualBox.
xorriso in analysis mode finds two issues.
The most important seems to be:
GPT backup problems: Implausible header LBA 3502168
There are also ideograps in the local partnames:
GPT partname local : 1 ??????O????d??
GPT partname local : 2 ????d??e??
This can make angry some picky firmwares.
This could be due to isohybrid plus a specific size of efiboot.img, as that looks like an issue reported in this thread:
http://www.linuxquestions.org/questions/slackware-14/%5Btesters-wanted%5D-installer-using-goofiboot-for-uefi-booting-4175563725/
See especially my post #18 and Thomas Schmitt’s answer #19.
I then mounted the ISO, did a "cp a /mnt /tmp", remastered the copied tree with xorriso, ran the same commands to analyse the nex ISO. No more "implausible header", no more ideographs, and VirtualBox accepts the ISO.
I am sending Eric the command used to do the remastering and the two xorriso report of ISO analysis.
@Didier:
<quote>I am sending Eric the command used to do the remastering</quote>
Would you be so kind as to publish that command here?
Regards, Dick
@Dick: this is assuming that you have full copy of the mounted downloaded ISO in /tmp/mnt, and that you have syslinux installed (from which I grab /usr/share/syslinux/isohdpfx.bin).
?—–
( cd /tmp/mnt
SFX=64
if [ "$SFX" = "64" ]; then
EFIOPTIONS="-eltorito-alt-boot -e boot/syslinux/efiboot.img -isohybrid-gpt-basdat -no-emul-boot"
fi
xorriso -as mkisofs \
-isohybrid-mbr /usr/share/syslinux/isohdpfx.bin \
-hide-rr-moved \
-U \
-V "SLACKLIVE" \
-J \
-joliet-long \
-r \
-v \
-o /archives/images_iso/slackware64-live-mate-current-xor.iso \
-b boot/syslinux/isolinux.bin \
-c boot/syslinux/boot.cat \
-no-emul-boot \
-boot-info-table $EFIOPTIONS .
)
?—–
@Dick: if you want to try it, mind the dot after $EFIOPTIONS and a white space that as usual means "here". Of course you can give xorriso an other location for the root of the tree, as with mkisofs. But that has to be writable, that’s why I don’t point directly to the mount point of the ISO. I used xorriso version 1.4.2.
@Didier: Thks, I will have a go at things tomorrow.
@All: Slightly off topic: Cannot the size issue be stepped aside by *not* including the liveslack and rootcopy directories in the bootable ISO, but in a separate loadable filesystem (which even might be a non-bootable ISO)?
Just a thought …
😀
Hmmm…, continued the testing with my large amount of modules today. But it seems that there is no change from 0.6.0 to 0.7.0. Booting with (eg. maxloops=128) or without maxloops parameter: It is not possible to boot with more than 47 modules in the addons folder.
ahz let me know when you find the cause and a solution that I can implement.
I wanted to verify the ISO without it being "contaminated" by isohybrid.
It took me 10+ hours to run a cut-short make_slackware_live.sh successfully either by using a recent current install ISO as a repo or using a "real" local repo (the wget of which from slackware.org.uk took me 1 hour 8 minutes). Either there is an implicit dependency on the running kernel (should its version be the same as the one in the repo?) and/or the 4.5.0 kernel has an overlayfs problem.
Anyway, the "unhybridized" ISO already shows the same symptom as reported before: engrampa 1.12.0 balks about an “unexpected end of archive” — though engrampa 1.8.1 and file-roller 3.10.0 happily open the ISO. Maybe engrampa 1.12.0 is overly picky.
The ISO can be mounted OK on e.g. /cdrom and then be looked at, can be run OK by VirtualBox 5.0.16 in MBR as well as UEFI mode(though the latter mode is extremely slow and ended in a black X screen, just as with VMware Player), can be burnt to and run OK from a DVD, and even can be "burnt" to and run OK from a USB stick by e.g. UNetbootin (available for Windows, Linux and Mac OS X — alas it skips the boot menu).
And after running "isohybrid -u <ISO>" the ISO can be dd’ed to and run OK from a USB stick in MBR as well as UEFI mode.
In other words, the problem/symptom is already present in the "unhybridized" ISO and is not made worse by a (non-sectors/heads) isohybrid.
As an aside, it is also possible to use Grub2 for the MBR booting too — and share the grub.cfg between them. The only draw-back is the chicken-and-egg problem that after copying things to a USB stick one needs to run a "grub-install" (once), for which one would need a Linux install.
😀
Dick: What was the need run make_slackware_live.sh again? You could just have run the command I provided…
Also if you use that command you should *not* run "isohybrid -u ISO" on it as:
1) the ISO is already hybrid, so you can just write it on an USB stick with dd or otherwise
2) doing that you are loosing the benefit of using "xorriso -as-mkisofs" instead of xorriso.
Also, to write the ISO on an USB stick from Windiws, better use Rufus https://rufus.akeo.ie/ as it’s by far the best tool on Windows and is open source. Incidentally Pete Batard, its developer, makes a tremendous job and is also very helpful if you need support. He also gives back to the Syslinux project , but I digress.
Please read "instead of mkisofs", not "instead of xorriso"
Also "from Windows" not "from Windiws"
Didier: IIUC one of Eric’s goals is to use as little non-slackware-provided software as is reasonably possible. That means that xorriso might only be considered when mkisofs/isohybrid will be found to really not be able to "deliver".
In that vein I wanted to determine whether the problem (if there is one, after all engrampa 1.12.0 might be too picky) is introduced by isohybrid. In other words whether or not the ISO as produced by mkisofs already shows the problem.
As unpacking Eric’s ISOs might also unpack isohybrid’s "contamination" (if any) I decided to rerun a cut-short make_slackware_live.sh — which experiment got a little out of hand ;^). And of course I saved the directory structure the mkisofs was run against to faciliate further testing.
I said "and even can be ‘burnt’ to a USB stick by *e.g.* UNetbootin". I am aware of tools like rufus or yumi, but as we recommend UNetbootin for PartedMagic that is where I have the most experience with.
😀
@Dick: as you requested that I post the xorriso command and intended to give it a go I wrongly assumed that you used it this time. Sorry for my misunderstanding.
Indeed, tools like xorriso are not under consideration. They are not part of Slackware, and the ISO should be made on a slackware-current machine with no other software installed – if possible. That does not prohibit other people from modifying the script and using different ISO generators of course.
I may just revert to the way Slackware’s official ISO images are created: using a bare "isohybrid -u" after "mkisofs" with all the parameters I also use in my own script. If the ISO does not work on VirtualBox I can live with that.
Didier: I asked the xorriso command out of curiosity. I will have a go with it, but experimenting for Eric’s "master branch" had a higher priority for me.
Eric: The ISO I produced with the make_slackware_live.sh script in which the sectors/heads isohybrid invocation is replaced by a bare one is accepted by and run OK with VirtualBox 5.0.16.
😀
Eric: Actually engrampa 1.12.0 is the only one complaining. It is quite possible that it is too picky.
Refer to my list of successes in my Mar 21, 2016 18:30, to which Ark 2.19 from KDE 4.14.17 should be added.
And as the ISO can easily be mounted and such looked at the engrampa complaint is just a nuisance.
😀
I just opened an issue with the mate project — https://github.com/mate-desktop/engrampa/issues/128
I revived the overlayfs version of my Parted Magic derivate, applied my 4.5.0 kernel and ran it. I experienced none whatsoever problems. In other words: the make_slackware_live.sh script has an implicit dependency on the running kernel (refer to my Mar 21, 2016 18:30 post above).
Also, the engrampa version in there (1.10.2) opened the ISOs without complaining.
😀
I don’t understand that remark Dick… what dependency on a kernel version can a script have that influences its boot capability even before the kernel is loaded? Your earlier post did not make me any wiser.
Eric: Let me try to explain.
My Slackware system is a non-full 64-bit Current Multilib running a 4.5.0 vanilla+aufs kernel.
When running "FORCE=YES bash -x make_slackware_live.sh |& tee log.log" (without the FORCE the script errors out almost immediately) I see a lot of "/sbin/installpkg: line 378: /mnt/slackwarelive/var/log/setup/tmp/tmpsize13698: Operation not permitted" messages and the script errors out on line 776 because no kernel modules are installed in /tmp/slackwarelive_staging/temp/a_8231.
As /mnt/slackwarelive is an overlayfs I assume the problems to be overlayfs ones.
I then did a quick and dirty install from the same unofficial install ISO as I use as my repo. And lo and behold: make_slackware_live.sh ran successfully. As the only significant difference with my "normal" system is the kernel (4.4.5 huge) I deduced a "hidden" kernel dependency or an overlayfs problem with the 4.5.0 kernel.
As running the overlayfs version of my Parted Magic derivate with the same 4.5.0 kernel as my "normal" system is without problems an overlayfs problem with the 4.5.0 kernel can be ruled out.
This morning I decided for a more fine-grained approach and install the 4.4.6 huge kernel from a (refreshed) unofficial install ISO. Initially make_slackware_live.sh seemed to run ok, but then it errored out at line 1542 "sed: can’t read /tmp/slackwarelive_staging/boot/syslinux/menu/*menu*.cfg: No such file or directory". As I do not have the ter-i16v.psf installed and the liveslack-0.7.0/syslinux directory does not provide it either the script tries to amend a file thath the liveslack-0.7.0/syslinux directory does not provide. Is this is an artefact of a previous iteration of the make_slackware_live.sh script?
Installing the terminus-font package resolved the "1542" problem.
Regards, Dick
😀
@Eric: As the resultant ISO is OK (only engrampa 1.12.0 complains just as with your ISOs) I would propose to ignore the kernel dependency. Maybe you could have a look at the "1542" problem.
@Didier: Remains the xorriso test.
In my previous post I wrote "only engrampa 1.12.0 complains just as with your ISOs". This of course should be "only engrampa 1.12.0 complains just as with your ISOs after a *non*-sectors/head isohybrid".
😀
Dick thanks for spotting that bug related to the consolefont, I fixed it.
Consolefont patch confirmed.
😀
@Didier: I "unpacked" Eric’s slackware-live-current.iso and ran xorriso 1.4.2 on it. The most "interesting" messages were:
…..
libisofs: NOTE : Automatically adjusted MBR geometry to 1021/163/32
libisofs: NOTE : Aligned image size to cylinder size by 1004 blocks
…..
ISO image produced: 1331384 sectors
Written to medium : 1331384 sectors at LBA 0
Writing to ‘stdio:slackware64-live-current-xor.iso’ completed successfully.
The resultant ISO is accepted by engrampa 1.2.0 and virtualbox 5.0.16.
It runs OK under VirtualBox 5.0.16 *) and from a dd’ed-to USB stick.
😀
*) In UEFI mode X gives a black screen just like I saw with VMware Player.
@Dick: to get X working in VirtualBox 5.0.16 in some cases you need to install the VirtualBox additions. But of course that stands for an installed system, as you need to have their kernel modules compiled and installed against your running kernel.
Hi AlienBob,
I have a little problem with setup2hd. I want to install my XFCE-based distribution to a harddisk, so I put kernel-huge into the .lst to get the script.
However, at the installation of the .sxz files it cycles through them in one second and doesn’t do anything.
Is it still unfinished or am I missing something on XFCE?
—
Regarding the VirtualBox comments: For my ISO I included virtualbox-addons and virtualbox-kernel-addons to the guest system. I need it for shared clipboard functionality and dynamic resolution when I resize the VM. Works fine.
The packages for both are here: http://cinelerra-cv.org/repo
SlackBuilds for them are here: https://git.cinelerra-cv.org/gitweb?p=schmatzler/cinelive.git;a=tree;f=SlackBuilds/virtualbox
To build them you’ll have to run the SlackBuilds in the host directory first. Extensions are still on 4.x at SBo but I imagine they will be updated soon.
For the engrampa problem I opened an issue with Mate development: https://github.com/mate-desktop/engrampa/issues/128
😀
Hi schmatzler,
I do not know why setup2hd finishes without installing anything, You can run it with "sh -x" and capture its output to see where it fails, but currently I have no idea.
There is a different issue I have with setup2hd: it mounts the modules one by one and extracts the full content. This disregards any package that might have been deleted/upgraded when creating another squashfs module. For instance, the PLASMA5 variant replaces some Slackware packages. I found out that remnants of these upgraded packages are still on my laptop which I installed from a Live ISO using setup2hd.
So I will have to do some re-writing.
Schmatzler, try the revised setup2hd please, perhaps that helps: http://bear.alienbase.nl/cgit/liveslak/log/
I’m just taking a guess:
<code>echo squashfs-tools >> min.lst</code>
Yeah silius, that could be it, if schmatzler used the XFCE variant as a base for his own ISO.
I exclude the "setup2hd" from the XFCE based ISO because that ISO lacks a ‘huge’ kernel which would complicate the setup process. But if schmatzler’s ISO does contain "/boot/vmlinuz-huge-*" then the setup2hd files will be added.
My original setu2hd script relied on unsquashfs to copy the files to harddisk, but the new version of the script uses rsync instead and only calls unsquashfs to extract some customizations like "/etc/profile.d/lang.sh", "/etc/rc.d/rc.keymap" and such.
I have already updated the git repository.
Hi Eric,
What do you think about providing a liveslack image without any DE ?
Thinking of that because I started to prepare an image with only my preferred wm…
Fast to download, fits on small USB stick, light to run, I can see only benefits 🙂
Hi Tonus
I have been thinking about a console-only Live ISO but I guess that is not what you are hinting at.
You want X.Org in there but not the fluxbox, fvwm, xfce and related DE packages.
I am not going to do that because it serves no purpose. You are welcome to write your own custom files in pkglists/ of course and thus create your own custom Live OS.
Indeed I was thinking of a console base image 🙂
The X/xap and i3 packages would be for my homework, for sure.
Tonus, some time ago I wrote a "cbase" package list but have not had the time (or felt the urgency) to test this list for missing packages. It’s not checked into git but you can find it here: http://www.slackware.com/~alien/liveslak/pkglists/cbase.lst
Hi Eric,
first of all: Thanks for Slackware Live. It’s a great achievement and a great relief in many situations and will lower the hurdle for people afraid of Slackware (due to its image to be a geek distro) to try it out, and hopefully help to attract many new users. Fantastic effort all along, and even more so, as you provide the various editions (Plasma 5, XFCE, stock -current).
I finally found a little time to play around with the Plasma 5 edition. Once I had found out that I had to apply isohybrid -u to the ISO image, I was finally able to boot from DVD. Booting takes a little more time than some other live distros, but I like the way I can set my language and locale settings at boot, and once it is up it works like a charm. VERY GOOD!
In fact, I like it so much that I decided to install it to my harddisk, which uses LUKS + LVM. The installation was actually just a mouse click, followed by setting up an initrd. WHAT? I thought? At first, I didn’t beleive that it was already done, but it was. I can boot into Slackware64-current.. Up to this point all is fine.
However, when I want to start X on this Toshiba laptop with Intel Core i3 and integrated graphics I am running into a problem that I was unable to fix up to now: With init 4 as root The screen remains black, all I get to see is an underscore in the upper left corner. With startx the ouput suggests that the system loads modules like fbdev, int10, vbe and vesa, but unloads them afterwards, again, and complains about "Screen(s) found, but none have a usable configuration" followed by a "Fatal server error: no screens found". The xf86-video-intel driver seems to remain loaded,however.
How come that using a "huge" kernel, the system runs just fine including Plasma 5 when booted from DVD as a live system, but doesn’t when installed locally?
I rebooted the live DVD and found that it uses the i916 kernel module, whereas this module isn’t loaded when I boot from harddisk. I’d appreciate a hint, how to solve this.
Alex
I should probably add that the laptop is a (U)EFI machine, and that UEFI boot to run level 3 works just fine, if I only apply isohybrid -u to the ISO image before burinng it onto DVD.
Alex, how weird, because the ISO has already been treated with a "isohybrid -u" command. To be precise, "isohybrid -u" plus some additional heads/cylinders parameters because that was suggested as being more compatible by one of the trusted visitors of this blog.
Slackware’s own release ISO images are treated by just "isohybrid -u" so perhaps I should revert to using that instead of fancy compatibility settings that might work adversarily?
Deducing from your second post, you can start X when you boot into runlevel 3? And you have a SDDM session manager screen which remains black when you boot into runlevel 4?
As to isohybrid -u: Yes, just that with no additional parameters applied to the ISO image before burning the DVD did the trick. Without it, the DVDs wouldn’t boot. BTW, the same helped with the DVD that is created by your mirror-slackware-current.sh script. What is more, without isohybrid -u the DVDs won’t even boot with CSM instead of UEFI boot on my laptop. So isohybrid -u seems to be a safe bet, as long as my environment is concerned. Other users may have other experiences.
As to you question regarding run levels: I can boot into run level 3, but both startx as normal user and init 4 as root fail, when still in text mode. I don’t get to see the SDDM session manager screen.
Meanwhile I tried to press "e" at boot and enter (after the elilo prompt): vmlinuz acpi=off. But this doesn’t help, either, and actually I wouldn’t tnink that turning off ACPI is a good idea for a laptop.
And as I have text output on the screen, I don’t assume that I need to explicitly boot with KMS.
Alex
Forgot to mention, that my system is not frozen as a whole. The ttys all work fine. Only VT 7, which is to be used for X, is blank with the underscore in the upper left corner, and unresponsive.
@Alex: there is no need to post-process the ISO image with isohybrid (with or without the u- or–uefi option added by Matthew Garrett) to write it on a DVD as this command’s just adds ability to boot the image off a hard disk/USB stick in addition, as stated in isohybrid.c:
?—
* isohybrid.c: Post process an ISO 9660 image generated with mkisofs or
* genisoimage to allow – hybrid booting – as a CD-ROM or as a hard
* disk.
?—
So, please tell us what exact command you used to burn the ISO on a DVD.
read "isohybrid <hyphen>u" or "isohybrid <hyphen><hyphen>u". First typo was mine, but I hate these online editors that modify the input text…
Didier, that was what I believed to know before, too: isohybrid makes an ISO image bootable from USB or harddisk. But my laptop seems to be a bit pecuilar, here. 😉 It couldn’t boot the DVD when I burned it without the post processing step with isohybrid -u, but can boot it when the command is applied. It seems, my laptop tries to tread DVDs as USB drives when booting in UEFI mode.
To burn the DVD I used cdw from SBo with default options. I usually use k3b, but since the updates to -current of 25th/26th March, 2016, it fails — one of multiple issues, for which I suspect the polkit changes as the root cause. But that’s a different topic, and I have opened a thread at LQ.net for that.
Oops, seems I got confused a bit with the many DVD images I currently have on my harddisk and want to correct myself regarding mirror-slackware-current.sh. Applying isohybrid -u to the image created by the script on 24th February, 2016 yields an error message: "unable to find EFI image".
There is no need for one more software; you could just use this command as suggested in /isolinux/README.TXT:
rowisofs -speed=2 -dvd-compat -Z /dev/sr0=slackware-dvd.iso
It is very unlikely your laptop tries to treat DVDs as USB drives when booting in UEFI mode.
To find out, please provide the utput of flloxing command, typed as root:
efibootmgr -v
This should tell us what are the boot entries registered in the UEFI firmware’s boot manager.
rowisofs -speed=2 -dvd-compat -Z /dev/sr0=slackware-dvd.iso
should be read:
growisofs -speed=2 -dvd-compat -Z /dev/sr0=slackware-dvd.iso
Output of efibootmgr -v (as root):
Fatal: Couldn’t open either sysfs or procfs directories for accessing EFI variables. Try `modprobe efivars’ as root.
So I tried modprobe efivars and then again efibootmgr -v,, but same result.
As to your other points: I prefer to use applications like cdw, when commands tend to get lengthy and my memory as well as my typing is error prone. 😉 Of course, growisofs would work, too.
And YES, I too think that it is highly unlikely that my laptop treats DVDs like USB drives in UEFI mode. However, there must be something about isohybrid -u that makes DVDs bootable on that laptop. I have no explanation, what this could be, however.
Just a couple of thoughts, regarding peculiarities and differences between booting the live DVD and the system installed to harddisk.
Peculiarities: My setup is somewhat special (thought not too special for a laptop, I think): My harddisk is LUKS encrytped (incl. root) and I am using LVM as described in README_CRYPT.TXT.
Difference: The live DVD boots with Grub, the installed system uses elilo, instead. FWIW.
The error from efibootmgr should not occur.
You started the system in UEFI mode, not legacy mode, right?
Then the kernel should have bring up an interface to the firmware in /sys. Please check that you have a directory /sys/firmware/efi
/sys/firmware/efi exists. It has a couple of sub-directories, runtime-map and efivars. Both are empty.
As explained in https://www.kernel.org/doc/Documentation/ABI/stable/sysfs-firmware-efi-vars the directory /sys/firmware/efi/vars exposes the interfaces for interaction with EFI variables, including of course the boot entries registered in the firmware’s boot menu. So if you do not have a populated /sys/firmware/efi/vars directory of course efibootmgr can’t work. That most probably indicates that your machine was not booted in UEFI mode.
For your information, here (VirtualBox VM) the output of ls /sys/firmware/efi/vars|grep ^Boot is:
?–
Boot0000-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0001-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0002-8be4df61-93ca-11d2-aa0d-00e098032b8c
BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c
BootOptionSupport-8be4df61-93ca-11d2-aa0d-00e098032b8c
BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c
?—
Which is consistent with that of efibootmgr -v:
?—
BootCurrent: 0002
BootOrder: 0000,0001,0002
Boot0000* EFI DVD/CDROM ACPI(a0341d0,0)PCI(1f,1)ATAPI(1,0,0)
Boot0001* EFI Hard Drive ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000
Boot0002* EFI Internal Shell MM(b,60f4f000,612befff)
?—
Thanks, I double checked again the firmware settings, and boot mode is UEFI. But then, in the running system, I tried eliloconfig as a test for UEFI mode being set or not. To my surprise eliloconfig did not complain about the system not running in UEFI mode, but that there was no EFI system partition mounted on /boot/efi. So I cd’ed to /boot and found that the whole directory is empty (except "lost + found"). 🙁 Crazy!
But it confirms that the system booted in UEFI mode, because the only kernel it could find is in /boot/efi/EFI/Slackware/.
I have no idea, what went wrong during install from the running live system to harddisk using setup2hd. As much as I like Plasma 5, I am giving up here, and install stock -current from the recent install DVD, using the ISO image from bear.
Thanks a lot for your patience and support, Eric and Didier! Despite the issues discussed I like SLE (Slackware Live Edition) a lot, especially the Plasma 5 incarnation.
Alex
I don’t understand. You write:
"So I cd’ed to /boot and found that the whole directory is empty (except "lost + found")."
but then:
"the only kernel it could find is in /boot/efi/EFI/Slackware/"
How can a kernel be in a directory /boot/efi/EFI/Slackware/
if /boot is empty?
You are right, of course, and I apologise as I am probably starting to write nonsense, as I am getting tired and need to get some sleep.
Hmm; isn’t it is possible to have a mountpoint /boot/efi and mount the EFI system partition (ESP) to it, without mounting /boot? Maybe that’s what happened, and /boot/efi was unmounted later. I guess, /boot wasn’t really empty, but the boot partition was just not mounted (for whatever reason). Sorry for the confusion and thanks for you help!
So you have a separate partition for /boot? Maybe that would help understand. Anyway, have a good night.
Yes, the laptop has three physical partitions set up with cgdisk:
1 /dev/sda1 – EFI – /boot/efi
2 /dev/sda2 – linuxboot – /boot
3 /dev/sda3 – linuxsystem – fully LUKS encrypted and under LVM control
On /dev/sda3 I have:
/dev/mapper/crytpvg-swap
/dev/mapper/cryptvg-root
/dev/mapper/cryptvg-home
I followed the instructions in README_CRYPT:TXT. The setup allows me to have a fully encrypted root and swap, and I can use swap to suspend to disk without having to encrypt and decrypt it manually every time separately.
I wish you a good night, too!
Alex
Eric ,thank you for your work and teaching with these publications.I installed the iso plasma5 easily with your scripts
Hi,
Just noticed while building a custom ISO that there is a cxxlibs file into the min.list that might no longer exist in current.
BTW, there might be something I didn’t understood but my build fails unless I create the .conf files for regular lists of package you provide (min, xbase, xapbase and so on).
Anyway, what a wonderful and so interesting work ! I learn so much reading your README, thanks a lot !!
Depends on how you create your custom ISO. If it uses any of the XFCE *.lst files you mentioned *and* you do not have packages in the predefined Slackware package root directory, the script may want to start downloading packages and then fail because there is no *.conf files. What kind of customization have you applied?
I’ve tryed to point to my local mirror of the official slackware repo but the script claimed it couldn’t find any slackware packages in there. It worked with config files. Might be that I misunderstood something because at the end it fails at line 1123 with :
install: impossible d’évaluer ‘/mnt/hd/repo/slackware-current/slackware-current//slackware-i3-current/slackware-i3/../CHANGES_AND_HINTS*’: Aucun fichier ou dossier de ce type
I must have missed the real purpose of one variable :shame:
My directory stucture is
/path/to/repos/
—–slackware-current/
———-slackware/
—————a/
—–slackware64-current/
———-slackware64/
—————a/
Note :
packages that might to be removed from .lst files
min.lst : cxxlibs
xfcebase : xfce4-mixer, xfce4-volumed
Also have this strange error while trying to add a third party software list :
dropbox-client-1.6.1-i386-1alien: store, sync and share files online [240K]
xz: (stdin): Unexpected end of input
Picking up the red thread. ;), here are some findings (referring to my last post). I tried to install 14.1 stable, but ran into similar issues as with the Plasma 5 live edition. Here is what I did.
Boot with 14.1 install DVD
When the installer is loaded, log in as root, then:
# cryptsetup luksOpen /dev/sda3 slackluks
Enter LUKS passphrase
# setup
Exit the installer, but don’t reboot.
# mount
Mounted devices at this stage:
/dev/sda1 – /mnt/boot/efi
/dev/sda2 – /mnt/boot
/dev/cryptvg/root – /mnt
/dev/cryptvg/home – /mnt/home
Next step is to create an initrd with support for LUKS and LVM.
# chroot /mnt
# cd /boot
# /usr/share/mkinitrd/mkinitrd-command-generator.sh -c -i >/etc/mkinitrd.conf
# mkinitrd -F
This creates initrd-gz in /boot. Then switch from huge to generic kernel:
# ln -sf vmlinuz-generic-3.10.17 vmlinuz
# ln -sf config-generic-3.10.17 config
# ln -sf System.map-generic 3.10.17 System.map
After this the logical next step would be:
# eliloconfig
But: "ERROR: No EFI System partition mounted on /boot/efi"
# mount
gives back nothing. So I tried:
# mount /boot/efi
gives back this: "mount: /dev/sda1 already mounted or /boot/efi busy"
This happens with all -current and stable DVDs I have at hand, right now. Question: Why is /boot/efi mounted in the init system, but not in the chroot environment?
I then tried to solve the problem manually. I exited the chroot environment, unmounted /boot/efi and /boot, and then:
# chroot /mnt
# mount /boot
# mount /boot/efi
# mkinitrd -F (maybe unnecessary)
# eliloconfig
This time it seems to work. So I exited the chroot environment again and tried to reboot. But the computer complains that there is no bootable device. 🙁 It doesn’t see the EFI partition, it seems.
So It’s not a problem specific to the Slackware Live Edition, but something either more generally related to Slackware or even more specific to may particular laptop.
Alex
Eric, Didier, guess what: I am writing this post on my laptop, with Slackware64 Live Edition + Plasma 5 installed to harddisk with LUKS encryption and LVM, and I feel like a complete idiot, since I found the root cause of my problems: My third partition, which is the one that I encrypt and put under LVM control, was of type Linux, when it should be of type LVM. 🙁 Also, I had of offset of sectors on my harddisk, which I fixed with the function "align" in cgdisk.
I apologise for the confusion and for the many posts that almost look as if I had hijacked this discussion — which is definitely not what I had in mind when I wrote my original post. I am sorry for that, and would like to thank you once again for your relentless efforts to support "eternal noobs" like me.
If possible, you may, of course delete my posts, including this one, as noone can learn anything from them, as it turns out.
Kindest regards
Alex
Thanks alienbob, the new setup2hd script unpacks the .sxz files correctly and also installs lilo just fine.
However, it still seems to use the wrong kernel on the XFCE variant, because it can’t mount the root filesystem at boot afterwards.
I think I won’t use this script, but rather provide instructions for my users on how to install Slackware with my custom packages if they really want a HDD install.
schmatzler are you installing to real hardware or are you testing in QEMU?
I was testing it in VirtualBox, does that make a difference?
Alright, I’ve synced your latest changes, added kernel-huge to the XFCE package set and tried to use setup2hd in VirtualBox again.
This time it worked.
I will test this on a real machine soon, but it seems to run fine. Don’t know why it failed last time I tested this.
Is it intentional that the live user doesn’t get copied over and that the machine starts in runlevel 3? That is a big hurdle for new users.
I also noticed that iso2usb.sh fails in line 573 (the one you commented with "No longer needed"). I commented it out and now it works.
You could also extend the PROG_MISSING message a bit. I had a Ubuntu user asking why the script doesn’t work and he couldn’t find the unsquashfs and iso-info programs. They are called squashfs-tools and libcdio-utils on Ubuntu.
Having a little problem creating a bootable usb Live Plasma 5. Using Slackware 14.1 on a Thinkpad T520
[code]— Making the USB drive ‘/dev/sdb’ bootable using extlinux…
/mnt/alienusb.YEZftp/boot/extlinux is device /dev/sdb3
umount: /mnt/alienusb.YEZftp: not mounted
*** /usr/bin/iso2usb.sh FAILED at line 573 ***
— Cleaning up the staging area…[\code]
A little help would be appreciated.
I had the same problem. Edit the script and comment out line 573 to make it work.
I have built an if;then safeguard around that lines and some of the other "umount" commands to prevent this script abort.
The updated script has been pushed to the git repository as well as to the public download directories for non-git users (http://www.slackware.com/~alien/liveslak/ and https://bear.alienbase.nl/mirrors/people/alien/liveslak/)
Schmatzler, about your install to HD: I am glad that it worked this time, let me know how it goes on real hardware.
About your other comment:
The setup2hd script does not install "Slackware Live" to your hard disk. It acts as a regular Slackware installer, just with a different package source. It uses a filesystem overlay which consists of all the packages in the Live OS, _excluding_ the Live OS modifications (such as the "live" user, the runlevel setting, the /etc/skel desktop pre-configuration etcetera). The setup2hd script will extract a _few_ of these modifications from the "0099-slackware_zzzconf-current-x86_64.sxz" module, like language, keymap, timezone but not the rest.
If you need a "hook" in the script so that you can extend setup2hd with custom actions, I can have a look at the feasibility – like sourcing a "setup2hd.local.sh" script.
Schmatzler, about Ubuntu:
The actual binaries should be called "unsquashfs" and "iso-info" just like on Slackware. It’s the packages that bear a different name perhaps. Slackware and Ubuntu both have "squashfs-tools" but isoinfo on Ubuntu/Debian is part of a "libcdio-utils" whereas Slackware’s package is called "libcdio".
The "iso2usb.sh" script is not searching for packages but for binaries, in the $PATH – it is possible that on Ubuntu the unsquashfs and iso-info programs were not in the user’s $PATH (extended with /sbin).
Thanks Alienbob. The new script work just fine. Now if I can only get my Thinkpad 520 to boot it. It is a Thinkpad problem as it boots ok in other machines. Keep doing what you do. I’m a big fan.
I have a Thinkpad W520. Did you try both startup modes (UEFI vs Legacy)? You can change that in the firmware’s menu.
Alright, I tested setup2hd on a real HDD and it works, too.
So I can include this in the final version of Cinelive. 🙂
Thanks for the hook, it is very useful! Nothing to do anymore, except impatiently waiting for Slackware 14.2.
Regarding Ubuntu and the binary names: I’m aware that the script just searches for the binaries and throws out their name if a binary is not found.
It was just a thought to make it easier for users who don’t have much experience.
With a second Release Candidate I hope that the final 14.2 version is not far off.
I want some stuff addressed in liveslak before that time so I hope I can do that before liveslak-1.0. Beta 8 is done, the ISOS are ready but there is a bug in the 32bit ISO generation which I want to fix before uploading all the ISO images to bear.