LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   slacklive from scratch (Mandatory package list file) (https://www.linuxquestions.org/questions/slackware-14/slacklive-from-scratch-mandatory-package-list-file-4175602336/)

ansisys 03-22-2017 11:35 AM

slacklive from scratch (Mandatory package list file)
 
Hi there,

I'm totally stuck at the moment. Trying to execute

Code:

slaxvm:~/Downloads/liveslak-1.1.6.3# ./make_slackware_live.sh
all I get is
Code:

-- Loading configuration file.
-- Found an existing live root directory at '/mnt/slackwarelive'.
-- Check the content and deal with it, then remove that directory.
-- Exiting now.

Then again, removing the /mnt/slacklive and executing the script once again leads me to:
Code:

slaxvm:~/Downloads/liveslak-1.1.6.3# ./make_slackware_live.sh -f
-- Loading configuration file.
-- Removing old files and directories!
-- Creating 'SLACKWARE' image.
-- Installing the 'a' series.
-- Mandatory package list file '/home/ftp/pub/Linux/Slackware/slackware64-current/slackware64/a/tagfile' is missing! Exiting.

Can some one please please point me into the right direction or tell me frankly what is it that I' doing wrong? Btw. this is my config for the script:
Code:

# ---------------------------------------------------------------------------
# liveslak scripts by alienbob.
#
# Configuration file for "make_slackware_live.sh".
# Define your own custom values here to avoid editing the shell script.
# ---------------------------------------------------------------------------

# Examples:

# Custom name for the host:
LIVE_HOSTNAME="darkstar"

# Marker used for finding the Slackware Live files:
#MARKER="SLACKWARELIVE"

# The filesystem label of the ISO:
#MEDIALABEL="LIVESLAK"

# The name of the directory used for storing persistence data:
PERSISTENCE="persistence"

# What type of Live image?
LIVEDE="SLACKWARE"

# What runlevel to use if adding a DE like: XFCE, KDE4, PLASMA5 etc...
#RUNLEVEL=4

# Name of the 'live' user account in the Live image:
LIVEUID="live"

# Passwords for the user accounts in the Live image:
#ROOTPW="root"
#LIVEPW="live"

# Who built the live image:
#BUILDER="Alien BOB"

# Slackware version to use (note: this won't work for Slackware <= 14.1):
SL_VERSION="current"

# Slackware architecture to install:
#SL_ARCH="x86_64"

# Root directory of a Slackware local mirror tree:
SL_REPO="/home/ftp/pub/Linux/Slackware"

# Directory where the live ISO image will be written:
OUTPUT="/tmp"

Btw. the repo root SL_REPO="/home/ftp/pub/Linux/Slackware is just fine as I've been able to create whole install iso's from it. Thank you very much in advance for any advices. ps. I'm sitting to long on this and can't see the forest for the trees I guess.

bassmadrigal 03-22-2017 12:21 PM

The script is stating that the file /home/ftp/pub/Linux/Slackware/slackware64-current/slackware64/a/tagfile is missing. Is it?

And out of curiosity, are you wanting to make your own customized Slackware Live ISO? If not, Eric has several ISOs already available including a full Slackware installation, a PLASMA 5 version, as well as a stripped XFCE version that will fit on a CD... and there's other versions too.

Alien Bob 03-22-2017 03:48 PM

You call it 'liveslak' (the sources & scripts) or 'Slackware Live Edition' (the resulting product).

ansisys 03-26-2017 06:56 PM

Quote:

Originally Posted by bassmadrigal (Post 5686860)
The script is stating that the file /home/ftp/pub/Linux/Slackware/slackware64-current/slackware64/a/tagfile is missing. Is it?

And out of curiosity, are you wanting to make your own customized Slackware Live ISO? If not, Eric has several ISOs already available including a full Slackware installation, a PLASMA 5 version, as well as a stripped XFCE version that will fit on a CD... and there's other versions too.

Yes, I'm trying to make my own Slackware Live iso, the version with cinnamon, which is not available for some reason. Meanwhile I've managed to do the pure slackware iso, but when I start "CINNAMON" or any other one, then I get an error reading that slackpkg+.lst is missing in my liveslack/pkglists/. Strange, because according to numerous sources ie. http://docs.slackware.com/slackware:...ters_explained I should be doing ./make_slackware_live.sh -d CINNAMON -R 4 -s /my/own/repo and that should do the job, but it doesn't. Of course liveslack is cloned from git repository.

Any ideas why is that so? What is it, that I'm doing wrong? Can some one reproduce it or share a quick step by step recipe for getting the thing done?

Long story short.I tell you what I did. I cloned liveslack from git. Prior to that I synced the repo for slackware64-current (maybe I used wrong repo?). Then being in liveslack I've used make_slackware_live.conf to point/define, where my repo is. And in next step when I generate the cinnamon.iso, after few lines all I'm getting is an error line, that slackpkg+.lst is missing as stated above.

ansisys 03-26-2017 07:01 PM

Quote:

Originally Posted by Alien Bob (Post 5686970)
You call it 'liveslak' (the sources & scripts) or 'Slackware Live Edition' (the resulting product).

Right. The point is I'm not getting anywhere with this, whether it's called liveslack or slack live or whatever. See my post above. I'll shortly (now it's 2am here and I'm knackered) produce a step-by-step procedure that I'm following and would kindly hope if you'd tell me where is my error.

bassmadrigal 03-26-2017 08:03 PM

Make sure you aren't pointing directly to the version of Slackware you want, but rather the parent directory that contains your various Slackware versions. I ran into the same issue as you when I specified slackware64-current's directory, but it proceeded as normal when I referenced the parent directory.

Code:

root@febtober:~/liveslak# ./make_slackware_live.sh -d CINNAMON -R 4 -s /mnt/hd/slackware-mirrors/slackware64-current/
-- Loading configuration file.
-- Creating 'CINNAMON' image.
-- Installing the 'a' series.
-- Mandatory package list file '/mnt/hd/slackware-mirrors/slackware64-current//slackware64-current/slackware64/a/tagfile' is missing! Exiting.
root@febtober:#/liveslak$ ./make_slackware_live.sh -d CINNAMON -R 4 -s /mnt/hd/slackware-mirrors/
-- Loading configuration file.
-- Found an existing live root directory at '/mnt/slackwarelive'.
-- Check the content and deal with it, then remove that directory.
-- Exiting now.
root@febtober:~/liveslak# rm -r /mnt/slackwarelive/
rm: cannot remove '/mnt/slackwarelive/': Device or resource busy
root@febtober:#/liveslak$ mount
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda3 on /home type ext4 (rw)
gvfsd-fuse on /home/jbhansen/.gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=jbhansen)
10.0.0.152:/share/gothrough on /mnt/hd type nfs (rw,addr=10.0.0.152)
overlay on /mnt/slackwarelive type overlay (rw,lowerdir=/tmp/slackwarelive_staging/liveslak/bootinst,upperdir=/tmp/slackwarelive_staging/temp/a_22408,workdir=/tmp/slackwarelive_staging/temp/.ovlwork)
root@febtober:~/liveslak# umount /mnt/slackwarelive/
root@febtober:~/liveslak# rm -r /mnt/slackwarelive/
root@febtober:~/liveslak# ./make_slackware_live.sh -d CINNAMON -R 4 -s /mnt/hd/slackware-mirrors/
-- Loading configuration file.
-- Creating 'CINNAMON' image.
-- Installing the 'a' series.
-- Loading package list '/mnt/hd/slackware-mirrors//slackware64-current/slackware64/a/tagfile'.
aaa_base-14.2-x86_64-2: Basic Linux filesystem package ................. [90K]
aaa_elflibs-14.2-x86_64-28: shared libraries needed by many programs ... [23M]
^C*** ./make_slackware_live.sh FAILED at line 1 ***
--- Cleaning up the staging area...

