Skip to content

Commit

Permalink
added tails, parrot, neptune, wmlive and wattOS
Browse files Browse the repository at this point in the history
  • Loading branch information
ColumPaget committed Aug 27, 2023
1 parent f0e0389 commit 7615c1a
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 17 deletions.
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,8 @@ distroflash.lua has been seen to work with the following distributions. If anyon
* KNOPPIX 8.6.1
* Manjaro 20.1.2
* Memtest86+
* Neptune 8
* ParrotOS 5.3
* Peppermint 10
* PhoenixOS
* PCLinixOS
Expand All @@ -111,13 +113,15 @@ distroflash.lua has been seen to work with the following distributions. If anyon

## Finiky, can be made to install

* 4MLinux - destination disk must be /dev/sda
* TinyCorePlus - has to be told path to core.gz to install (see 'Finiky installs' below)
* Puppy Linux slacko 6.3.2 - complex install process (see 'Finiky installs' below)
* Puppy Linux tahr 6.0.5 - complex install process (see 'Finiky installs' below)
* Puppy Linux tahr 6.0.5 - complex install process (see 'Finiky installs' below)
* Salix 14.2 - has to be told to install from harddrive, and given both the device name and path to files on disk
* Calculate Linux - has been seen to install to a vm. Installer has issues with some graphics cards.
* CentOS Linux 8.1 - has been seen to install to a vm. Installer crashes on some hardware.
* WattOS R12 - installer fails if live distro not connected to internet

## Runs live. Might also install from usb to hard-drive if you really know how and the wind is in the right direction

Expand All @@ -137,7 +141,8 @@ distroflash.lua has been seen to work with the following distributions. If anyon
* Nst Linux 30-11210 - runs live, but installer refuses to install from mounted usb key
* Puppy Linux xenialpup 7.5 - installs, but installed system doesn't seem to boot
* Slitaz-rolling - installer can't find installation files

* Tails 5 - refuses to install except to usb drives
* WMLive


## Finiky installs
Expand Down
23 changes: 18 additions & 5 deletions distroflash.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
# which is the directory name that the distro will be installed to on disk

# Distros that work as installers (this is the main focus of distroflash.lua)


