Alla fine anche io mi sono fatto una versione più completa.
Okkio che la tua versione impone di avere le iso su disco.
Io avevo la iso della x64 e il cd della x32
Dal momento che le presumo già montate non necessito di essere root per creare la nuova immagine.
Codice: Seleziona tutto
#!/bin/bash
set -e
set -x
CWD=$(pwd)
# i path dove si trovano i due rami
X86=$CWD/slack32
X64=$CWD/slack64
WORK=$CWD/workdir
rm -fr $WORK
mkdir -p $WORK
cd $WORK
mkdir -p isolinux kernels
ln -s $X86/isolinux/initrd.img isolinux/initrd.img
ln -s $X64/isolinux/initrd.img isolinux/initrd64.img
ln -s $X86/kernels/hugesmp.s kernels/hugesmp.s
ln -s $X86/kernels/huge.s kernels/huge.s
ln -s $X64/kernels/huge.s kernels/huge64.s
ln -s $X86/kernels/speakup.s kernels/speakup.s
ln -s $X64/kernels/speakup.s kernels/speakup64.s
cp $X86/isolinux/iso.sort isolinux/iso.sort
cp $X86/isolinux/isolinux.bin isolinux/isolinux.bin
ln -s $X86/slackware slackware
ln -s $X64/slackware64 slackware64
ln -s $X86/usb-and-pxe-installers usb-and-pxe-installers
ln -s $X64/usb-and-pxe-installers usb-and-pxe-installers64
cat $X86/isolinux/message.txt |grep -m1 Welcome > isolinux/message.txt
cat >> isolinux/message.txt << EOF
This DVD contain both Slackware 32bit and Slackware 64bit in a single face :-)
You can start Slackware 32bit Installer typing 'slack32' or simply press ENTER
You can start Slackware 64bit Installer typing 'slack64'
If you want (for 32bit system) a non smp kernel, type slack32nosmp
If you need to pass extra parameters to the kernel, enter them at the prompt
below after the name of the kernel to boot (slack32 or slack64).
In a pinch, you can boot your system from here with a command like:
boot: slack32 root=/dev/sda1 rdinit= ro
In the example above, /dev/sda1 is the / Linux partition.
EOF
cat > isolinux/isolinux.cfg << EOF
default slack32
prompt 1
timeout 1200
display message.txt
label slack32
kernel /kernels/hugesmp.s/bzImage
append initrd=initrd.img load_ramdisk=1 prompt_ramdisk=0 rw SLACK_KERNEL=hugesmp.s
label slack32nosmp
kernel /kernels/huge.s/bzImage
append initrd=initrd.img load_ramdisk=1 prompt_ramdisk=0 rw SLACK_KERNEL=huge.s
label slack64
kernel /kernels/huge64.s/bzImage
append initrd=initrd64.img load_ramdisk=1 prompt_ramdisk=0 rw SLACK_KERNEL=huge64.s
EOF
mkdir -p extra extra64
ln -s $X86/* extra
ln -s $X64/* extra64
rm extra/source extra64/source
mkdir -p testing testing64
ln -s $X86/* testing
ln -s $X64/* testing64
rm testing/source testing64/source
mkdir -p pasture pasture64
ln -s $X86/* pasture
ln -s $X64/* pasture64
rm pasture/source pasture64/source
ln -s $X64/misc .
ln -s $X86/[A-Z]* .
ln -s $X64/READ_DVD.TXT READ_DVD64.TXT
ln -s $X64/README.initrd README64.initrd
ln -s $X64/README.TXT README64.TXT
ln -s $X64/PACKAGES.TXT PACKAGES64.TXT
ln -s $X64/FILELIST.TXT FILELIST64.TXT
ln -s $X64/ChangeLog.txt ChangeLog64.txt
ln -s $X64/CHECKSUMS.md5.asc CHECKSUMS64.md5.asc
ln -s $X64/CHECKSUMS.md5 CHECKSUMS64.md5
# mi raccomando il '-f'
mkisofs -f -o $CWD/slackware-mix-dvd.iso \
-R -J -A "Slackware32_64" \
-hide-rr-moved \
-v -d -N \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-sort isolinux/iso.sort \
-b isolinux/isolinux.bin \
-c isolinux/isolinux.boot \
-V "SlackDVDmix" .
sono 3.9G
Codice: Seleziona tutto
$ ls -1 iso/
ANNOUNCE.13_1
BOOTING.TXT
CHANGES_AND_HINTS.TXT
CHECKSUMS.md5
CHECKSUMS.md5.asc
CHECKSUMS64.md5
CHECKSUMS64.md5.asc
COPYING
COPYING3
COPYRIGHT.TXT
CRYPTO_NOTICE.TXT
ChangeLog.txt
ChangeLog64.txt
FAQ.TXT
FILELIST.TXT
FILELIST64.TXT
GPG-KEY
PACKAGES.TXT
PACKAGES64.TXT
README.TXT
README.initrd
README64.TXT
README64.initrd
README_CRYPT.TXT
README_LVM.TXT
README_RAID.TXT
READ_DVD.TXT
READ_DVD64.TXT
RELEASE_NOTES
SPEAKUP_DOCS.TXT
SPEAK_INSTALL.TXT
Slackware-HOWTO
UPGRADE.TXT
extra/
extra64/
isolinux/
kernels/
misc/
pasture/
pasture64/
slackware/
slackware64/
testing/
testing64/
usb-and-pxe-installers/
usb-and-pxe-installers64/
C'era altro che volevo fare, ma ormai la mia immagine me la sono creata e masterizzata

, e non ho molto tempo per fare altro.
comunque grazie del contributo.
Ciao
01