NOTE: This mirror was set up using Eric's mirror-slackware-current.sh script (and it was mirrored to my 14.1 machine, which is why I had it mounted via NFS to this machine) and I cloned his liveslak scripts to my home directory. I didn't let it continue after it started processing packages and used Ctrl+C to end it.

Alien Bob 03-27-2017 04:45 AM

Quote:

Originally Posted by ansisys (Post 5688583)
Right. The point is I'm not getting anywhere with this, whether it's called liveslack or slack live or whatever. See my post above. I'll shortly (now it's 2am here and I'm knackered) produce a step-by-step procedure that I'm following and would kindly hope if you'd tell me where is my error.

Bassmadrigal asked you a relevant question after your initial posting. Finding the answer to that one, will most likely get you to the root cause of the issue you are having.

ansisys 03-27-2017 10:31 AM

Quote:

Originally Posted by Alien Bob (Post 5688709)
Bassmadrigal asked you a relevant question after your initial posting. Finding the answer to that one, will most likely get you to the root cause of the issue you are having.

Which question do you believe hasn't been answered then? As far as I can tell I've answered the questions. All of them really. Directly or indirectly.You, who wrote the script should know it best :) Anyway, I'll try with the script of yours which apparently should help creating the repo as such, then I believe that is a cracking point, where I might have been off the track a bit, if compared. Nevertheless I still don't know why the initial make_slackware_live.sh is seeking for the slackpkg+.lst file in directory of liveslak-1.1.6.3. I understand it is looking for the similar *.lst files in there, when doing the XFCE or MATE respectively.but slackpgk+.lst should be there already with all the others, shouldn't it? Anyway I'm at work at the moment so it'd be a tick or two before I try doing the CINNAMON thing again :) Wish me luck.