name="AndroidX86" id="isolinux/android-x86.png" install_type=iso kernel="kernel" initrd="initrd.img" append="iso-scan/filename=$(distdir)/$(isoname) androidboot.selinux=permissive INSTALL=1"
name="PhoenixOS" id="cdlabel:Phoenix OS *" install_type=iso kernel="kernel" initrd="initrd.img" append="iso-scan/filename=$(distdir)/$(isoname) androidboot.selinux=permissive INSTALL=1"
name="AntiX" id="antiX/vmlinuz" kernel="antiX/vmlinuz" initrd="antiX/initrd.gz" append="bdir=$(distdir)/antiX rootdelay=5 from=usb,cd,hd splasht disable=lxF xorg=safe"
Expand All @@ -16,6 +18,8 @@ name="lUbuntu" id="preseed/lubuntu.seed" kernel="casper/vmlinuz" initrd="" appen
name="Manjaro" install_type=iso id="manjaro" kernel="boot/vmlinuz-x86_64" initrd="boot/initramfs-x86_64.img" append="img_dev=UUID:$(uuid) img_loop=$(distdir)/$(isoname) earlymodules=loop misobasedir=manjaro"
name="Memtest86+" install_type=iso id="cdlabel:MT5*" kernel="memdisk" initrd="/$(isoname)" append="iso"
name="Mint" id="preseed/linuxmint.seed" kernel="casper/vmlinuz" initrd="casper.initrd.lz" append="file=$(distdir)/preseed/linuxmint.seed boot=casper xforcevesa ignore_uuid live-media-path=$(distdir)/casper"
name="Neptune" id="cdlabel:Neptune*" install_type=iso kernel="live/vmlinuz" initrd="live/initrd.img" append="boot=live findiso=$(distdir)/$(isoname) hostname=live-pc username=user live-config.user-default-groups=sambashare,cdrom,floppy,audio,dip,video,plugdev,netdev,lpadmin,scanner,bluetooth,adm swap=true apparmor=0 splash noprompt quiet"
name="Parrot" id="live/vmlinuz*parrot*" install_type=iso kernel="live/vmlinuz" initrd="live/initrd.img" append="boot=live components splash findiso=$(distdir)/$(isoname)"
name="PCLinuxOS" id="EFI/BOOT/themes/pclinuxos" kernel="isolinux/vmlinuz" initrd="isolinux/initrd.gz" append="livecd=$(distdir)/livecd nomodeset xdriver=vesa"
name="Peppermint" id="preseed/peppermint.seed" kernel="casper/vmlinuz" initrd="casper/initrd*" append="noprompt cdrom-detect/try-usb=true file=/$(distdir)/preseed/peppermint.seed boot=casper ignore_uuid live-media-path=$(distdir)/casper quiet splash --"
name="Porteus" id="porteus" kernel="boot/syslinux/vmlinuz" initrd="boot/syslinux/initrd*" append="from=$(distdir)"
Expand All @@ -28,8 +32,12 @@ name="SparkyLinux" id="live/sparkylinux*" kernel="live/vmlinuz" initrd="live/ini
name="SpinRite" install_type=iso id="SPINRITE.EXE" kernel="memdisk" initrd="/$(isoname)" append="iso"
name="Trisquel" id="preseed/trisquel.seed" kernel="casper/vmlinuz" initrd="casper/initrd" append="file=$(distdir)/preseed/linuxmint.seed ignore_uuid boot=casper live-media-path=$(distdir)/casper --"
name="Knoppix" id="KNOPPIX,boot/isolinux/minirt.gz" kernel="boot/isolinux/linux" initrd="boot/isolinux/minirt.gz" append="knoppix_dir=$(distdir)/KNOPPIX"
name="Ubuntu" id="casper/vmlinuz" kernel="casper/vmlinuz" initrd="casper/initrd" append="file=$(distdir)/preseed/custom.seed boot=casper ignore_uuid live-media-path=$(distdir)/casper"
name="Void" install_type=iso id="boot/grub/grub_void.cfg" kernel=boot/vmlinuz initrd=boot/initrd append="iso-scan/filename=$(distdir)/$(isoname) root=live:LABEL=$(cdlabel)"
name="WattOS" id="cdlabel:wattOS*" install_type=iso kernel="live/vmlinuz" initrd="live/initrd" append="boot=live components splash findiso=$(distdir)/$(isoname)"


#seen to work, though the installer is a bit primative and hard to use
name="4MLinux" id="cdlabel:CDROM*" kernel="live/vmlinuz" initrd="/boot/initrd.gz" append="root=/dev/ram0 vga=normal"


# Distros that have been seen to install, but have issues on some hardware or are difficult to install
Expand All @@ -52,8 +60,13 @@ name="Slax" id="slax/boot/vmlinuz" kernel="slax/boot/vmlinuz" initrd="slax/boot/
name="Slitaz" id="boot/vmlinuz-*-slitaz" kernel="boot/bzImage" initrd="" append="initrd=$(distdir)/boot/rootfs4.gz,$(distdir)/boot/rootfs3.gz,$(distdir)/boot/rootfs2.gz,$(distdir)/boot/rootfs1.gz rw root=/dev/null vga=normal autologin"
name="SystemRescueCD" id="sysresccd" kernel="sysresccd/boot/i686/vmlinuz" initrd="sysresccd/boot/i686/sysresccd.img" append="archisobasedir=/$(distdir)/sysresccd archisodevice=/dev/disk/by-uuid/$(uuid)"
name="NST" id="README.nst" kernel="isolinux/vmlinuz0" initrd="isolinux/initrd0.img" append="append root=live:UUID=$(uuid) rootfstype=auto ro liveimg quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 xdriver=vesa nomodeset live_dir=$(distdir)/LiveOS rd.live.image"
name="Tails" id="cdlabel:TAILS*" kernel="live/vmlinuz" initrd="live/initrd.img" append="timezone=Etc/UTC boot=live config live-media-path=$(distdir)/live nopersistent noprompt quiet block.events_dfl_poll_msecs=1000 splash nox11autologin quiet"
name="WMLive" id="cdlabel:wmlive*" kernel="live/vmlinuz" initrd="live/initrd" append="boot=live components live-media-path=/$(distdir)/live"