Alien Bob 03-27-2017 12:40 PM

ansisys, fair enough.
And I think your reply about the slackpkg+ error pointed me to an issue with creating a non-SLACKWARE ISO (i.e. cinnamon) if you clone the git repository instead of downloading from a mirror like http://www.slackware.com/~alien/liveslak/ .
The issue? THe script expects to find a locally mirrored slackpkg+ package under ./local64/ and does not handle its absense gracefully. I will fix that by using the official slackpkg+ package location as a fallback (indeed, a .lst and a .conf file need to be added).

kyknos123 03-27-2017 02:13 PM

if you are interested in my way follow first him my post #11
http://www.linuxquestions.org/questi...on-4175562149/

Alien Bob 03-27-2017 02:23 PM

Quote:

Originally Posted by kyknos123 (Post 5688919)
if you are interested in my way follow first him my post #11
http://www.linuxquestions.org/questi...on-4175562149/

Yeah but that was not the OP's question was it? You are using SLAX live scripts, which allows to wrap your already installed Slackware computer harddisk into a Live ISO.
On the other hand, liveslak builds a Live version of Slackware from scratch.

kyknos123 03-27-2017 03:30 PM

Quote:

Originally Posted by Alien Bob (Post 5688924)
Yeah but that was not the OP's question was it? You are using SLAX live scripts, which allows to wrap your already installed Slackware computer harddisk into a Live ISO.
On the other hand, liveslak builds a Live version of Slackware from scratch.

yes this is the first part of creation live slack and this http://www.linuxquestions.org/questi...em-4175587187/ my explanation post #5 after completion of final creation live slack iso manual without some installer how to new install backup iso slack.

what is my meaning I want to give; My idea is to give to anyone who wants to experiment by himself someone to experience that you can make and those a custom distribution not only in slackware but anyone distribution by the same method.
Can you get any distribution for example centos live scripts and ready lib modules and use for ubuntu,slackware,etc or and the hitch, manjaro arch based use scripts and lib modules for slackware no matter if it is the slax or any slax, Displaying meaningful;

PS: without I want to do advertising if you do not bother see How can I make live encrypting ubuntu with centos scripts https://www.youtube.com/watch?v=r_g3_CxGxKs

ansisys 03-28-2017 06:57 AM

Quote:

Originally Posted by Alien Bob (Post 5688883)
ansisys, fair enough.
And I think your reply about the slackpkg+ error pointed me to an issue with creating a non-SLACKWARE ISO (i.e. cinnamon) if you clone the git repository instead of downloading from a mirror like http://www.slackware.com/~alien/liveslak/ .
The issue? THe script expects to find a locally mirrored slackpkg+ package under ./local64/ and does not handle its absense gracefully. I will fix that by using the official slackpkg+ package location as a fallback (indeed, a .lst and a .conf file need to be added).

Thank you. I just cloned the liveslack repo using git. On other screen sessioni I did sync the the x86_64 slack repo with ./mirror-slackware-current.sh -f -a x86_64 -m rsync.slackware.pl::slackware/slackware-current -o NONE -v and apparently it went through with exit code 0. So far so good. Now the most interesting part

./make_slackware_live.sh -a x86_64 -d CINNAMON -s /home/ftp/pub/Linux/Slackware -v -R 4

and it died again but this time due to different issue I guess:
Code:

2017-03-28 10:50:57 URL:http://slackware.uk/msb/current/latest/x86_64/PACKAGES.TXT [30363/30363] -> "/tmp/slackpkg.XJ4d4R/SLACKPKGPLUS_mate-PACKAGES.TXT" [1]
        Formatting lists to slackpkg style...
                Package List: using CHECKSUMS.md5 as source
                Package descriptions

cpio: premature end of file
*** ./make_slackware_live.sh FAILED at line 1356 ***
--- Cleaning up the staging area...
umount: /mnt/slackwarelive/sys: not mounted
umount: /mnt/slackwarelive/proc: not mounted
umount: /mnt/slackwarelive/dev: not mounted
umount: /mnt/slackwarelive: target is busy
        (In some cases useful info about processes that
        use the device is found by lsof(8) or fuser(1).)
umount: /tmp/slackwarelive_staging/temp/zzzconf_3381: not mounted
rmdir: failed to remove '/mnt/slackwarelive': Device or resource busy
rmdir: failed to remove '/tmp/slackwarelive_staging/temp/zzzconf_3381': Directory not empty
rm: cannot remove '/tmp/slackwarelive_staging/liveslak/optional/*': No such file or directory
rm: cannot remove '/tmp/slackwarelive_staging/liveslak/addons/*': No such file or directory


Alien Bob 03-28-2017 09:54 AM

The line where the error occurs is "uncompressfs ${DEF_SL_PKGROOT}/../isolinux/initrd.img | cpio -i -d -H newc --no-absolute-filenames <etcetera>" where:
Code:

# Package root directory, arch dependent:
SL_PKGROOT=${SL_REPO}/${DISTRO}${DIRSUFFIX}-${SL_VERSION}/${DISTRO}${DIRSUFFIX}
DEF_SL_PKGROOT=${SL_PKGROOT}

And ${SL_REPO} has the value of your "-s" parameter.
For Slackware 64bit -current and your commandline example, the location where the initrd image (which is a cpio archive) is expected to be found, would be expanded by the script to "/home/ftp/pub/Linux/Slackware/slackware64-current/isolinux/initrd.img". Does that file exist?

ansisys 03-29-2017 04:22 AM

Quote:

Originally Posted by Alien Bob (Post 5689248)
The line where the error occurs is "uncompressfs ${DEF_SL_PKGROOT}/../isolinux/initrd.img | cpio -i -d -H newc --no-absolute-filenames <etcetera>" where:
Code:

# Package root directory, arch dependent:
SL_PKGROOT=${SL_REPO}/${DISTRO}${DIRSUFFIX}-${SL_VERSION}/${DISTRO}${DIRSUFFIX}
DEF_SL_PKGROOT=${SL_PKGROOT}

And ${SL_REPO} has the value of your "-s" parameter.
For Slackware 64bit -current and your commandline example, the location where the initrd image (which is a cpio archive) is expected to be found, would be expanded by the script to "/home/ftp/pub/Linux/Slackware/slackware64-current/isolinux/initrd.img". Does that file exist?

I believe it does.

Code:

ovo:~/Downloads# ls -lha /home/ftp/pub/Linux/Slackware/slackware64-current/isolinux/
total 49M
drwxr-xr-x  3 root root 4.0K Dec 12 02:43 .
drwxr-xr-x 10 root root 4.0K Mar 23 23:10 ..
-rw-r--r--  1 root root 5.5K Sep 25  2013 README.TXT
-rw-r--r--  1 root root  788 Mar 17  2007 README_SPLIT.TXT
-rw-r--r--  1 root root  942 Oct 24  2013 f2.txt
-rw-r--r--  1 root root  49M Dec 12 02:43 initrd.img
-rw-r--r--  1 root root  50 Jan 18  2003 iso.sort
-rw-r--r--  1 root root  24K May 27  2016 isolinux.bin
-rw-r--r--  1 root root  888 Mar 27  2013 isolinux.cfg
-rw-r--r--  1 root root  872 Dec 12 02:24 message.txt
drwxr-xr-x  2 root root 4.0K Mar 17  2003 sbootmgr
-rw-r--r--  1 root root 3.0K Aug 16  2013 setpkg

Any ideas? Have you managed to create CINNAMON live? If yes, can you please provide
1. mirror script you're using
2. command that you used to do the mirror itself
3. command to get liveslack cloned
4. command to get CINNAMON live iso produced

I'd be pretty much thankful for that. :)


All times are GMT -5. The time now is 10:14 AM.