#fallback 'generic' distrotypes
name="debian-generic" install_type=iso id="live/filesystem.squashfs" kernel="live/vmlinuz" initrd="live/initrd" append="boot=live components findiso=$(distdir)/$(isoname)"
name="Ubuntu" id="preseed/custom.seed" kernel="casper/vmlinuz" initrd="casper/initrd" append="file=$(distdir)/preseed/custom.seed boot=casper live-media=/dev/disk/by-PARTUUID/$(uuid) live-media-path=$(distdir)/casper"
name="casper-generic" id="casper" kernel="casper/vmlinuz" initrd="casper/initrd*" append="cdrom-detect/try-usb=true noprompt boot=casper live-media-path=$(distdir)/casper live-media=/dev/disk/by-PARTUUID/$(uuid) quiet splash --"



Expand All @@ -68,15 +81,15 @@ name="NST" id="README.nst" kernel="isolinux/vmlinuz0" initrd="isolinux/initrd0.i
#name="Debian" install_type=iso id="doc/debian-manifesto" append="boot=live findiso=$(distdir)/$(isoname) components quiet splash"
#name="Qubes" id="isolinux/xen.gz" kernel=isolinux/mboot.c32 initrd="" append="xen.gz --- vmlinuz inst.stage2=hd:UUID=$(uuid):/$(distdir) xdriver=vesa nomodeset --- initrd.img"
#name=OpenMandriva id="boot/liveinitrd.img" kernel="boot/vmlinuz0" initrd="boot/liveinitrd.img" append="root=live:UUID=$(uuid) rootfstype=auto ro liveimg rhgb xdriver=vesa nobodeset rd.live.dir=$(distdir)/LiveOS rd.live.image"
#name="4mLinux" id="" kernel="boot/bzImage" initrd="boot/initrd.gz" append="root=/dev/ram0 vga=normal"
#name="openSUSE" install_type=iso id="SUSEgo.png" kernel="boot/i386/loader/linux" initrd="boot/i386/loader/initrd" append="root=live:CDLABEL=openSUSE-Leap-15.3 iso-scan/filename=$(distdir)/$(isoname)"
#name="Freedos", install_type=iso id="freedos" kernel="isolinux/memdisk" initrd="isolinux/fdlive.img"
#name="Debian" install_type=iso id="doc/debian-manifesto" append="boot=live findiso=$(distdir)/$(isoname) components quiet splash"
#name="OpenSUSE" install_type=iso id="SUSEgo.png" kernel="boot/x86_64/loader/linux" initrd="boot/x86_64/loader/initrd" append="root=live:CDLABEL=$(cdlabel) rd.live.image iso-scan=$(distdir)/$(isoname) isofrom_system=$(distdir)/$(isoname)"
#name="BunsenLabs" install_type=iso id="cdlabel:BUNSENLABS*" append="boot=live findiso=$(distdir)/$(isoname) components quiet splash"
#name="Pop OS" id="cdlabel:Pop_OS*" kernel="casper/vmlinuz.efi" initrd="casper/initrd.gz" append="boot=casper ignore_uuid live-media-path=$(distdir)/casper hostname=pop-os username=pop-os noprompt"
#name="Artix" id="cdlabel:ARTIX*" kernel="boot/vmlinuz-x86_64" initrd="boot/initramfs-x86_64.img" append="root=live:UUID=$(uuid) quiet rd.live.ram=1 rd.live.dir=$(distdir)/LiveOS rd.live.image inst.stage2=uuid:UUID=$(uuid)"
#name="Frugalware" id="cdlabel:FVBE*" install_type=iso kernel="boot/vmlinuz" initrd="boot/initrd" append="inst.repo=hd:UUID=$(uuid):/$(distdir)/$(noname) quiet locale.LANG=$locale vconsole.keymap=$layout vconsole.font=ter-v16b $video"
#name="openSUSE" install_type=iso id="SUSEgo.png" kernel="boot/i386/loader/linux" initrd="boot/i386/loader/initrd" append="root=live:CDLABEL=$(cdlabel) iso-scan/filename=$(distdir)/$(isoname)"
#name="Garuda" install_type=iso id="garuda" kernel="boot/vmlinuz-x86_64" initrd="boot/initramfs-x86_64.img" append="img_dev=UUID:$(uuid) img_loop=$(distdir)/$(isoname) earlymodules=loop misobasedir=garuda"
#name="Devuan" install_type=iso id="devuan" kernel="boot/isolinux/linux" initrd="boot/isolinux/preamble.gz" append="vga=788 nomodeset findiso=$(distdir)/$(isoname) initrd=/boot/isolinux/preamble.gz --- quiet"
#name="PureOS" id="cdlabel:PureOS *" kernel="casper/vmlinuz" initrd="casper/initrd*" append="noprompt boot=casper live-media-path=$(distdir)/casper live-media=/dev/disk/by-PARTUUID/$(uuid) quiet splash --"


26 changes: 15 additions & 11 deletions distroflash.lua
Original file line number Diff line number Diff line change
Expand Up @@ -289,17 +289,21 @@ distro.root_files={}
distro.cdlabel=ISOGetLabel(path)

mnt="/tmp/.iso_"..process.getpid()
filesys.mkdir(mnt)
if filesys.mkdir(mnt) == true
then
os.execute(Settings.programs["mount"] .. " -oloop,ro '"..path.."' '"..mnt.."'")

os.execute(Settings.programs["mount"] .. " -oloop,ro '"..path.."' '"..mnt.."'")
distro.mnt=mnt.."/"
CategorizeISO(distro)

distro.mnt=mnt.."/"
CategorizeISO(distro)
if distro.kernel == "" then distro.kernel=ISOFindItem(kernel_names, distro.mnt) end
if distro.initrd == "" then distro.initrd=ISOFindItem(initrd_names, distro.mnt) end

if distro.kernel == "" then distro.kernel=ISOFindItem(kernel_names, distro.mnt) end
if distro.initrd == "" then distro.initrd=ISOFindItem(initrd_names, distro.mnt) end
Out:puts("~c"..filesys.basename(path).."~0 DISTRO: ~e"..distro.name.."~0 kernel="..distro.kernel.." initrd="..distro.initrd.." cdlabel="..distro.cdlabel .. "\n")
else
Out:puts("~rERROR:~0 cannot create ISO mount-point " .. path .. "\n")
end

Out:puts("~c"..filesys.basename(path).."~0 DISTRO: ~e"..distro.name.."~0 kernel="..distro.kernel.." initrd="..distro.initrd.." cdlabel="..distro.cdlabel .. "\n")
return distro
end

Expand Down Expand Up @@ -487,11 +491,11 @@ local from, to
-- must do this here, in case we reformatted the disk. Every new filesystem has a new uuid.
Settings.DestUUID=PartitionUUID(Settings.InstallDest)

if filesys.mount(Settings.InstallDest, Settings.MountPoint, "vfat") ==true
if filesys.mount(Settings.InstallDest, Settings.MountPoint, "vfat") == true
then
print("mounted: "..Settings.InstallDest.." on "..Settings.MountPoint )
Out:puts("~gmounted:~0 "..Settings.InstallDest.." on "..Settings.MountPoint .. "\n")
else
print("mount failed: "..Settings.InstallDest.." on "..Settings.MountPoint )
Out:puts("~rERROR:~0 mount failed: "..Settings.InstallDest.." on "..Settings.MountPoint .. "\n")
end

end
Expand Down Expand Up @@ -650,7 +654,7 @@ end
function InitConfig()
local str

Settings.Version="3.5"
Settings.Version="3.6"
Settings.MountPoint="/mnt"
str=string.gsub(process.getenv("PATH"), "/bin", "/share")
Settings.SyslinuxDir=filesys.find("syslinux", str)
Expand Down

0 comments on commit 7615c1a

Please sign in to comment.