From a25ae51162c525d795673f06f75079ec5caa5d90 Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Thu, 24 Jan 2013 11:50:02 +0100 Subject: [PATCH] lorax: add lorax-templates-qubes package - for now with fc18 templates --- Makefile | 14 +- .../lorax-templates-qubes.spec | 47 +++ .../templates/appliance/libvirt.tmpl | 35 ++ lorax-templates-qubes/templates/arm.tmpl | 92 +++++ .../config_files/common/bash_history | 8 + .../templates/config_files/common/i18n | 1 + .../config_files/common/libuser.conf | 10 + ...me.desktop.wm.keybindings.gschema.override | 21 ++ .../templates/config_files/common/pam.sshd | 9 + .../templates/config_files/common/profile | 3 + .../templates/config_files/common/resolv.conf | 0 .../config_files/common/rsyslog.conf | 49 +++ .../config_files/common/selinux.config | 2 + .../config_files/common/sshd_config.anaconda | 17 + .../templates/config_files/common/sysctl.conf | 1 + .../templates/config_files/ppc/bootinfo.txt | 169 +++++++++ .../templates/config_files/ppc/magic | 81 ++++ .../templates/config_files/ppc/mapping | 27 ++ .../templates/config_files/ppc/ofboot.b | 74 ++++ .../config_files/ppc/yaboot.conf.3264 | 16 + .../templates/config_files/ppc/yaboot.conf.in | 9 + .../templates/config_files/s390/generic.ins | 5 + .../templates/config_files/s390/generic.prm | 1 + .../templates/config_files/s390/redhat.exec | 9 + .../templates/config_files/sparc/boot.msg | 9 + .../templates/config_files/sparc/silo.conf | 18 + .../templates/config_files/x86/boot.msg | 5 + .../templates/config_files/x86/grub.conf | 13 + .../templates/config_files/x86/grub2-efi.cfg | 31 ++ .../templates/config_files/x86/isolinux.cfg | 108 ++++++ lorax-templates-qubes/templates/efi.tmpl | 54 +++ lorax-templates-qubes/templates/live/arm.tmpl | 79 ++++ .../templates/live/config_files/x86/boot.msg | 5 + .../templates/live/config_files/x86/grub.conf | 13 + .../live/config_files/x86/grub2-efi.cfg | 31 ++ .../live/config_files/x86/isolinux.cfg | 99 +++++ lorax-templates-qubes/templates/live/efi.tmpl | 53 +++ lorax-templates-qubes/templates/live/ppc.tmpl | 117 ++++++ .../templates/live/s390.tmpl | 33 ++ .../templates/live/sparc.tmpl | 38 ++ lorax-templates-qubes/templates/live/x86.tmpl | 77 ++++ lorax-templates-qubes/templates/ppc.tmpl | 123 ++++++ .../templates/runtime-cleanup.tmpl | 352 ++++++++++++++++++ .../templates/runtime-install.tmpl | 133 +++++++ .../templates/runtime-postinstall.tmpl | 102 +++++ lorax-templates-qubes/templates/s390.tmpl | 38 ++ lorax-templates-qubes/templates/sparc.tmpl | 38 ++ lorax-templates-qubes/templates/x86.tmpl | 91 +++++ 48 files changed, 2357 insertions(+), 3 deletions(-) create mode 100644 lorax-templates-qubes/lorax-templates-qubes.spec create mode 100644 lorax-templates-qubes/templates/appliance/libvirt.tmpl create mode 100644 lorax-templates-qubes/templates/arm.tmpl create mode 100644 lorax-templates-qubes/templates/config_files/common/bash_history create mode 100644 lorax-templates-qubes/templates/config_files/common/i18n create mode 100644 lorax-templates-qubes/templates/config_files/common/libuser.conf create mode 100644 lorax-templates-qubes/templates/config_files/common/org.gnome.desktop.wm.keybindings.gschema.override create mode 100644 lorax-templates-qubes/templates/config_files/common/pam.sshd create mode 100644 lorax-templates-qubes/templates/config_files/common/profile create mode 100644 lorax-templates-qubes/templates/config_files/common/resolv.conf create mode 100644 lorax-templates-qubes/templates/config_files/common/rsyslog.conf create mode 100644 lorax-templates-qubes/templates/config_files/common/selinux.config create mode 100644 lorax-templates-qubes/templates/config_files/common/sshd_config.anaconda create mode 100644 lorax-templates-qubes/templates/config_files/common/sysctl.conf create mode 100644 lorax-templates-qubes/templates/config_files/ppc/bootinfo.txt create mode 100644 lorax-templates-qubes/templates/config_files/ppc/magic create mode 100644 lorax-templates-qubes/templates/config_files/ppc/mapping create mode 100644 lorax-templates-qubes/templates/config_files/ppc/ofboot.b create mode 100644 lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.3264 create mode 100644 lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.in create mode 100644 lorax-templates-qubes/templates/config_files/s390/generic.ins create mode 100644 lorax-templates-qubes/templates/config_files/s390/generic.prm create mode 100644 lorax-templates-qubes/templates/config_files/s390/redhat.exec create mode 100644 lorax-templates-qubes/templates/config_files/sparc/boot.msg create mode 100644 lorax-templates-qubes/templates/config_files/sparc/silo.conf create mode 100644 lorax-templates-qubes/templates/config_files/x86/boot.msg create mode 100644 lorax-templates-qubes/templates/config_files/x86/grub.conf create mode 100644 lorax-templates-qubes/templates/config_files/x86/grub2-efi.cfg create mode 100644 lorax-templates-qubes/templates/config_files/x86/isolinux.cfg create mode 100644 lorax-templates-qubes/templates/efi.tmpl create mode 100644 lorax-templates-qubes/templates/live/arm.tmpl create mode 100644 lorax-templates-qubes/templates/live/config_files/x86/boot.msg create mode 100644 lorax-templates-qubes/templates/live/config_files/x86/grub.conf create mode 100644 lorax-templates-qubes/templates/live/config_files/x86/grub2-efi.cfg create mode 100644 lorax-templates-qubes/templates/live/config_files/x86/isolinux.cfg create mode 100644 lorax-templates-qubes/templates/live/efi.tmpl create mode 100644 lorax-templates-qubes/templates/live/ppc.tmpl create mode 100644 lorax-templates-qubes/templates/live/s390.tmpl create mode 100644 lorax-templates-qubes/templates/live/sparc.tmpl create mode 100644 lorax-templates-qubes/templates/live/x86.tmpl create mode 100644 lorax-templates-qubes/templates/ppc.tmpl create mode 100644 lorax-templates-qubes/templates/runtime-cleanup.tmpl create mode 100644 lorax-templates-qubes/templates/runtime-install.tmpl create mode 100644 lorax-templates-qubes/templates/runtime-postinstall.tmpl create mode 100644 lorax-templates-qubes/templates/s390.tmpl create mode 100644 lorax-templates-qubes/templates/sparc.tmpl create mode 100644 lorax-templates-qubes/templates/x86.tmpl diff --git a/Makefile b/Makefile index b46170b..8a07863 100644 --- a/Makefile +++ b/Makefile @@ -35,6 +35,7 @@ ANACONDA_VERSION := $(call spec_version,anaconda/anaconda.spec) FIRSTBOOT_VERSION := $(call spec_version,firstboot/firstboot.spec) QBSLOGOS_VERSION := $(call spec_version,qubes-logos/qubes-logos.spec) QBSRELEASE_VERSION := $(call spec_version,qubes-release/qubes-release.spec) +LORAXQBS_VERSION := $(call spec_version,lorax-templates-qubes/lorax-templates-qubes.spec) PUNGI_OPTS := --nosource --nodebuginfo --nogreedy --all-stages ifdef QUBES_RELEASE @@ -55,10 +56,10 @@ help: echo; \ exit 0; -.PHONY: rpms rpms_anaconda rpms_firstboot rpms_logos rpms_release \ - update-repo update-repo-testing clean +.PHONY: rpms rpms_anaconda rpms_firstboot rpms_logos rpms_release rpms_lorax \ + update-repo update-repo-testing clean iso -rpms: rpms_anaconda rpms_firstboot rpms_logos rpms_release +rpms: rpms_anaconda rpms_firstboot rpms_logos rpms_release rpms_lorax rpm --addsign `ls -d rpm/x86_64/*.rpm rpm/i686/*.rpm rpm/noarch/*.rpm 2>/dev/null` rpms-dom0: rpms @@ -68,6 +69,9 @@ rpms-vm: rpm/SOURCES/anaconda-$(ANACONDA_VERSION).tar.bz2: anaconda anaconda/anaconda.spec $(call package,anaconda,$(ANACONDA_VERSION)) +rpm/SOURCES/lorax-templates-qubes-$(LORAXQBS_VERSION).tar.bz2: lorax-templates-qubes lorax-templates-qubes/lorax-templates-qubes.spec + $(call package,lorax-templates-qubes,$(LORAXQBS_VERSION)) + rpm/SOURCES/firstboot-$(FIRSTBOOT_VERSION).tar.bz2: firstboot firstboot/firstboot.spec $(call package,firstboot,$(FIRSTBOOT_VERSION)) @@ -80,6 +84,9 @@ rpm/SOURCES/qubes-release-$(QBSRELEASE_VERSION).tar.bz2: qubes-release qubes-rel rpms_anaconda: rpm/SOURCES/anaconda-$(ANACONDA_VERSION).tar.bz2 rpmbuild $(RPMBUILD_DEFINES) -bb anaconda/anaconda.spec +rpms_lorax: rpm/SOURCES/lorax-templates-qubes-$(LORAXQBS_VERSION).tar.bz2 + rpmbuild $(RPMBUILD_DEFINES) -bb lorax-templates-qubes/lorax-templates-qubes.spec + rpms_firstboot: rpm/SOURCES/firstboot-$(FIRSTBOOT_VERSION).tar.bz2 rpmbuild $(RPMBUILD_DEFINES) -bb firstboot/firstboot.spec @@ -92,6 +99,7 @@ rpms_release: rpm/SOURCES/qubes-release-$(QBSRELEASE_VERSION).tar.bz2 RPMS = rpm/noarch/qubes-logos-$(QBSLOGOS_VERSION)-*.rpm \ rpm/noarch/qubes-release-$(QBSRELEASE_VERSION)-*.rpm \ rpm/noarch/qubes-release-notes-$(QBSRELEASE_VERSION)-*.rpm \ + rpm/noarch/lorax-templates-qubes-$(LORAXQBS_VERSION)-*.rpm \ rpm/x86_64/anaconda-$(ANACONDA_VERSION)-*.rpm \ rpm/x86_64/firstboot-$(FIRSTBOOT_VERSION)-*.rpm diff --git a/lorax-templates-qubes/lorax-templates-qubes.spec b/lorax-templates-qubes/lorax-templates-qubes.spec new file mode 100644 index 0000000..f14b196 --- /dev/null +++ b/lorax-templates-qubes/lorax-templates-qubes.spec @@ -0,0 +1,47 @@ +Name: lorax-templates-qubes +Version: 0.2 +Release: 1%{?dist} +Summary: Lorax templates for Qubes installation ISO + +Group: Applications/System +License: GPLv2+ +URL: http://www.qubes-os.org/ +Source0: %{name}-%{version}.tar.bz2 + +#BuildRequires: +Requires: lorax +BuildArch: noarch + +%description +Lorax templates for Qubes installation ISO. + +%prep +%setup -q + + +%build + +%install +rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT/usr/share/lorax-qubes +cp -r templates/* $RPM_BUILD_ROOT/usr/share/lorax-qubes/ + +%post +# pungi does not allow to specify alternative config, so must override the default one +if [ -r /etc/lorax/lorax.conf -a ! -r /etc/lorax/lorax-pre-qubes.conf ]; then + mv /etc/lorax/lorax.conf /etc/lorax/lorax-pre-qubes.conf +fi + +cat > /etc/lorax/lorax.conf << EOF +# Lorax configuration file +[lorax] +sharedir: /usr/share/lorax-qubes +EOF + +%files +%defattr(-,root,root,-) +/usr/share/lorax-qubes + + +%changelog + diff --git a/lorax-templates-qubes/templates/appliance/libvirt.tmpl b/lorax-templates-qubes/templates/appliance/libvirt.tmpl new file mode 100644 index 0000000..a739e63 --- /dev/null +++ b/lorax-templates-qubes/templates/appliance/libvirt.tmpl @@ -0,0 +1,35 @@ + + + ${name} + + + + ${arch} + + + + +%for disk, letter in zip(disks, xrange(97, 123)): + +%endfor + + + ${vcpus} + ${memory} +%for net in networks: + +%endfor + + + + +%for disk in disks: + + %if disk.checksum: + ${disk.checksum} + %endif + +%endfor + + + diff --git a/lorax-templates-qubes/templates/arm.tmpl b/lorax-templates-qubes/templates/arm.tmpl new file mode 100644 index 0000000..fdf5326 --- /dev/null +++ b/lorax-templates-qubes/templates/arm.tmpl @@ -0,0 +1,92 @@ +<%page args="kernels, runtime_img, runtime_base, basearch, outroot, arch"/> +<% +configdir="tmp/config_files/uboot" +PXEBOOTDIR="images/pxeboot" +BOOTDIR="boot" +KERNELDIR=PXEBOOTDIR +LIVEDIR="LiveOS" + +# different platforms use different kernel load addresses. +# include a 'baseline' kernel for no 'flavor'. +kernelAddress = { 'baseline' : '0x00008000', + 'highbank' : '0x00008000', + 'imx' : '0x90008000', + 'kirkwood' : '0x00008000', + 'mvebu' : '0x00008000', + 'omap' : '0x80008000', + 'tegra' : '0x00008000', + } +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +# Add platforms to treeinfo for Beaker support. +treeinfo ${basearch} platforms highbank,imx,mvebu,omap,tegra + +## install kernels +mkdir ${KERNELDIR} +%for kernel in kernels: + %if kernel.flavor: + installkernel images-${kernel.flavor}-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} + installinitrd images-${kernel.flavor}-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img + + %if doupgrade: + ## install upgrade image + installupgradeinitrd images-${kernel.flavor}-${basearch} ${kernel.upgrade.path} ${KERNELDIR}/upgrade-${kernel.flavor}.img + %endif + + ## create U-Boot wrapped images + + runcmd mkimage \ + -A arm -O linux -T ramdisk -C none \ + -a 0 -e 0 \ + -n "${product.name} ${product.version} ${kernel.flavor} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/initrd-${kernel.flavor}.img \ + ${outroot}/${KERNELDIR}/uInitrd-${kernel.flavor} + + runcmd mkimage \ + -A arm -O linux -T kernel -C none \ + -a ${kernelAddress[kernel.flavor]} -e ${kernelAddress[kernel.flavor]} \ + -n "${product.name} ${product.version} ${kernel.flavor} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/vmlinuz-${kernel.flavor} \ + ${outroot}/${KERNELDIR}/uImage-${kernel.flavor} + + treeinfo images-${kernel.flavor}-${basearch} uimage ${KERNELDIR}/uImage-${kernel.flavor} + treeinfo images-${kernel.flavor}-${basearch} uinitrd ${KERNELDIR}/uInitrd-${kernel.flavor} + + %else: + installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + + %if doupgrade: + ## install upgrade image + installupgradeinitrd images-${basearch} ${kernel.upgrade.path} ${KERNELDIR}/upgrade.img + %endif + + ## create U-Boot wrapped images + + runcmd mkimage \ + -A arm -O linux -T ramdisk -C none \ + -a 0 -e 0 \ + -n "${product.name} ${product.version} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/initrd.img \ + ${outroot}/${KERNELDIR}/uInitrd + + runcmd mkimage \ + -A arm -O linux -T kernel -C none \ + -a ${kernelAddress['baseline']} -e ${kernelAddress['baseline']} \ + -n "${product.name} ${product.version} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/vmlinuz \ + ${outroot}/${KERNELDIR}/uImage + + treeinfo images-${basearch} uimage ${KERNELDIR}/uImage + treeinfo images-${basearch} uinitrd ${KERNELDIR}/uInitrd + + %endif +%endfor + + +## FIXME: ARM may need some extra boot config + diff --git a/lorax-templates-qubes/templates/config_files/common/bash_history b/lorax-templates-qubes/templates/config_files/common/bash_history new file mode 100644 index 0000000..11ecdfc --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/bash_history @@ -0,0 +1,8 @@ +kill -USR2 `cat /var/run/anaconda.pid` +kill -HUP `cat /var/run/anaconda.pid` +udevadm info --export-db | less +tail -f /tmp/storage.log +echo b > /proc/sysrq-trigger +dmsetup table +multipath -d +HOME=/root chroot /mnt/sysimage bash -l -i diff --git a/lorax-templates-qubes/templates/config_files/common/i18n b/lorax-templates-qubes/templates/config_files/common/i18n new file mode 100644 index 0000000..5366b7f --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/i18n @@ -0,0 +1 @@ +SYSFONT="latarcyrheb-sun16" diff --git a/lorax-templates-qubes/templates/config_files/common/libuser.conf b/lorax-templates-qubes/templates/config_files/common/libuser.conf new file mode 100644 index 0000000..a7a0ef0 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/libuser.conf @@ -0,0 +1,10 @@ +[defaults] +skeleton = /mnt/sysimage/etc/skel +mailspooldir = /mnt/sysimage/var/mail +crypt_style = md5 +modules = files shadow +create_modules = files shadow +[files] +directory = /mnt/sysimage/etc +[shadow] +directory = /mnt/sysimage/etc diff --git a/lorax-templates-qubes/templates/config_files/common/org.gnome.desktop.wm.keybindings.gschema.override b/lorax-templates-qubes/templates/config_files/common/org.gnome.desktop.wm.keybindings.gschema.override new file mode 100644 index 0000000..f0965a9 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/org.gnome.desktop.wm.keybindings.gschema.override @@ -0,0 +1,21 @@ +[org.gnome.desktop.wm.keybindings] + switch-to-workspace-left=[] + switch-to-workspace-right=[] + switch-to-workspace-up=[] + switch-to-workspace-down=[] + switch-group=[] + switch-windows=[] + switch-panels=[] + cycle-group=[] + cycle-windows=[] + cycle-panels=[] + activate-window-menu=[] + toggle-maximized=[] + maximize=[] + unmaximize=[] + begin-move=[] + begin-resize=[] + move-to-workspace-left=[] + move-to-workspace-right=[] + move-to-workspace-up=[] + move-to-workspace-down=[] diff --git a/lorax-templates-qubes/templates/config_files/common/pam.sshd b/lorax-templates-qubes/templates/config_files/common/pam.sshd new file mode 100644 index 0000000..88c019f --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/pam.sshd @@ -0,0 +1,9 @@ +#%PAM-1.0 +auth required pam_env.so +auth sufficient pam_unix.so likeauth nullok +auth required pam_deny.so +account required pam_unix.so +password sufficient pam_unix.so nullok use_authtok md5 shadow +password required pam_deny.so +session required pam_limits.so +session required pam_unix.so diff --git a/lorax-templates-qubes/templates/config_files/common/profile b/lorax-templates-qubes/templates/config_files/common/profile new file mode 100644 index 0000000..00a475e --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/profile @@ -0,0 +1,3 @@ +PS1="[anaconda \u@\h \W]\\$ " +PATH=/bin:/sbin:/usr/bin:/usr/sbin:/mnt/sysimage/sbin:/mnt/sysimage/usr/sbin:/mnt/sysimage/bin:/mnt/sysimage/usr/bin +export PATH PS1 diff --git a/lorax-templates-qubes/templates/config_files/common/resolv.conf b/lorax-templates-qubes/templates/config_files/common/resolv.conf new file mode 100644 index 0000000..e69de29 diff --git a/lorax-templates-qubes/templates/config_files/common/rsyslog.conf b/lorax-templates-qubes/templates/config_files/common/rsyslog.conf new file mode 100644 index 0000000..e568e53 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/rsyslog.conf @@ -0,0 +1,49 @@ +#### MODULES #### +$ModLoad imuxsock.so # provides support for local system logging +$SystemLogRateLimitInterval 0 # disables message dropping, we need all of them +$ModLoad imklog.so # provides kernel logging support + +$ModLoad imfile +$InputFileName /tmp/X.log +$InputFileTag xserver: +$InputFileStateFile xserver-statefile +$InputFileFacility local1 +$InputRunFileMonitor +$InputFileName /tmp/anaconda-tb-all.log +$InputFileTag anaconda-tb: +$InputFileStateFile anaconda-tb-statefile +$InputFileFacility local1 +$InputRunFileMonitor + +#### GLOBAL DIRECTIVES #### +# Use default timestamp format +$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat + +#### TEMPLATES #### + +$template anaconda_tty4, "%syslogseverity-text:::uppercase% %programname%:%msg%\n" +$template anaconda_syslog, "%timestamp:8:$:date-rfc3164%,%timestamp:1:3:date-subseconds% %syslogseverity-text:::uppercase% %programname%:%msg%\n" +$template virtio_ForwardFormat, "<%PRI%>%TIMESTAMP:::date-rfc3339% localhost %syslogtag:1:32%%msg:::sp-if-no-1st-sp%%msg%\n" + +#### RULES #### +# log everything except anaconda-specific records from local1 (those are stored +# directly into files via python logging) +*.*;\ +authpriv.none;\ +local1.none /tmp/syslog;anaconda_syslog + & /dev/tty4;anaconda_tty4 + +# ### begin forwarding rule ### +# The statement between the begin ... end define a SINGLE forwarding +# rule. They belong together, do NOT split them. If you create multiple +# forwarding rules, duplicate the whole block! +# +# An on-disk queue is created for this action. If the remote host is +# down, messages are spooled to disk and sent when it is up again. +$ActionQueueMaxDiskSpace 1m # space limit (use as much as possible) +$ActionQueueSaveOnShutdown off # do not save messages to disk on shutdown +$ActionQueueType LinkedList # run asynchronously +$ActionResumeRetryCount -1 # infinite retries if host is down +# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional +# ### end of the forwarding rule ### + diff --git a/lorax-templates-qubes/templates/config_files/common/selinux.config b/lorax-templates-qubes/templates/config_files/common/selinux.config new file mode 100644 index 0000000..eac67ab --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/selinux.config @@ -0,0 +1,2 @@ +SELINUX=permissive +SELINUXTYPE=targeted diff --git a/lorax-templates-qubes/templates/config_files/common/sshd_config.anaconda b/lorax-templates-qubes/templates/config_files/common/sshd_config.anaconda new file mode 100644 index 0000000..088569d --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/sshd_config.anaconda @@ -0,0 +1,17 @@ +Port 22 +HostKey /etc/ssh/ssh_host_key +HostKey /etc/ssh/ssh_host_rsa_key +HostKey /etc/ssh/ssh_host_dsa_key +PermitRootLogin yes +IgnoreRhosts yes +StrictModes yes +X11Forwarding yes +X11DisplayOffset 10 +PrintMotd yes +XAuthLocation /bin/xauth +KeepAlive yes +SyslogFacility AUTHPRIV +RSAAuthentication yes +PasswordAuthentication yes +PermitEmptyPasswords yes +PermitUserEnvironment yes diff --git a/lorax-templates-qubes/templates/config_files/common/sysctl.conf b/lorax-templates-qubes/templates/config_files/common/sysctl.conf new file mode 100644 index 0000000..a95dfc6 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/common/sysctl.conf @@ -0,0 +1 @@ +kernel.printk=1 diff --git a/lorax-templates-qubes/templates/config_files/ppc/bootinfo.txt b/lorax-templates-qubes/templates/config_files/ppc/bootinfo.txt new file mode 100644 index 0000000..ac766d4 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/bootinfo.txt @@ -0,0 +1,169 @@ + Linux +Linux +boot &device;:\ppc\chrp\yaboot + + FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 diff --git a/lorax-templates-qubes/templates/config_files/ppc/magic b/lorax-templates-qubes/templates/config_files/ppc/magic new file mode 100644 index 0000000..387727c --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/magic @@ -0,0 +1,81 @@ +# +# Example magic file for mkhybrid +# +# The "message" for the offset MUST be 4 characters for the CREATOR +# and 4 characters for the TYPE - white space is optional between them. +# Any other characters on this line are ignored. Continuation lines (starting +# with '>') are also ignored i.e. only the initial offset lines are used. +# +# The continuation lines are given here, but they do not need to exist. + +# +# James Pearson 20/5/98 + +# off type test message + +# GIF +0 string GIF8 8BIM GIFf +>4 string 7a \b, version 8%s, +>4 string 9a \b, version 8%s, +>6 leshort >0 %hd x +>8 leshort >0 %hd, +#>10 byte &0x80 color mapped, +#>10 byte&0x07 =0x00 2 colors +#>10 byte&0x07 =0x01 4 colors +#>10 byte&0x07 =0x02 8 colors +#>10 byte&0x07 =0x03 16 colors +#>10 byte&0x07 =0x04 32 colors +#>10 byte&0x07 =0x05 64 colors +#>10 byte&0x07 =0x06 128 colors +#>10 byte&0x07 =0x07 256 colors + +# JPEG images +# +0 ubeshort 0xffd8 8BIM JPEG image data + +# StuffIt +# +0 string SIT! SIT!SIT! + +# standard unix compress +0 string \037\235 LZIV ZIVU +>2 byte&0x80 >0 block compressed +>2 byte&0x1f x %d bits + +# gzip (GNU zip, not to be confused with Info-ZIP or PKWARE zip archiver) +0 string \037\213 GNUz ZIVU gzip compressed data +>2 byte <8 \b, reserved method, +>2 byte 8 \b, deflated, +>3 byte &0x01 ASCII, +>3 byte &0x02 continuation, +>3 byte &0x04 extra field, +>3 byte &0x08 original filename, +>3 byte &0x10 comment, +>3 byte &0x20 encrypted, +>4 ledate x last modified: %s, +>8 byte 2 max compression, +>8 byte 4 max speed, +>9 byte =0x00 os: MS-DOS +>9 byte =0x01 os: Amiga +>9 byte =0x02 os: VMS +>9 byte =0x03 os: Unix +>9 byte =0x05 os: Atari +>9 byte =0x06 os: OS/2 +>9 byte =0x07 os: MacOS +>9 byte =0x0A os: Tops/20 +>9 byte =0x0B os: Win/32 + +# Postscript +0 string %! ASPSTEXT +>2 string PS-Adobe- conforming +>>11 string >\0 at level %.3s +>>>15 string EPS - type %s +>>>15 string Query - type %s +>>>15 string ExitServer - type %s +# Some PCs have the annoying habit of adding a ^D as a document separator +0 string \004%! ASPS TEXT PostScript document text +>3 string PS-Adobe- conforming +>>12 string >\0 at level %.3s +>>>16 string EPS - type %s +>>>16 string Query - type %s +>>>16 string ExitServer - type %s diff --git a/lorax-templates-qubes/templates/config_files/ppc/mapping b/lorax-templates-qubes/templates/config_files/ppc/mapping new file mode 100644 index 0000000..cf83076 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/mapping @@ -0,0 +1,27 @@ +# Example filename mapping file +# +# yaboot Raw 'UNIX' 'boot' "Bootstrap" +# vmlinux Raw 'UNIX' 'boot' "Bootstrap" +# +# EXTN XLate CREATOR TYPE Comment +COPYING Ascii 'ttxt' 'ttro' "Text File" +CREDITS Ascii 'ttxt' 'ttro' "Text File" +README Ascii 'ttxt' 'ttro' "Text File" +RPM-GPG-KEY Ascii 'ttxt' 'ttro' "Text File" +RELEASE_NOTES Ascii 'ttxt' 'ttro' "Text File" +.b Raw 'chrp' 'tbxi' "Macintosh Toolbox ROM file" +.gif Raw '8BIM' 'GIFf' "Gif File" +.jpg Raw '8BIM' 'JPEG' "Jpeg File" +.tif Raw '8BIM' 'TIFF' "Photoshop TIFF image" +.hqx Ascii 'BnHq' 'TEXT' "BinHex file" +.doc Raw 'MSWD' 'WDBN' "Word file" +.mov Raw 'TVOD' 'MooV' "QuickTime Movie" +.html Ascii 'MOSS' 'TEXT' "HTML File" +.htm Ascii 'MOSS' 'TEXT' "HTML File" +.conf Ascii 'ttxt' 'TEXT' "config file" +.txt Ascii 'ttxt' 'TEXT' "Text File" +.tbxi Raw 'chrp' 'tbxi' "Macintosh Toolbox ROM file" +.sea Raw 'aust' 'APPL' "Self Expanding Archive" +.sit Raw 'SIT!' 'SITD' "Stuffit Expander file" +* Raw '????' '????' "Unknown" + diff --git a/lorax-templates-qubes/templates/config_files/ppc/ofboot.b b/lorax-templates-qubes/templates/config_files/ppc/ofboot.b new file mode 100644 index 0000000..c811894 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/ofboot.b @@ -0,0 +1,74 @@ + + +MacRISC MacRISC3 MacRISC4 + + + +Boot Chooser + + + +" screen" output +load-base release-load-area +" /cpus/@0" find-package if + " 64-bit" rot get-package-property 0= if + 2drop + " boot cd:,\ppc\mac\yaboot conf=cd:,\ppc\ppc64\yaboot.conf" eval + else + " boot cd:,\ppc\mac\yaboot conf=cd:,\ppc\ppc32\yaboot.conf" eval + then +then + + + +1010 +000000000000F8FEACF6000000000000 +0000000000F5FFFFFEFEF50000000000 +00000000002BFAFEFAFCF70000000000 +0000000000F65D5857812B0000000000 +0000000000F5350B2F88560000000000 +0000000000F6335708F8FE0000000000 +00000000005600F600F5FD8100000000 +00000000F9F8000000F5FAFFF8000000 +000000008100F5F50000F6FEFE000000 +000000F8F700F500F50000FCFFF70000 +00000088F70000F50000F5FCFF2B0000 +0000002F582A00F5000008ADE02C0000 +00090B0A35A62B0000002D3B350A0000 +000A0A0B0B3BF60000505E0B0A0B0A00 +002E350B0B2F87FAFCF45F0B2E090000 +00000007335FF82BF72B575907000000 +000000000000ACFFFF81000000000000 +000000000081FFFFFFFF810000000000 +0000000000FBFFFFFFFFAC0000000000 +000000000081DFDFDFFFFB0000000000 +000000000081DD5F83FFFD0000000000 +000000000081DDDF5EACFF0000000000 +0000000000FDF981F981FFFF00000000 +00000000FFACF9F9F981FFFFAC000000 +00000000FFF98181F9F981FFFF000000 +000000ACACF981F981F9F9FFFFAC0000 +000000FFACF9F981F9F981FFFFFB0000 +00000083DFFBF981F9F95EFFFFFC0000 +005F5F5FDDFFFBF9F9F983DDDD5F0000 +005F5F5F5FDD81F9F9E7DF5F5F5F5F00 +0083DD5F5F83FFFFFFFFDF5F835F0000 +000000FBDDDFACFBACFBDFDFFB000000 +000000000000FFFFFFFF000000000000 +0000000000FFFFFFFFFFFF0000000000 +0000000000FFFFFFFFFFFF0000000000 +0000000000FFFFFFFFFFFF0000000000 +0000000000FFFFFFFFFFFF0000000000 +0000000000FFFFFFFFFFFF0000000000 +0000000000FFFFFFFFFFFFFF00000000 +00000000FFFFFFFFFFFFFFFFFF000000 +00000000FFFFFFFFFFFFFFFFFF000000 +000000FFFFFFFFFFFFFFFFFFFFFF0000 +000000FFFFFFFFFFFFFFFFFFFFFF0000 +000000FFFFFFFFFFFFFFFFFFFFFF0000 +00FFFFFFFFFFFFFFFFFFFFFFFFFF0000 +00FFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +00FFFFFFFFFFFFFFFFFFFFFFFFFF0000 +000000FFFFFFFFFFFFFFFFFFFF000000 + + diff --git a/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.3264 b/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.3264 new file mode 100644 index 0000000..7aa6305 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.3264 @@ -0,0 +1,16 @@ +init-message = "\nWelcome to the @PRODUCT@ @VERSION@ installer!\nUse 'linux32' for 32-bit kernel.\n\n" +timeout=6000 +default=linux + +image=/ppc/ppc64/vmlinuz + label=linux64 + alias=linux + initrd=/ppc/ppc64/ramdisk.image.gz + read-only + append="@ROOT@" + +image=/ppc/ppc32/vmlinuz + label=linux32 + initrd=/ppc/ppc32/ramdisk.image.gz + read-only + append="@ROOT@" diff --git a/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.in b/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.in new file mode 100644 index 0000000..0a6bafc --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/ppc/yaboot.conf.in @@ -0,0 +1,9 @@ +init-message = "\nWelcome to the @BITS@-bit @PRODUCT@ @VERSION@ installer!\nHit for boot options.\n\n" +timeout=6000 +default=linux + +image=/ppc/ppc@BITS@/vmlinuz + label=linux + initrd=/ppc/ppc@BITS@/initrd.img + read-only + append="@ROOT@" diff --git a/lorax-templates-qubes/templates/config_files/s390/generic.ins b/lorax-templates-qubes/templates/config_files/s390/generic.ins new file mode 100644 index 0000000..a690f2e --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/s390/generic.ins @@ -0,0 +1,5 @@ +* minimal lpar ins file +images/kernel.img 0x00000000 +images/initrd.img @INITRD_LOAD_ADDRESS@ +images/generic.prm 0x00010480 +images/initrd.addrsize 0x00010408 diff --git a/lorax-templates-qubes/templates/config_files/s390/generic.prm b/lorax-templates-qubes/templates/config_files/s390/generic.prm new file mode 100644 index 0000000..2044dd3 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/s390/generic.prm @@ -0,0 +1 @@ +ro ramdisk_size=40000 cio_ignore=all,!0.0.0009 diff --git a/lorax-templates-qubes/templates/config_files/s390/redhat.exec b/lorax-templates-qubes/templates/config_files/s390/redhat.exec new file mode 100644 index 0000000..f1e5931 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/s390/redhat.exec @@ -0,0 +1,9 @@ +/* */ +'CL RDR' +'PURGE RDR ALL' +'SPOOL PUNCH * RDR' +'PUNCH KERNEL IMG A (NOH' +'PUNCH GENERIC PRM A (NOH' +'PUNCH INITRD IMG A (NOH' +'CH RDR ALL KEEP NOHOLD' +'I 00C' diff --git a/lorax-templates-qubes/templates/config_files/sparc/boot.msg b/lorax-templates-qubes/templates/config_files/sparc/boot.msg new file mode 100644 index 0000000..f9cfb8a --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/sparc/boot.msg @@ -0,0 +1,9 @@ + + Welcome to @PRODUCT@ @VERSION@! + + - To install in graphical mode, press the  key. + + - To install in text mode, type: linux text . + + - To enter rescue mode type: linux rescue . + diff --git a/lorax-templates-qubes/templates/config_files/sparc/silo.conf b/lorax-templates-qubes/templates/config_files/sparc/silo.conf new file mode 100644 index 0000000..846c569 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/sparc/silo.conf @@ -0,0 +1,18 @@ +partition=1 +default=linux +read-write +timeout=100 +message=/boot/boot.msg +image[sun4u]=/boot/vmlinuz + label=linux + alias=install + append="@ROOT@" + initrd=/boot/initrd.img +image[sun4u]=/boot/vmlinuz + label=text + append="@ROOT@ text" + initrd=/boot/initrd.img +image[sun4u]=/boot/vmlinuz + label=ks + append="@ROOT@ ks" + initrd=/boot/initrd.img diff --git a/lorax-templates-qubes/templates/config_files/x86/boot.msg b/lorax-templates-qubes/templates/config_files/x86/boot.msg new file mode 100644 index 0000000..ff54899 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/x86/boot.msg @@ -0,0 +1,5 @@ + +splash.lss + + - Press the 0107 key to begin the installation process. + diff --git a/lorax-templates-qubes/templates/config_files/x86/grub.conf b/lorax-templates-qubes/templates/config_files/x86/grub.conf new file mode 100644 index 0000000..d1ce3be --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/x86/grub.conf @@ -0,0 +1,13 @@ +#debug --graphics +default=0 +splashimage=@SPLASHPATH@ +timeout 5 +hiddenmenu +title @PRODUCT@ @VERSION@ + findiso + kernel @KERNELPATH@ @ROOT@ + initrd @INITRDPATH@ +title Test this media & start @PRODUCT@ + findiso + kernel @KERNELPATH@ @ROOT@ quiet rd.live.check + initrd @INITRDPATH@ diff --git a/lorax-templates-qubes/templates/config_files/x86/grub2-efi.cfg b/lorax-templates-qubes/templates/config_files/x86/grub2-efi.cfg new file mode 100644 index 0000000..f21d085 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/x86/grub2-efi.cfg @@ -0,0 +1,31 @@ +set default="0" + +function load_video { + insmod efi_gop + insmod efi_uga + insmod video_bochs + insmod video_cirrus + insmod all_video +} + +load_video +set gfxpayload=keep +insmod gzio +insmod part_gpt +insmod ext2 + +set timeout=5 +### END /etc/grub.d/00_header ### + +search --no-floppy --set=root -l '@ISOLABEL@' + +### BEGIN /etc/grub.d/10_linux ### +menuentry '@PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { + linuxefi @KERNELPATH@ @ROOT@ + initrdefi @INITRDPATH@ +} +menuentry 'Test this media & start @PRODUCT@' --class fedora --class gnu-linux --class gnu --class os { + linuxefi @KERNELPATH@ @ROOT@ quiet rd.live.check + initrdefi @INITRDPATH@ +} + diff --git a/lorax-templates-qubes/templates/config_files/x86/isolinux.cfg b/lorax-templates-qubes/templates/config_files/x86/isolinux.cfg new file mode 100644 index 0000000..bc5a2f6 --- /dev/null +++ b/lorax-templates-qubes/templates/config_files/x86/isolinux.cfg @@ -0,0 +1,108 @@ +default vesamenu.c32 +timeout 600 + +display boot.msg + +# Clear the screen when exiting the menu, instead of leaving the menu displayed. +# For vesamenu, this means the graphical background is still displayed without +# the menu itself for as long as the screen remains in graphics mode. +menu clear +menu background splash.png +menu title @PRODUCT@ @VERSION@ +menu vshift 8 +menu rows 18 +menu margin 8 +#menu hidden +menu helpmsgrow 15 +menu tabmsgrow 13 + +# Border Area +menu color border * #00000000 #00000000 none + +# Selected item +menu color sel 0 #ffffffff #00000000 none + +# Title bar +menu color title 0 #ff7ba3d0 #00000000 none + +# Press [Tab] message +menu color tabmsg 0 #ff3a6496 #00000000 none + +# Unselected menu item +menu color unsel 0 #84b8ffff #00000000 none + +# Selected hotkey +menu color hotsel 0 #84b8ffff #00000000 none + +# Unselected hotkey +menu color hotkey 0 #ffffffff #00000000 none + +# Help text +menu color help 0 #ffffffff #00000000 none + +# A scrollbar of some type? Not sure. +menu color scrollbar 0 #ffffffff #ff355594 none + +# Timeout msg +menu color timeout 0 #ffffffff #00000000 none +menu color timeout_msg 0 #ffffffff #00000000 none + +# Command prompt text +menu color cmdmark 0 #84b8ffff #00000000 none +menu color cmdline 0 #ffffffff #00000000 none + +# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message. + +menu tabmsg Press Tab for full configuration options on menu items. +menu separator # insert an empty line +menu separator # insert an empty line +label linux + menu label ^Install @PRODUCT@ + kernel vmlinuz + append initrd=initrd.img @ROOT@ quiet +label check + menu label Test this ^media & install @PRODUCT@ + menu default + kernel vmlinuz + append initrd=initrd.img @ROOT@ quiet rd.live.check +menu separator # insert an empty line +# utilities submenu +menu begin ^Troubleshooting + menu title Troubleshooting +label vesa + menu indent count 5 + menu label Install @PRODUCT@ in ^basic graphics mode + text help + Try this option out if you're having trouble installing + @PRODUCT@. + endtext + kernel vmlinuz + append initrd=initrd.img @ROOT@ xdriver=vesa nomodeset quiet +label rescue + menu indent count 5 + menu label ^Rescue a @PRODUCT@ system + text help + If the system will not boot, this lets you access files + and edit config files to try to get it booting again. + endtext + kernel vmlinuz + append initrd=initrd.img @ROOT@ rescue quiet +label memtest + menu label Run a ^memory test + text help + If your system is having issues, a problem with your + system's memory may be the cause. Use this utility to + see if the memory is working correctly. + endtext + kernel memtest +menu separator # insert an empty line +label local + menu label Boot from ^local drive + localboot 0xffff +menu separator # insert an empty line +menu separator # insert an empty line +label returntomain + menu label Return to ^main menu + menu exit +menu end + diff --git a/lorax-templates-qubes/templates/efi.tmpl b/lorax-templates-qubes/templates/efi.tmpl new file mode 100644 index 0000000..dee095f --- /dev/null +++ b/lorax-templates-qubes/templates/efi.tmpl @@ -0,0 +1,54 @@ +<%page args="configdir, KERNELDIR, efiarch, isolabel"/> +<% +EFIBOOTDIR="EFI/BOOT" +APPLE_EFI_ICON=inroot+"/usr/share/pixmaps/bootloader/fedora.icns" +APPLE_EFI_DISKNAME=inroot+"/usr/share/pixmaps/bootloader/fedora-media.vol" +%> + +mkdir ${EFIBOOTDIR} +mkdir ${EFIBOOTDIR}/fonts/ +install boot/efi/EFI/*/shim.efi ${EFIBOOTDIR}/BOOT${efiarch}.efi +install boot/efi/EFI/*/MokManager.efi ${EFIBOOTDIR}/ +install boot/efi/EFI/*/gcdx64.efi ${EFIBOOTDIR}/grubx64.efi +install boot/efi/EFI/*/fonts/unicode.pf2 ${EFIBOOTDIR}/fonts/ + +## actually make the EFI images +${make_efiboot("images/efiboot.img")} +%if domacboot: + ${make_efiboot("images/macboot.img", imgtype="apple")} +%endif + +## This is kinda gross, but then... so's EFI. +<%def name="make_efiboot(img, include_kernel=False, disk=False, imgtype='default')"> + <% + kdir = EFIBOOTDIR if include_kernel else KERNELDIR + eficonf = "%s/grub.cfg" % (EFIBOOTDIR, ) + args = "--label=ANACONDA" + if disk: args += " --disk" + if imgtype == "apple": args += ' --apple --icon=%s --diskname=%s --product="%s %s"' % (APPLE_EFI_ICON, APPLE_EFI_DISKNAME, product.name, product.version) + %> + %if include_kernel: + copy ${KERNELDIR}/vmlinuz ${EFIBOOTDIR} + copy ${KERNELDIR}/initrd.img ${EFIBOOTDIR} + %endif + install ${configdir}/grub2-efi.cfg ${eficonf} + replace @PRODUCT@ '${product.name}' ${eficonf} + replace @VERSION@ ${product.version} ${eficonf} + replace @KERNELNAME@ vmlinuz ${eficonf} + replace @KERNELPATH@ /${kdir}/vmlinuz ${eficonf} + replace @INITRDPATH@ /${kdir}/initrd.img ${eficonf} + replace @ISOLABEL@ '${isolabel}' ${eficonf} + %if disk: + replace @ROOT@ inst.stage2=hd:LABEL=ANACONDA ${eficonf} + %else: + replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${eficonf} + %endif + %if efiarch == 'IA32': + copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf + %endif + runcmd mkefiboot ${args} ${outroot}/${EFIBOOTDIR} ${outroot}/${img} + %if include_kernel: + remove ${EFIBOOTDIR}/vmlinuz + remove ${EFIBOOTDIR}/initrd.img + %endif + diff --git a/lorax-templates-qubes/templates/live/arm.tmpl b/lorax-templates-qubes/templates/live/arm.tmpl new file mode 100644 index 0000000..bf6eef9 --- /dev/null +++ b/lorax-templates-qubes/templates/live/arm.tmpl @@ -0,0 +1,79 @@ +<%page args="kernels, runtime_img, runtime_base, basearch, outroot, arch"/> +<% +configdir="tmp/config_files/uboot" +PXEBOOTDIR="images/pxeboot" +BOOTDIR="boot" +KERNELDIR=PXEBOOTDIR +LIVEDIR="LiveOS" + +# different platforms use different kernel load addresses. +# include a 'baseline' kernel for no 'flavor'. +kernelAddress = { 'baseline' : '0x00008000', + 'highbank' : '0x00008000', + 'imx' : '0x90008000', + 'kirkwood' : '0x00008000', + 'mvebu' : '0x00008000', + 'omap' : '0x80008000', + 'tegra' : '0x00008000', + } +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install kernels +mkdir ${KERNELDIR} +%for kernel in kernels: + %if kernel.flavor: + installkernel images-${kernel.flavor}-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} + installinitrd images-${kernel.flavor}-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img + + # create U-Boot wrapped images + + runcmd mkimage \ + -A arm -O linux -T ramdisk -C none \ + -a 0 -e 0 \ + -n "${product.name} ${product.version} ${kernel.flavor} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/initrd-${kernel.flavor}.img \ + ${outroot}/${KERNELDIR}/uInitrd-${kernel.flavor} + + runcmd mkimage \ + -A arm -O linux -T kernel -C none \ + -a ${kernelAddress[kernel.flavor]} -e ${kernelAddress[kernel.flavor]} \ + -n "${product.name} ${product.version} ${kernel.flavor} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/vmlinuz-${kernel.flavor} \ + ${outroot}/${KERNELDIR}/uImage-${kernel.flavor} + + treeinfo images-${kernel.flavor}-${basearch} uimage ${KERNELDIR}/uImage-${kernel.flavor} + treeinfo images-${kernel.flavor}-${basearch} uinitrd ${KERNELDIR}/uInitrd-${kernel.flavor} + + %else: + installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + + # create U-Boot wrapped images + + runcmd mkimage \ + -A arm -O linux -T ramdisk -C none \ + -a 0 -e 0 \ + -n "${product.name} ${product.version} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/initrd.img \ + ${outroot}/${KERNELDIR}/uInitrd + + runcmd mkimage \ + -A arm -O linux -T kernel -C none \ + -a ${kernelAddress['baseline']} -e ${kernelAddress['baseline']} \ + -n "${product.name} ${product.version} ${kernel.arch}" \ + -d ${outroot}/${KERNELDIR}/vmlinuz \ + ${outroot}/${KERNELDIR}/uImage + + treeinfo images-${basearch} uimage ${KERNELDIR}/uImage + treeinfo images-${basearch} uinitrd ${KERNELDIR}/uInitrd + + %endif +%endfor + + +## FIXME: ARM may need some extra boot config + diff --git a/lorax-templates-qubes/templates/live/config_files/x86/boot.msg b/lorax-templates-qubes/templates/live/config_files/x86/boot.msg new file mode 100644 index 0000000..ff54899 --- /dev/null +++ b/lorax-templates-qubes/templates/live/config_files/x86/boot.msg @@ -0,0 +1,5 @@ + +splash.lss + + - Press the 0107 key to begin the installation process. + diff --git a/lorax-templates-qubes/templates/live/config_files/x86/grub.conf b/lorax-templates-qubes/templates/live/config_files/x86/grub.conf new file mode 100644 index 0000000..b7fdf82 --- /dev/null +++ b/lorax-templates-qubes/templates/live/config_files/x86/grub.conf @@ -0,0 +1,13 @@ +#debug --graphics +default=0 +splashimage=@SPLASHPATH@ +timeout 5 +hiddenmenu +title @PRODUCT@ @VERSION@ + findiso + kernel @KERNELPATH@ @ROOT@ rd.live.image rd.luks=0 rd.md=0 rd.dm=0 + initrd @INITRDPATH@ +title Test this media & start @PRODUCT@ + findiso + kernel @KERNELPATH@ @ROOT@ quiet rd.live.image rd.live.check rd.luks=0 rd.md=0 rd.dm=0 + initrd @INITRDPATH@ diff --git a/lorax-templates-qubes/templates/live/config_files/x86/grub2-efi.cfg b/lorax-templates-qubes/templates/live/config_files/x86/grub2-efi.cfg new file mode 100644 index 0000000..6dea0aa --- /dev/null +++ b/lorax-templates-qubes/templates/live/config_files/x86/grub2-efi.cfg @@ -0,0 +1,31 @@ +set default="0" + +function load_video { + insmod efi_gop + insmod efi_uga + insmod video_bochs + insmod video_cirrus + insmod all_video +} + +load_video +set gfxpayload=keep +insmod gzio +insmod part_gpt +insmod ext2 + +set timeout=5 +### END /etc/grub.d/00_header ### + +search --no-floppy --set=root -l '@ISOLABEL@' + +### BEGIN /etc/grub.d/10_linux ### +menuentry '@PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { + linuxefi @KERNELPATH@ @ROOT@ quiet rd.live.image rd.luks=0 rd.md=0 rd.dm=0 + initrdefi @INITRDPATH@ +} +menuentry 'Test this media & start @PRODUCT@' --class fedora --class gnu-linux --class gnu --class os { + linuxefi @KERNELPATH@ @ROOT@ quiet rd.live.image rd.live.check rd.luks=0 rd.md=0 rd.dm=0 + initrdefi @INITRDPATH@ +} + diff --git a/lorax-templates-qubes/templates/live/config_files/x86/isolinux.cfg b/lorax-templates-qubes/templates/live/config_files/x86/isolinux.cfg new file mode 100644 index 0000000..6dafb26 --- /dev/null +++ b/lorax-templates-qubes/templates/live/config_files/x86/isolinux.cfg @@ -0,0 +1,99 @@ +default vesamenu.c32 +timeout 600 + +menu autoboot Starting @PRODUCT@ in # second{,s}. Press any key to interrupt. + +# Clear the screen when exiting the menu, instead of leaving the menu displayed. +# For vesamenu, this means the graphical background is still displayed without +# the menu itself for as long as the screen remains in graphics mode. +menu clear +menu background splash.png +menu title @PRODUCT@ @VERSION@ +menu vshift 8 +menu rows 18 +menu margin 8 +#menu hidden +menu helpmsgrow 15 +menu tabmsgrow 13 + +# Border Area +menu color border * #00000000 #00000000 none + +# Selected item +menu color sel 0 #ffffffff #00000000 none + +# Title bar +menu color title 0 #ff7ba3d0 #00000000 none + +# Press [Tab] message +menu color tabmsg 0 #ff3a6496 #00000000 none + +# Unselected menu item +menu color unsel 0 #84b8ffff #00000000 none + +# Selected hotkey +menu color hotsel 0 #84b8ffff #00000000 none + +# Unselected hotkey +menu color hotkey 0 #ffffffff #00000000 none + +# Help text +menu color help 0 #ffffffff #00000000 none + +# A scrollbar of some type? Not sure. +menu color scrollbar 0 #ffffffff #ff355594 none + +# Timeout msg +menu color timeout 0 #ffffffff #00000000 none +menu color timeout_msg 0 #ffffffff #00000000 none + +# Command prompt text +menu color cmdmark 0 #84b8ffff #00000000 none +menu color cmdline 0 #ffffffff #00000000 none + +# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message. + +menu tabmsg Press Tab for full configuration options on menu items. +menu separator # insert an empty line +menu separator # insert an empty line +label linux + menu label ^Start @PRODUCT@ + menu default + kernel vmlinuz + append initrd=initrd.img @ROOT@ quiet rd.live.image rd.luks=0 rd.md=0 rd.dm=0 +label check + menu label Test this ^media & start @PRODUCT@ + kernel vmlinuz + append initrd=initrd.img @ROOT@ quiet rd.live.image rd.live.check rd.luks=0 rd.md=0 rd.dm=0 +menu separator # insert an empty line +# utilities submenu +menu begin ^Troubleshooting + menu title Troubleshooting +label vesa + menu indent count 5 + menu label Start @PRODUCT@ in ^basic graphics mode + text help + Try this option out if you're having trouble installing + @PRODUCT@. + endtext + kernel vmlinuz + append initrd=initrd.img @ROOT@ xdriver=vesa nomodeset quiet rd.live.image rd.luks=0 rd.md=0 rd.dm=0 +label memtest + menu label Run a ^memory test + text help + If your system is having issues, a problem with your + system's memory may be the cause. Use this utility to + see if the memory is working correctly. + endtext + kernel memtest +menu separator # insert an empty line +label local + menu label Boot from ^local drive + localboot 0xffff +menu separator # insert an empty line +menu separator # insert an empty line +label returntomain + menu label Return to ^main menu + menu exit +menu end + diff --git a/lorax-templates-qubes/templates/live/efi.tmpl b/lorax-templates-qubes/templates/live/efi.tmpl new file mode 100644 index 0000000..cc1c2ec --- /dev/null +++ b/lorax-templates-qubes/templates/live/efi.tmpl @@ -0,0 +1,53 @@ +<%page args="configdir, KERNELDIR, efiarch, isolabel"/> +<% +EFIBOOTDIR="EFI/BOOT" +APPLE_EFI_ICON=inroot+"/usr/share/pixmaps/bootloader/fedora.icns" +APPLE_EFI_DISKNAME=inroot+"/usr/share/pixmaps/bootloader/fedora-media.vol" +%> + +mkdir ${EFIBOOTDIR} +mkdir ${EFIBOOTDIR}/fonts/ +install boot/efi/EFI/*/shim.efi ${EFIBOOTDIR}/BOOT${efiarch}.efi +install boot/efi/EFI/*/gcdx64.efi ${EFIBOOTDIR}/grubx64.efi +install boot/efi/EFI/*/fonts/unicode.pf2 ${EFIBOOTDIR}/fonts/ + +## actually make the EFI images +${make_efiboot("images/efiboot.img")} +%if domacboot: + ${make_efiboot("images/macboot.img", imgtype="apple")} +%endif + +## This is kinda gross, but then... so's EFI. +<%def name="make_efiboot(img, include_kernel=False, disk=False, imgtype='default')"> + <% + kdir = EFIBOOTDIR if include_kernel else KERNELDIR + eficonf = "%s/grub.cfg" % (EFIBOOTDIR, ) + args = "--label=ANACONDA" + if disk: args += " --disk" + if imgtype == "apple": args += ' --apple --icon=%s --diskname=%s --product="%s %s"' % (APPLE_EFI_ICON, APPLE_EFI_DISKNAME, product.name, product.version) + %> + %if include_kernel: + copy ${KERNELDIR}/vmlinuz ${EFIBOOTDIR} + copy ${KERNELDIR}/initrd.img ${EFIBOOTDIR} + %endif + install ${configdir}/grub2-efi.cfg ${eficonf} + replace @PRODUCT@ '${product.name}' ${eficonf} + replace @VERSION@ ${product.version} ${eficonf} + replace @KERNELNAME@ vmlinuz ${eficonf} + replace @KERNELPATH@ /${kdir}/vmlinuz ${eficonf} + replace @INITRDPATH@ /${kdir}/initrd.img ${eficonf} + replace @ISOLABEL@ '${isolabel}' ${eficonf} + %if disk: + replace @ROOT@ root=live:LABEL=ANACONDA ${eficonf} + %else: + replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${eficonf} + %endif + %if efiarch == 'IA32': + copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf + %endif + runcmd mkefiboot ${args} ${outroot}/${EFIBOOTDIR} ${outroot}/${img} + %if include_kernel: + remove ${EFIBOOTDIR}/vmlinuz + remove ${EFIBOOTDIR}/initrd.img + %endif + diff --git a/lorax-templates-qubes/templates/live/ppc.tmpl b/lorax-templates-qubes/templates/live/ppc.tmpl new file mode 100644 index 0000000..3ff15da --- /dev/null +++ b/lorax-templates-qubes/templates/live/ppc.tmpl @@ -0,0 +1,117 @@ +<%page args="kernels, runtime_img, basearch, libdir, inroot, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/ppc" +BOOTDIR="ppc" +LIVEDIR="LiveOS" +MACDIR=BOOTDIR+"/mac" +NETBOOTDIR="images/netboot" + +WRAPPER="usr/sbin/wrapper" +WRAPPER_DATA="usr/"+libdir+"/kernel-wrapper" + +bitsizes = set() +prepboot = "" + +## NOTE: yaboot freaks out and stops parsing its config if it sees a '\', +## so we can't use the udev escape sequences in the root arg. +## Instead we'll just replace any non-ASCII characters in the isolabel +## with '_', which means we won't need any udev escapes. +isolabel = ''.join(ch if ch.isalnum() else '_' for ch in isolabel) + +rootarg = "root=live:CDLABEL=%s" % isolabel +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloaders. +## NOTE: there's two different bootloader setups here: +## ppc/chrp: for normal PPC systems. needs 'addnote' run on yaboot. +## uses /etc/yaboot.conf, as is the default. +## ppc/mac: for PowerMacs. no 'addnote' (it breaks some Macs!) +## ofboot.b picks one of /ppc/ppc{32,64}/yaboot.conf for yaboot, +## thus automatically booting the correct kernel for the machine. +mkdir ${BOOTDIR} +## boot stuff for normal (CHRP/PREP) PPC systems +install ${configdir}/bootinfo.txt ${BOOTDIR} +install boot/efika.forth ${BOOTDIR} +mkdir ${BOOTDIR}/chrp +install usr/lib/yaboot/yaboot ${BOOTDIR}/chrp +runcmd ${inroot}/usr/lib/yaboot/addnote ${outroot}/${BOOTDIR}/chrp/yaboot +## special boot dir for PowerMacs +mkdir ${MACDIR} +install usr/lib/yaboot/yaboot ${MACDIR} +install ${configdir}/ofboot.b ${MACDIR} + +## copy mapping and magic files needed for isos +install ${configdir}/mapping ${BOOTDIR} +install ${configdir}/magic ${BOOTDIR} + +## NOTE: PPC is kind of funky. There's three possible "arch" setups here: +## ppc, ppc64, and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). + +## Install kernel and bootloader config (in separate places for each arch) +%for kernel in kernels: + <% + bits = 64 if kernel.arch == "ppc64" else 32 + ## separate dirs/images for each arch + KERNELDIR=BOOTDIR+"/ppc%s" % bits + NETIMG=NETBOOTDIR+"/ppc%s.img" % bits + bitsizes.add(bits) + %> + ## install kernel + mkdir ${KERNELDIR} ${NETBOOTDIR} + installkernel images-${kernel.arch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${kernel.arch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + + ## install arch-specific bootloader config + install ${configdir}/yaboot.conf.in ${KERNELDIR}/yaboot.conf + replace @BITS@ ${bits} ${KERNELDIR}/yaboot.conf + replace @PRODUCT@ '${product.name}' ${KERNELDIR}/yaboot.conf + replace @VERSION@ ${product.version} ${KERNELDIR}/yaboot.conf + replace @ROOT@ "${rootarg}" ${KERNELDIR}/yaboot.conf + + ## kernel-wrapper magic that makes the netboot combined ppc{32,64}.img + runcmd ${inroot}/${WRAPPER} -p of \ + -D ${inroot}/${WRAPPER_DATA} \ + -i ${outroot}/${KERNELDIR}/initrd.img \ + ${outroot}/${KERNELDIR}/vmlinuz \ + -o ${outroot}/${NETIMG} + treeinfo images-${kernel.arch} zimage ${NETIMG} + ## PReP is 32-bit only + %if bits == 32: + ## Yes, this is supposed to be a relative path + <% prepboot="-prep-boot " + NETIMG %> + %endif +%endfor + +## choose correct yaboot.conf +mkdir etc +%if len(bitsizes) == 2: + ## both kernels means hybrid - use the magic hybrid config + install ${configdir}/yaboot.conf.3264 etc/yaboot.conf + replace @PRODUCT@ ${product.name} etc/yaboot.conf + replace @VERSION@ ${product.version} etc/yaboot.conf + replace @ROOT@ "${rootarg}" etc/yaboot.conf +%else: + ## single arch - use the arch-specific yaboot.conf from above + copy ${KERNELDIR}/yaboot.conf etc/yaboot.conf +%endif + +## make boot.iso +runcmd mkisofs -o ${outroot}/images/boot.iso -chrp-boot -U \ + ${prepboot} -part -hfs -T -r -l -J \ + -A "${product.name} ${product.version}" -sysid PPC -V '${isolabel}' \ + -volset "${product.version}" -volset-size 1 -volset-seqno 1 \ + -hfs-volid ${product.version} -hfs-bless ${outroot}/${MACDIR} \ + -map ${inroot}/${configdir}/mapping \ + -no-desktop -allow-multidot -graft-points \ + etc=${outroot}/etc \ + ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${NETBOOTDIR}=${outroot}/${NETBOOTDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} + +%for kernel in kernels: + treeinfo images-${kernel.arch} boot.iso images/boot.iso +%endfor diff --git a/lorax-templates-qubes/templates/live/s390.tmpl b/lorax-templates-qubes/templates/live/s390.tmpl new file mode 100644 index 0000000..f02963d --- /dev/null +++ b/lorax-templates-qubes/templates/live/s390.tmpl @@ -0,0 +1,33 @@ +<%page args="kernels, runtime_img, runtime_base, basearch, outroot"/> +<% +configdir="tmp/config_files/s390" +BOOTDIR="images" +KERNELDIR=BOOTDIR +INITRD_ADDRESS="0x02000000" +# The assumption seems to be that there is only one s390 kernel, ever +kernel = kernels[0] +%> + +mkdir images +install ${runtime_img} images +treeinfo stage2 mainimage images/${runtime_base} + +## install bootloader (such as it is) and bootloader config +install ${configdir}/redhat.exec ${BOOTDIR} +install ${configdir}/generic.prm ${BOOTDIR} +install ${configdir}/generic.ins . + +## configure bootloader +replace @INITRD_LOAD_ADDRESS@ ${INITRD_ADDRESS} generic.ins + +## install kernel +installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/kernel.img +installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + +## s390 needs some extra boot config +createaddrsize ${INITRD_ADDRESS} ${outroot}/${BOOTDIR}/initrd.img ${outroot}/${BOOTDIR}/initrd.addrsize + +## s390 also has some special treeinfo data +treeinfo images-${basearch} initrd.addrsize ${BOOTDIR}/initrd.addrsize +treeinfo images-${basearch} generic.prm ${BOOTDIR}/generic.prm +treeinfo images-${basearch} generic.ins generic.ins diff --git a/lorax-templates-qubes/templates/live/sparc.tmpl b/lorax-templates-qubes/templates/live/sparc.tmpl new file mode 100644 index 0000000..2452f80 --- /dev/null +++ b/lorax-templates-qubes/templates/live/sparc.tmpl @@ -0,0 +1,38 @@ +<%page args="kernels, runtime_img, basearch, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/sparc" +BOOTDIR="boot" +LIVEDIR="LiveOS" +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloader and config files +install boot/*.b ${BOOTDIR} +install ${configdir}/silo.conf ${BOOTDIR} +install ${configdir}/boot.msg ${BOOTDIR} + +## configure bootloader +replace @VERSION@ ${product.version} ${BOOTDIR}/boot.msg +replace @PRODUCT@ '${product.name}' ${BOOTDIR}/boot.msg +replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${BOOTDIR}/silo.conf + +## install kernels +## FIXME: this will overwrite if there are multiple sparc kernels +%for kernel in kernels: + installkernel images-${basearch} ${kernel.path} ${BOOTDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${BOOTDIR}/initrd.img +%endfor + +## make boot.iso +runcmd mkisofs -R -J -T -G /${BOOTDIR}/isofs.b -B ... \ + -s /${BOOTDIR}/silo.conf -r -V '${isolabel}' \ + -A "${product.name} ${product.version}" \ + -x Fedora -x repodata \ + -sparc-label "${product.name} ${product.version} Boot Disc" \ + -o ${outroot}/images/boot.iso \ + -graft-points ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} +treeinfo images-${basearch} boot.iso images/boot.iso diff --git a/lorax-templates-qubes/templates/live/x86.tmpl b/lorax-templates-qubes/templates/live/x86.tmpl new file mode 100644 index 0000000..8d31b8b --- /dev/null +++ b/lorax-templates-qubes/templates/live/x86.tmpl @@ -0,0 +1,77 @@ +<%page args="kernels, runtime_img, basearch, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/x86" +SYSLINUXDIR="usr/share/syslinux" +PXEBOOTDIR="images/pxeboot" +BOOTDIR="isolinux" +KERNELDIR=PXEBOOTDIR +LIVEDIR="LiveOS" +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloader and config files +mkdir ${BOOTDIR} +install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR} +install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR} +install ${configdir}/isolinux.cfg ${BOOTDIR} +install ${configdir}/boot.msg ${BOOTDIR} +install ${configdir}/grub.conf ${BOOTDIR} +install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png +install boot/memtest* ${BOOTDIR}/memtest + +## configure bootloader +replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg +replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg +replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${BOOTDIR}/isolinux.cfg + +## install kernels +mkdir ${KERNELDIR} +%for kernel in kernels: + %if kernel.flavor: + installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} + installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img + %else: + installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + %endif +%endfor + +hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR} +hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} +%if basearch == 'x86_64': + treeinfo images-xen kernel ${KERNELDIR}/vmlinuz + treeinfo images-xen initrd ${KERNELDIR}/initrd.img +%endif + +## WHeeeeeeee, EFI. +## We could remove the basearch restriction someday.. +<% efiargs=""; efigraft=""; efihybrid="" %> +%if exists("boot/efi/EFI/fedora/gcdx64.efi") and basearch != 'i386': + <% + efiarch = 'X64' if basearch=='x86_64' else 'IA32' + efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) + images = ["images/efiboot.img"] + if domacboot: + images.append("images/macboot.img") + for img in images: + efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot".format(img) + efigraft += " {0}={1}/{0}".format(img,outroot) + efihybrid = "--uefi --mac" if domacboot else "--uefi" + %> + <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch=efiarch, isolabel=isolabel"/> +%endif + +## make boot.iso +runcmd mkisofs -o ${outroot}/images/boot.iso \ + -b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \ + -boot-load-size 4 -boot-info-table -no-emul-boot \ + ${efiargs} -R -J -V '${isolabel}' -T -graft-points \ + ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${KERNELDIR}=${outroot}/${KERNELDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} \ + ${efigraft} +runcmd isohybrid ${efihybrid} ${outroot}/images/boot.iso +treeinfo images-${basearch} boot.iso images/boot.iso diff --git a/lorax-templates-qubes/templates/ppc.tmpl b/lorax-templates-qubes/templates/ppc.tmpl new file mode 100644 index 0000000..bbef5fa --- /dev/null +++ b/lorax-templates-qubes/templates/ppc.tmpl @@ -0,0 +1,123 @@ +<%page args="kernels, runtime_img, basearch, libdir, inroot, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/ppc" +BOOTDIR="ppc" +LIVEDIR="LiveOS" +MACDIR=BOOTDIR+"/mac" +NETBOOTDIR="images/netboot" + +WRAPPER="usr/sbin/wrapper" +WRAPPER_DATA="usr/"+libdir+"/kernel-wrapper" + +bitsizes = set() +prepboot = "" + +## NOTE: yaboot freaks out and stops parsing its config if it sees a '\', +## so we can't use the udev escape sequences in the root arg. +## Instead we'll just replace any non-ASCII characters in the isolabel +## with '_', which means we won't need any udev escapes. +isolabel = ''.join(ch if ch.isalnum() else '_' for ch in isolabel) + +## Anaconda finds the CDROM device automatically +rootarg = "" +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloaders. +## NOTE: there's two different bootloader setups here: +## ppc/chrp: for normal PPC systems. needs 'addnote' run on yaboot. +## uses /etc/yaboot.conf, as is the default. +## ppc/mac: for PowerMacs. no 'addnote' (it breaks some Macs!) +## ofboot.b picks one of /ppc/ppc{32,64}/yaboot.conf for yaboot, +## thus automatically booting the correct kernel for the machine. +mkdir ${BOOTDIR} +## boot stuff for normal (CHRP/PREP) PPC systems +install ${configdir}/bootinfo.txt ${BOOTDIR} +install boot/efika.forth ${BOOTDIR} +mkdir ${BOOTDIR}/chrp +install usr/lib/yaboot/yaboot ${BOOTDIR}/chrp +runcmd ${inroot}/usr/lib/yaboot/addnote ${outroot}/${BOOTDIR}/chrp/yaboot +## special boot dir for PowerMacs +mkdir ${MACDIR} +install usr/lib/yaboot/yaboot ${MACDIR} +install ${configdir}/ofboot.b ${MACDIR} + +## copy mapping and magic files needed for isos +install ${configdir}/mapping ${BOOTDIR} +install ${configdir}/magic ${BOOTDIR} + +## NOTE: PPC is kind of funky. There's three possible "arch" setups here: +## ppc, ppc64, and 'hybrid' (ppc userspace, both ppc & ppc64 kernels). + +## Install kernel and bootloader config (in separate places for each arch) +%for kernel in kernels: + <% + bits = 64 if kernel.arch == "ppc64" else 32 + ## separate dirs/images for each arch + KERNELDIR=BOOTDIR+"/ppc%s" % bits + NETIMG=NETBOOTDIR+"/ppc%s.img" % bits + bitsizes.add(bits) + %> + ## install kernel + mkdir ${KERNELDIR} ${NETBOOTDIR} + installkernel images-${kernel.arch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${kernel.arch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + + %if doupgrade: + ## upgrade image + installupgradeinitrd images-${kernel.arch} ${kernel.upgrade.path} ${KERNELDIR}/upgrade.img + %endif + + ## install arch-specific bootloader config + install ${configdir}/yaboot.conf.in ${KERNELDIR}/yaboot.conf + replace @BITS@ ${bits} ${KERNELDIR}/yaboot.conf + replace @PRODUCT@ '${product.name}' ${KERNELDIR}/yaboot.conf + replace @VERSION@ ${product.version} ${KERNELDIR}/yaboot.conf + replace @ROOT@ "${rootarg}" ${KERNELDIR}/yaboot.conf + + ## kernel-wrapper magic that makes the netboot combined ppc{32,64}.img + runcmd ${inroot}/${WRAPPER} -p of \ + -D ${inroot}/${WRAPPER_DATA} \ + -i ${outroot}/${KERNELDIR}/initrd.img \ + ${outroot}/${KERNELDIR}/vmlinuz \ + -o ${outroot}/${NETIMG} + treeinfo images-${kernel.arch} zimage ${NETIMG} + ## PReP is 32-bit only + %if bits == 32: + ## Yes, this is supposed to be a relative path + <% prepboot="-prep-boot " + NETIMG %> + %endif +%endfor + +## choose correct yaboot.conf +mkdir etc +%if len(bitsizes) == 2: + ## both kernels means hybrid - use the magic hybrid config + install ${configdir}/yaboot.conf.3264 etc/yaboot.conf + replace @PRODUCT@ ${product.name} etc/yaboot.conf + replace @VERSION@ ${product.version} etc/yaboot.conf + replace @ROOT@ "${rootarg}" etc/yaboot.conf +%else: + ## single arch - use the arch-specific yaboot.conf from above + copy ${KERNELDIR}/yaboot.conf etc/yaboot.conf +%endif + +## make boot.iso +runcmd mkisofs -o ${outroot}/images/boot.iso -chrp-boot -U \ + ${prepboot} -part -hfs -T -r -l -J \ + -A "${product.name} ${product.version}" -sysid PPC -V '${isolabel}' \ + -volset "${product.version}" -volset-size 1 -volset-seqno 1 \ + -hfs-volid ${product.version} -hfs-bless ${outroot}/${MACDIR} \ + -map ${inroot}/${configdir}/mapping \ + -no-desktop -allow-multidot -graft-points \ + etc=${outroot}/etc \ + ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${NETBOOTDIR}=${outroot}/${NETBOOTDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} + +%for kernel in kernels: + treeinfo images-${kernel.arch} boot.iso images/boot.iso +%endfor diff --git a/lorax-templates-qubes/templates/runtime-cleanup.tmpl b/lorax-templates-qubes/templates/runtime-cleanup.tmpl new file mode 100644 index 0000000..34a0a3a --- /dev/null +++ b/lorax-templates-qubes/templates/runtime-cleanup.tmpl @@ -0,0 +1,352 @@ +## lorax template file: cleanup for the ramdisk (runtime image) +<%page args="libdir, product, root"/> + +## remove the sources +remove usr/share/i18n + +## not required packages installed as dependencies +## no perl besides s390x +%if basearch != "s390x": + removepkg perl* +%endif +## no sound support, thanks +removepkg alsa* flac gstreamer-tools libsndfile pulseaudio* sound-theme-freedesktop +removepkg midisport-firmware +## no fancy video, either +removepkg libcrystalhd crystalhd-firmware ivtv-firmware cx18-firmware +removepkg mesa-dri-drivers +## we don't create new initramfs/bootloader conf inside anaconda +## (that happens inside the target system after we install dracut/grubby) +removepkg dracut-network grubby anaconda-dracut +removefrom ${product.name}-logos /usr/share/plymouth/* +## In order to execute the /usr move on upgrades we need convertfs from dracut +## We also need dracut-shutdown.service and dracut-initramfs-restore to reboot +removefrom dracut --allbut /usr/lib/dracut/modules.d/30convertfs/convertfs.sh \ + /usr/lib/dracut/modules.d/99base/dracut-lib.sh \ + /usr/lib/systemd/* /usr/lib/dracut/dracut-initramfs-restore +## we don't run SELinux (not in enforcing, anyway) +removepkg checkpolicy selinux-policy libselinux-utils +## anaconda has its own repo files +removepkg fedora-release fedora-release-rawhide +## no user accounts = no account management +removepkg usermode usermode-gtk passwd shadow-utils +## no services to turn on/off (keep the /etc/init.d link though) +removefrom chkconfig --allbut /etc/init.d +## we don't check GPG keys (hooray bug #998) +removepkg gnupg2 pinentry +## no printer/scanner support in anaconda +removepkg cups-libs iscan-firmware +## no storage device monitoring +removepkg device-mapper-event dmraid-events sgpio +## we don't (currently) support deltarpms in anaconda +removepkg deltarpm +## no notifications in anaconda +removepkg notification-daemon +## logrotate isn't useful in anaconda +removepkg logrotate +remove /etc/logrotate.d +## anaconda needs this to do media check +removefrom isomd5sum --allbut /usr/bin/checkisomd5 + +## various other things we remove to save space +removepkg avahi-autoipd coreutils-libs curl dash db4-utils diffutils file +removepkg genisoimage gnome-python2 info iptables +removepkg jasper-libs libXt libXxf86misc +removepkg libasyncns libdaemon libhbaapi libhbalinux +removepkg libmcpp libpcap libtiff libutempter linux-atm-libs +removepkg lvm2-libs m4 mailx makebootfat mcpp +removepkg mingetty mobile-broadband-provider-info pkgconfig ppp pth +removepkg rmt rpcbind squashfs-tools system-config-firewall-base +removepkg tigervnc-license ttmkfdir xml-common xorg-x11-font-utils +removepkg xorg-x11-server-common yum-utils + +## other removals +remove /boot /home /media /opt /srv /tmp/* +remove /usr/etc /usr/games /usr/local /usr/tmp +remove /usr/share/doc /usr/share/info /usr/share/man /usr/share/gnome +remove /usr/share/mime/application /usr/share/mime/audio /usr/share/mime/image +remove /usr/share/mime/inode /usr/share/mime/message /usr/share/mime/model +remove /usr/share/mime/multipart /usr/share/mime/packages /usr/share/mime/text +remove /usr/share/mime/video /usr/share/mime/x-content /usr/share/mime/x-epoc +remove /var/db /var/games /var/tmp /var/yp /var/nis /var/opt /var/local +remove /var/mail /var/spool /var/preserve /var/report +remove /var/lib/rpm/* /var/lib/yum + +## icons cache +remove /usr/share/icons/*/icon-theme.cache + +## clean up kernel modules +<% +removekmods = """ +sound drivers/media drivers/hwmon drivers/video drivers/char +net/atm net/bluetooth net/sched net/sctp net/bridge +net/rds net/l2tp net/decnet net/netfilter net/ipv4 net/ipv6 +drivers/watchdog drivers/target drivers/rtc drivers/input/joystick +drivers/bluetooth drivers/hid drivers/edac drivers/staging +drivers/usb/serial drivers/usb/host drivers/usb/misc +fs/ocfs2 fs/ceph fs/nfsd fs/ubifs fs/nilfs2 +arch/x86/kvm +""" +%> +%for kmodpath in removekmods.split(): + remove lib/modules/*/kernel/${kmodpath} +%endfor +remove lib/modules/*/{build,source,*.map} +## NOTE: depmod gets re-run after cleanup finishes + +## remove unused themes, theme engines, icons, etc. +removefrom gtk2 /usr/${libdir}/gtk-2.0/*/{engines,printbackends}/* +removefrom gtk2 /usr/share/themes/* +## clearlooks is the theme we use for gtk2 +removefrom gtk2-engines --allbut /usr/${libdir}/*/libclearlooks.so \ + /usr/share/themes/Clearlooks/* +removefrom gtk3 /usr/${libdir}/gtk-3.0/*/printbackends/* +removefrom gtk3 /usr/share/themes/* +## the Fedora icon theme inherits from Mist, so we need that +removefrom gnome-themes --allbut /usr/share/icons/Mist/* \ + /usr/share/themes/Clearlooks/* +## Adwaita is the default theme for gtk3 and the default metacity theme +removefrom gnome-themes-standard --allbut /usr/share/themes/Adwaita/* +removefrom metacity --allbut /usr/bin/* /usr/${libdir}/* /etc/* + +## filesystem tools +removefrom e2fsprogs /usr/share/locale/* +removefrom xfsprogs /usr/share/locale/* + +## other package specific removals +removefrom GConf2 /etc/rpm/* /etc/xdg/* /usr/bin/* +removefrom GConf2 /usr/${libdir}/GConf/2/libgconfbackend-{evoldap,oldxml}* +removefrom GConf2 /usr/${libdir}/gio/modules/* +removefrom GConf2 /usr/libexec/gconf-defaults-mechanism /usr/share/GConf/* +removefrom GConf2 /usr/share/locale/* /usr/share/sgml/* +removefrom NetworkManager /usr/share/NetworkManager/* +removefrom NetworkManager /usr/share/locale/*/NetworkManager.mo +removefrom nm-connection-editor /usr/${libdir}/* +removefrom nm-connection-editor /usr/share/applications/* +removefrom anaconda /etc/* /usr/share/applications/* /usr/share/icons/* +removefrom at-spi /etc/xdg/* /usr/${libdir}/libcspi* +removefrom at-spi /usr/${libdir}/libloginhelper* /usr/share/locale/* +removefrom atk /usr/share/locale/* +removefrom audit /etc/* /sbin/audispd /sbin/auditctl /sbin/aureport +removefrom audit /sbin/ausearch /sbin/autrace /usr/bin/* +removefrom audit-libs /etc/* /${libdir}/libauparse* +removefrom authconfig /usr/sbin/* /usr/share/* +removefrom bash /etc/* /usr/bin/bashbug* /usr/share/* +removefrom bind-libs-lite /usr/${libdir}/libirs* +removefrom bind-libs-lite /usr/${libdir}/libisccfg-export* +removefrom bind-utils /usr/bin/dig /usr/bin/host /usr/bin/nsupdate +removefrom bitmap-fangsongti-fonts /usr/share/fonts/* +removefrom ca-certificates /etc/pki/java/* +removefrom ca-certificates /etc/pki/tls/certs/ca-bundle.trust.crt /etc/ssl/* +removefrom cairo /usr/${libdir}/libcairo-script* +removefrom coreutils /etc/* /usr/bin/link /usr/bin/nice /usr/bin/stty /usr/bin/su /usr/bin/unlink +removefrom coreutils /usr/sbin/runuser /usr/bin/[ /usr/bin/base64 /usr/bin/chcon +removefrom coreutils /usr/bin/cksum /usr/bin/comm /usr/bin/csplit +removefrom coreutils /usr/bin/dir /usr/bin/dircolors /usr/bin/dirname +removefrom coreutils /usr/bin/expand /usr/bin/factor +removefrom coreutils /usr/bin/fold /usr/bin/groups /usr/bin/hostid +removefrom coreutils /usr/bin/install /usr/bin/join /usr/bin/logname +removefrom coreutils /usr/bin/mkfifo /usr/bin/nl /usr/bin/nohup /usr/bin/nproc +removefrom coreutils /usr/bin/od /usr/bin/paste /usr/bin/pathchk +removefrom coreutils /usr/bin/pinky /usr/bin/pr /usr/bin/printenv +removefrom coreutils /usr/bin/printf /usr/bin/ptx /usr/bin/runcon /usr/bin/seq +removefrom coreutils /usr/bin/sha224sum /usr/bin/sha384sum +removefrom coreutils /usr/bin/sha512sum /usr/bin/shuf /usr/bin/stat +removefrom coreutils /usr/bin/stdbuf /usr/bin/sum /usr/bin/test +removefrom coreutils /usr/bin/timeout /usr/bin/truncate /usr/bin/tsort +removefrom coreutils /usr/bin/unexpand /usr/bin/users /usr/bin/vdir +removefrom coreutils /usr/bin/who /usr/bin/whoami /usr/bin/yes /usr/share/* +removefrom cpio /usr/share/* +removefrom cracklib /usr/sbin/* +removefrom cracklib-dicts /usr/${libdir}/* /usr/sbin/* +removefrom createrepo /usr/bin/* /usr/share/* +removefrom cryptsetup-luks /usr/share/* +removefrom cyrus-sasl-lib /usr/sbin/* +removefrom db4 /usr/* +removefrom dbus-glib /usr/bin/* +removefrom dbus-x11 /etc/X11/* +removefrom dejavu-sans-fonts --allbut *.conf */DejaVuSans{,-Bold}.ttf +removefrom dejavu-sans-mono-fonts --allbut *.conf */DejaVuSansMono.ttf +removefrom device-mapper-multipath /etc/* /sbin/mpathconf /sbin/multipathd /lib/udev/rules.d/62-multipath.rules +removefrom dhclient /usr/lib/* /usr/share/* +removefrom dnsmasq /etc/rc.d/* /usr/sbin/* +removefrom dump /etc/* +removefrom elfutils-libelf /usr/share/locale/* +removefrom ethtool /usr/sbin/* +removefrom expat /usr/bin/* +removefrom fcoe-utils /etc/rc.d/* /usr/libexec/fcoe/dcbcheck.sh +removefrom fcoe-utils /usr/libexec/fcoe/fcc.sh /usr/libexec/fcoe/fcoe-setup.sh +removefrom fcoe-utils /usr/libexec/fcoe/fcoedump.sh /usr/sbin/fcnsq +removefrom fcoe-utils /usr/sbin/fcoeadm /usr/sbin/fcping /usr/sbin/fcrls +removefrom file-libs /usr/share/* +removefrom findutils /usr/bin/oldfind /usr/share/* +removefrom firstboot /lib/systemd/* /usr/sbin/* /usr/share/firstboot/* +removefrom firstboot /usr/share/locale/* +removefrom fontconfig /usr/bin/* +removefrom gawk /usr/bin/{igawk,pgawk} /usr/libexec/* /usr/share/* +removefrom gdisk /usr/share/* +removefrom gdk-pixbuf2 /usr/share/locale* +removefrom gfs2-utils /usr/sbin/* +removefrom glib2 /etc/* /usr/bin/* /usr/share/locale/* +removefrom glibc /etc/gai.conf /etc/ld.so.conf /etc/localtime /etc/rpc +removefrom glibc /lib/*/nosegneg/* /${libdir}/libBrokenLocale* +removefrom glibc /${libdir}/libSegFault* /${libdir}/libanl* +removefrom glibc /${libdir}/libcidn* /${libdir}/libnss_compat* +removefrom glibc /${libdir}/libnss_hesiod* /${libdir}/libnss_nis* +removefrom glibc /${libdir}/libthread* /${libdir}/rtkaio* /sbin/* +removefrom glibc /usr/libexec/* /usr/sbin/* +removefrom glibc-common /etc/* /usr/bin/catchsegv /usr/bin/gencat +removefrom glibc-common /usr/bin/getconf /usr/bin/getent +removefrom glibc-common /usr/bin/locale /usr/bin/rpcgen /usr/bin/sprof +removefrom glibc-common /usr/bin/tzselect /usr/bin/localedef +removefrom glibc-common /usr/libexec/* /usr/sbin/* +removefrom gmp /usr/${libdir}/libgmpxx.* /usr/${libdir}/libmp.* +removefrom gnome-bluetooth-libs /usr/${libdir}/libgnome-bluetooth* +removefrom gnome-bluetooth-libs /usr/share/* +removefrom gnome-keyring /etc/xdg/* /usr/bin/* /usr/${libdir}/* /usr/libexec/* +removefrom gnome-keyring /usr/share/GConf/* /usr/share/gcr-3/* +removefrom gnome-keyring /usr/share/glib-2.0/* /usr/share/gnome-keyring* +removefrom gnome-keyring /usr/share/locale/* +removefrom gnome-python2-gconf /usr/share/pygtk/* +removefrom gnutls /usr/share/locale/* +removefrom gpgme /usr/${libdir}/libgpgme-* +removefrom grep /etc/* /usr/share/locale/* +removefrom gstreamer /usr/bin/* /usr/${libdir}/gstreamer-0.10/* +removefrom gstreamer /usr/${libdir}/libgst* /usr/libexec/* /usr/share/locale/* +removefrom gtk2 /usr/bin/update-gtk-immodules +removefrom gtk3 /usr/${libdir}/gtk-3.0/* +removefrom gtk3 /usr/${libdir}/libgailutil* +removefrom gzip /usr/bin/{gzexe,zcmp,zdiff,zegrep,zfgrep,zforce,zgrep,zless,zmore,znew} +removefrom hwdata /etc/* /usr/share/hwdata/oui.txt /usr/share/hwdata/pnp.ids +removefrom hwdata /usr/share/hwdata/upgradelist +removefrom initscripts /etc/ppp/* /usr/sbin/* /usr/share/locale/* +removefrom iproute --allbut /usr/sbin/{ip,routef,routel,rtpr} +removefrom iscsi-initiator-utils /etc/rc.d/* +removefrom kbd --allbut */bin/{dumpkeys,kbd_mode,loadkeys,setfont,unicode_*,chvt} +removefrom less /etc/* +removefrom libX11-common /usr/share/X11/XErrorDB +removefrom libbonobo /etc/* /usr/bin/* /usr/sbin/* /usr/share/locale/* +removefrom libbonobo /usr/${libdir}/bonobo/monikers/* +removefrom libbonobo /usr/${libdir}/orbit-2.0/Bonobo_module.so +removefrom libcanberra /usr/${libdir}/libcanberra-* +removefrom libcanberra-gtk2 /usr/${libdir}/gtk-2.0/* +removefrom libcanberra-gtk3 /usr/bin/* /usr/${libdir}/* +removefrom libcap /usr/sbin/* +removefrom libconfig /usr/${libdir}/libconfig++* +removefrom libcroco /usr/bin/* +removefrom libgnome-keyring /usr/share/locale/* +removefrom libgnomecanvas /usr/share/locale/* +removefrom libgpg-error /usr/bin/* /usr/share/locale/* +removefrom libgssglue /etc/* +removefrom libidn /usr/bin/* /usr/share/locale/* +removefrom libmlx4 /etc/rdma/* /usr/${libdir}/* +removefrom libnotify /usr/bin/* +removefrom librsvg2 /usr/bin/* +removefrom libselinux /usr/sbin/* +removefrom libsemanage /etc/selinux/* +removefrom libstdc++ /usr/share/* +removefrom libthai /usr/share/libthai/* +removefrom libuser /usr/bin/* /usr/sbin/* /usr/share/locale/* +removefrom libvorbis /usr/${libdir}/libvorbisenc.* +removefrom libxml2 /usr/bin/* +removefrom libxml2-python /usr/${libdir}/python?.?/site-packages/libxml2mod.a +removefrom libxml2-python /usr/${libdir}/python?.?/site-packages/libxml2mod.la +removefrom lldpad /etc/* /usr/sbin/lldptool +removefrom lua /usr/bin/* +removefrom lvm2 /etc/* +removefrom lzo /usr/${libdir}/liblzo2.* +removefrom madan-fonts /usr/share/fonts/madan/* +removefrom mdadm /etc/* +removefrom module-init-tools /etc/* /usr/sbin/insmod.static /usr/sbin/weak-modules +removefrom mt-st /etc/* /usr/sbin/* +removefrom mtools /etc/* +removefrom ncurses /usr/bin/captoinfo /usr/bin/infocmp /usr/bin/infotocap +removefrom ncurses /usr/bin/reset /usr/bin/tabs /usr/bin/tic /usr/bin/toe +removefrom ncurses /usr/bin/tput /usr/bin/tset +removefrom ncurses-libs /usr/${libdir}/libform* /usr/${libdir}/libmenu* +removefrom ncurses-libs /usr/${libdir}/libpanel.* /usr/${libdir}/libtic* +removefrom net-tools */bin/netstat */sbin/ether-wake */sbin/ipmaddr +removefrom net-tools */sbin/iptunnel */sbin/mii-diag */sbin/mii-tool +removefrom net-tools */sbin/nameif */sbin/plipconfig */sbin/slattach +removefrom net-tools /usr/share/locale/* +removefrom newt /usr/share/locale/* +removefrom nfs-utils /etc/nfsmount.conf +removefrom nfs-utils /etc/rc.d/init.d/* /lib/systemd/system/* +removefrom nfs-utils /etc/sysconfig/nfs /sbin/rpc.statd /usr/sbin/exportfs +removefrom nfs-utils /usr/sbin/gss_clnt_send_err /usr/sbin/gss_destroy_creds +removefrom nfs-utils /usr/sbin/mountstats /usr/sbin/nfsiostat +removefrom nfs-utils /usr/sbin/nfsstat /usr/sbin/rpc.gssd /usr/sbin/rpc.idmapd +removefrom nfs-utils /usr/sbin/rpc.mountd /usr/sbin/rpc.nfsd +removefrom nfs-utils /usr/sbin/rpc.svcgssd /usr/sbin/rpcdebug +removefrom nfs-utils /usr/sbin/showmount /usr/sbin/sm-notify +removefrom nfs-utils /usr/sbin/start-statd /var/lib/nfs/etab +removefrom nfs-utils /var/lib/nfs/rmtab /var/lib/nfs/state /var/lib/nfs/xtab +removefrom nhn-nanum-gothic-fonts /usr/share/fonts/nhn-nanum/NanumGothic*Bold.ttf +removefrom nss-softokn /usr/${libdir}/nss/* +removefrom openldap /etc/openldap/* /usr/${libdir}/libldap_r-* +removefrom openssh /etc/ssh/* /usr/libexec/* +removefrom openssh-clients /etc/ssh/* /usr/bin/slogin /usr/bin/ssh-* +removefrom openssh-clients /usr/${libdir}/* /usr/libexec/* +removefrom openssh-server /etc/ssh/* /usr/${libdir}/* /usr/libexec/* +removefrom openssl /etc/pki/* /usr/bin/* /usr/${libdir}/openssl/* +removefrom pam /usr/sbin/* /usr/share/locale/* +removefrom pciutils /usr/sbin/* +removefrom policycoreutils /etc/* /usr/bin/* /usr/share/locale/* +removefrom polkit /usr/bin/* +removefrom polkit-desktop-policy /var/lib/* +removefrom popt /usr/share/locale/* +removefrom procps /usr/bin/free /usr/bin/pgrep /usr/bin/pkill +removefrom procps /usr/bin/pmap /usr/bin/pwdx /usr/bin/skill /usr/bin/slabtop +removefrom procps /usr/bin/snice /usr/bin/tload /usr/bin/uptime +removefrom procps /usr/bin/vmstat /usr/bin/w /usr/bin/watch +removefrom psmisc /usr/share/locale/* +removefrom pygtk2 /usr/bin/* /usr/${libdir}/pygtk/* +removefrom pykickstart /usr/bin/* /usr/share/locale/* +removefrom python-bugzilla /usr/bin/* +removefrom python-ethtool /usr/sbin/* +removefrom python-meh /usr/share/locale/* +removefrom readline /usr/${libdir}/* +removefrom libreport /usr/bin/* /usr/share/locale/* +removefrom rpm /usr/bin/* /usr/lib/rpm/platform/* /usr/share/locale/* +removefrom rsync /etc/* +removefrom sed /usr/share/locale/* +removefrom smartmontools /etc/* /usr/sbin/smartd +removefrom smartmontools /usr/sbin/update-smart-drivedb +removefrom smartmontools /usr/share/smartmontools/* +removefrom sqlite /usr/bin/* +removefrom system-config-date /etc/* /usr/bin/* /usr/share/icons/* +removefrom system-config-keyboard /etc/* /usr/bin/* /usr/share/icons/* +removefrom sysvinit-tools /usr/bin/* +removefrom tar /usr/share/locale/* +removefrom usbutils /usr/bin/* +removefrom util-linux --allbut \ + /usr/bin/{dmesg,kill,login,lsblk,more,mount,umount,mountpoint} \ + /etc/mtab /etc/pam.d/login /etc/pam.d/remote \ + /usr/sbin/{agetty,blkid,blockdev,clock,fdisk,fsck,fstrim,hwclock,losetup} \ + /usr/sbin/{mkswap,nologin,sfdisk,swapoff,swapon,wipefs} \ + /usr/bin/logger +removefrom volume_key-libs /usr/share/locale/* +removefrom wget /etc/* /usr/share/locale/* +removefrom xkeyboard-config /usr/share/locale/* +removefrom xorg-x11-drv-intel /usr/${libdir}/libI* +removefrom xorg-x11-drv-openchrome /usr/${libdir}/libchrome* +removefrom xorg-x11-drv-synaptics /usr/bin/* +removefrom xorg-x11-drv-wacom /usr/bin/* +removefrom xorg-x11-fonts-ethiopic /etc/X11/* /usr/share/X11/fonts/OTF/* +removefrom xorg-x11-fonts-misc --allbut /usr/share/X11/fonts/misc/{6x13,encodings,fonts,*cursor}* +removefrom xorg-x11-server-utils --allbut /usr/bin/xrandr /usr/share/X11/rgb.txt +removefrom yum /etc/* /usr/share/locale/* /usr/share/yum-cli/* +removefrom ${product.name}-logos /etc/* +removefrom ${product.name}-logos /usr/share/icons/{Bluecurve,oxygen}/* +removefrom ${product.name}-logos /usr/share/{firstboot,gnome-screensaver,kde4,pixmaps}/* + +## cleanup_python_files() +runcmd find ${root} -name "*.pyo" -type f -delete +runcmd find ${root} -name "*.pyc" -type f -exec ln -sf /dev/null {} \; + +## remove any broken links in /etc or /usr +## (broken systemd service links lead to confusing noise at boot) +## NOTE: not checking /var because we want to keep /var/run +## NOTE: Excluding /etc/mtab which links to /proc/self/mounts for systemd +runcmd chroot ${root} find -L /etc /usr -xdev -type l -and \! -name "mtab" \ + -printf "removing broken symbolic link %p -> %l\n" -delete diff --git a/lorax-templates-qubes/templates/runtime-install.tmpl b/lorax-templates-qubes/templates/runtime-install.tmpl new file mode 100644 index 0000000..ab35fbb --- /dev/null +++ b/lorax-templates-qubes/templates/runtime-install.tmpl @@ -0,0 +1,133 @@ +## lorax template file: populate the ramdisk (runtime image) +<%page args="basearch, product"/> + +## anaconda package +installpkg anaconda anaconda-widgets +## anaconda deps that aren't in the RPM +installpkg tmux +installpkg firstboot +installpkg iscsi-initiator-utils +## speed up compression on multicore systems +installpkg pigz + +## firstaidkit (rescue mode) packages +installpkg firstaidkit-plugin-{passwd,key-recovery,mdadm-conf} + +## kernel and firmware +installpkg kernel +%if basearch != "s390x": + installpkg *-firmware + installpkg b43-openfwwf +%endif + +## arch-specific packages (bootloaders etc.) +%if basearch in ("arm", "armhfp"): + installpkg kernel-highbank kernel-imx kernel-kirkwood kernel-mvebu kernel-omap kernel-tegra + installpkg uboot-tools +%endif +%if basearch == "i386": + installpkg kernel-PAE gpart +%endif +%if basearch in ("i386", "x86_64"): + installpkg grub2 grub2-tools shim grub2-efi efibootmgr biosdevname memtest86+ +%endif +%if basearch in ("ppc", "ppc64"): + installpkg grub2 grub2-tools yaboot fbset hfsutils kernel-bootwrapper ppc64-utils +%endif +%if basearch == "s390x": + installpkg lsscsi modutils s390utils-base s390utils-cmsfs-fuse +%endif +%if basearch == "sparc": + installpkg silo tilo +%endif + +## yay, plymouth +installpkg plymouth + +## extra dracut modules +installpkg dracut-network anaconda-dracut + +## fedup-dracut handles upgrades +installpkg fedup-dracut fedup-dracut-plymouth *-fedup-dracut + +## rpcbind or portmap needed by dracut nfs module +installpkg rpcbind + +## required for dracut +installpkg kbd kbd-misc +## required for anaconda-dracut (img-lib etc.) +installpkg tar xz curl + +## basic system stuff +installpkg systemd-sysv systemd-units +installpkg rsyslog + +## xorg/GUI packages +installpkg xorg-x11-drivers xorg-x11-server-Xorg +installpkg xorg-x11-server-utils xorg-x11-xauth +installpkg dbus-x11 metacity gsettings-desktop-schemas +installpkg nm-connection-editor +installpkg at-spi at-spi2-atk pyatspi +installpkg gnome-python2-gconf +installpkg gobject-introspection +installpkg librsvg2 +installpkg polkit-desktop-policy +installpkg gnome-keyring +installpkg python-imaging + +## filesystem tools +installpkg btrfs-progs jfsutils xfsprogs reiserfs-utils gfs2-utils ntfs-3g ntfsprogs +installpkg python-volume_key volume_key + +## SELinux support +installpkg selinux-policy-targeted audit libsemanage-python + +## network tools/servers +installpkg python-ethtool ethtool openssh-server nfs-utils +installpkg tigervnc-server-minimal tigervnc-server-module +installpkg chrony rdate + +## hardware utilities/libraries +installpkg pciutils pcmciautils usbutils +installpkg mt-st hdparm smartmontools +installpkg libmlx4 + +## translations & language packs +installpkg yum-langpacks specspo + +## fonts & themes +installpkg bitmap-fangsongti-fonts +installpkg dejavu-sans-fonts dejavu-sans-mono-fonts +installpkg kacst-farsi-fonts +installpkg kacst-qurn-fonts +installpkg lklug-fonts +installpkg lohit-*-fonts +installpkg madan-fonts +installpkg nhn-nanum-gothic-fonts +installpkg smc-meera-fonts +installpkg thai-scalable-waree-fonts +installpkg vlgothic-fonts +installpkg wqy-microhei-fonts +installpkg xorg-x11-fonts-ethiopic xorg-x11-fonts-misc +installpkg gnome-themes-standard gnome-icon-theme-legacy + +## branding & logos +installpkg fedora-gnome-theme fedora-icon-theme + +## debugging/bug reporting tools +installpkg gdb-gdbserver +installpkg python-epdb +installpkg libreport-plugin-bugzilla libreport-plugin-reportuploader +installpkg fpaste + +## extra tools not required by anaconda +installpkg vim-minimal strace lsof dump xz less eject +installpkg wget rsync rsh bind-utils ftp mtr vconfig +installpkg icfg spice-vdagent +installpkg gdisk + +## yum plugins +installpkg yum-plugin-fastestmirror yum-langpacks + +## actually install all the requested packages +run_pkg_transaction diff --git a/lorax-templates-qubes/templates/runtime-postinstall.tmpl b/lorax-templates-qubes/templates/runtime-postinstall.tmpl new file mode 100644 index 0000000..e87a627 --- /dev/null +++ b/lorax-templates-qubes/templates/runtime-postinstall.tmpl @@ -0,0 +1,102 @@ +## runtime-postinstall.tmpl +## post-install setup required to make the system work. + +<%page args="root, basearch, libdir, configdir"/> +<% +PYTHONDIR = glob("usr/"+libdir+"/python?.?")[0] +stubs = ("list-harddrives", "raidstart", "raidstop") +configdir = configdir + "/common" +%> + +## move_stubs() +move usr/share/anaconda/restart-anaconda usr/bin +move ${PYTHONDIR}/site-packages/pyanaconda/sitecustomize.py ${PYTHONDIR}/site-packages +%for stub in stubs: + -move usr/share/anaconda/${stub}-stub usr/bin/${stub} +%endfor + +## move_repos() +move etc/yum.repos.d etc/anaconda.repos.d + +## Configure systemd to start anaconda +remove etc/systemd/system/default.target +symlink /lib/systemd/system/anaconda.target etc/systemd/system/default.target + +## Disable unwanted systemd services +systemctl disable systemd-readahead-collect.service \ + systemd-readahead-replay.service \ + mdmonitor.service \ + mdmonitor-takeover.service \ + lvm2-monitor.service +## These services can't be disabled normally (they're linked into place in +## /usr/lib/systemd rather than /etc/systemd), so we have to mask them. +systemctl mask fedora-configure.service fedora-loadmodules.service \ + fedora-storage-init.service fedora-storage-init-late.service \ + fedora-autorelabel.service fedora-autorelabel-mark.service \ + fedora-wait-storage.service media.mount + +## install some basic configuration files +append etc/resolv.conf "" +append etc/fstab "" +install ${configdir}/i18n etc/sysconfig +install ${configdir}/rsyslog.conf etc +install ${configdir}/bash_history root/.bash_history +install ${configdir}/profile root/.profile +install ${configdir}/libuser.conf etc +install ${configdir}/sysctl.conf etc/sysctl.d/anaconda.conf +%if exists(root+"/etc/selinux/targeted"): + install ${configdir}/selinux.config etc/selinux/config +%endif + +## set up sshd +install ${configdir}/sshd_config.anaconda etc/ssh +install ${configdir}/pam.sshd etc/pam.d/sshd +install ${configdir}/pam.sshd etc/pam.d/login +install ${configdir}/pam.sshd etc/pam.d/remote + +## set up "install" user account +append etc/passwd "install:x:0:0:root:/root:/usr/libexec/anaconda/run-anaconda" +append etc/shadow "install::14438:0:99999:7:::" +## remove root password +replace "root:\*:" "root::" etc/shadow + +## s390-specific setup +%if basearch in ("s390", "s390x"): + ## generate ssh keys + runcmd ssh-keygen -q -C "" -N "" -t rsa1 -f ${root}/etc/ssh/ssh_host_key + runcmd ssh-keygen -q -C "" -N "" -t rsa -f ${root}/etc/ssh/ssh_host_rsa_key + runcmd ssh-keygen -q -C "" -N "" -t dsa -f ${root}/etc/ssh/ssh_host_dsa_key + chmod etc/ssh/ssh_host*_key 600 + chmod etc/ssh/ssh_host*_key.pub 644 +%endif + +## gconf settings +gconfset /apps/metacity/general/button_layout string : +gconfset /apps/metacity/general/action_right_click_titlebar string none +gconfset /apps/metacity/general/num_workspaces int 1 +gconfset /apps/metacity/window_keybindings/close string disabled +gconfset /apps/metacity/global_keybindings/run_command_window_screenshot string disabled +gconfset /apps/metacity/global_keybindings/run_command_screenshot string disabled +gconfset /apps/metacity/global_keybindings/switch_to_workspace_up string disabled +gconfset /apps/metacity/global_keybindings/switch_to_workspace_down string disabled +gconfset /apps/metacity/global_keybindings/switch_to_workspace_left string disabled +gconfset /apps/metacity/global_keybindings/switch_to_workspace_right string disabled +gconfset /apps/metacity/global_keybindings/switch_windows string disabled +gconfset /desktop/gnome/interface/accessibility bool true +gconfset /desktop/gnome/interface/at-spi-corba bool true + +## Some settings are controlled by gsettings now. +install ${configdir}/org.gnome.desktop.wm.keybindings.gschema.override usr/share/glib-2.0/schemas +runcmd chroot ${root} glib-compile-schemas /usr/share/glib-2.0/schemas + +move usr/libexec/anaconda/auditd sbin + +## for compatibility with Ancient Anaconda Traditions +symlink lib/modules /modules +symlink lib/firmware /firmware +symlink ../run/install mnt/install + +## create_depmod_conf() +append etc/depmod.d/dd.conf "search updates built-in" + +## TODO: we could run prelink here if we wanted? diff --git a/lorax-templates-qubes/templates/s390.tmpl b/lorax-templates-qubes/templates/s390.tmpl new file mode 100644 index 0000000..0da951f --- /dev/null +++ b/lorax-templates-qubes/templates/s390.tmpl @@ -0,0 +1,38 @@ +<%page args="kernels, runtime_img, runtime_base, basearch, outroot"/> +<% +configdir="tmp/config_files/s390" +BOOTDIR="images" +KERNELDIR=BOOTDIR +INITRD_ADDRESS="0x02000000" +# The assumption seems to be that there is only one s390 kernel, ever +kernel = kernels[0] +%> + +mkdir images +install ${runtime_img} images +treeinfo stage2 mainimage images/${runtime_base} + +## install bootloader (such as it is) and bootloader config +install ${configdir}/redhat.exec ${BOOTDIR} +install ${configdir}/generic.prm ${BOOTDIR} +install ${configdir}/generic.ins . + +## configure bootloader +replace @INITRD_LOAD_ADDRESS@ ${INITRD_ADDRESS} generic.ins + +## install kernel +installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/kernel.img +installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + +%if doupgrade: + ## upgrader image + installupgradeinitrd images-${basearch} ${kernel.upgrade.path} ${KERNELDIR}/upgrade.img +%endif + +## s390 needs some extra boot config +createaddrsize ${INITRD_ADDRESS} ${outroot}/${BOOTDIR}/initrd.img ${outroot}/${BOOTDIR}/initrd.addrsize + +## s390 also has some special treeinfo data +treeinfo images-${basearch} initrd.addrsize ${BOOTDIR}/initrd.addrsize +treeinfo images-${basearch} generic.prm ${BOOTDIR}/generic.prm +treeinfo images-${basearch} generic.ins generic.ins diff --git a/lorax-templates-qubes/templates/sparc.tmpl b/lorax-templates-qubes/templates/sparc.tmpl new file mode 100644 index 0000000..1a66e2c --- /dev/null +++ b/lorax-templates-qubes/templates/sparc.tmpl @@ -0,0 +1,38 @@ +<%page args="kernels, runtime_img, basearch, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/sparc" +BOOTDIR="boot" +LIVEDIR="LiveOS" +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloader and config files +install boot/*.b ${BOOTDIR} +install ${configdir}/silo.conf ${BOOTDIR} +install ${configdir}/boot.msg ${BOOTDIR} + +## configure bootloader +replace @VERSION@ ${product.version} ${BOOTDIR}/boot.msg +replace @PRODUCT@ '${product.name}' ${BOOTDIR}/boot.msg +replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/silo.conf + +## install kernels +## FIXME: this will overwrite if there are multiple sparc kernels +%for kernel in kernels: + installkernel images-${basearch} ${kernel.path} ${BOOTDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${BOOTDIR}/initrd.img +%endfor + +## make boot.iso +runcmd mkisofs -R -J -T -G /${BOOTDIR}/isofs.b -B ... \ + -s /${BOOTDIR}/silo.conf -r -V '${isolabel}' \ + -A "${product.name} ${product.version}" \ + -x Fedora -x repodata \ + -sparc-label "${product.name} ${product.version} Boot Disc" \ + -o ${outroot}/images/boot.iso \ + -graft-points ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} +treeinfo images-${basearch} boot.iso images/boot.iso diff --git a/lorax-templates-qubes/templates/x86.tmpl b/lorax-templates-qubes/templates/x86.tmpl new file mode 100644 index 0000000..30041ee --- /dev/null +++ b/lorax-templates-qubes/templates/x86.tmpl @@ -0,0 +1,91 @@ +<%page args="kernels, runtime_img, basearch, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/x86" +SYSLINUXDIR="usr/share/syslinux" +PXEBOOTDIR="images/pxeboot" +BOOTDIR="isolinux" +KERNELDIR=PXEBOOTDIR +LIVEDIR="LiveOS" +%> + +mkdir ${LIVEDIR} +install ${runtime_img} ${LIVEDIR}/squashfs.img +treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img + +## install bootloader and config files +mkdir ${BOOTDIR} +install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR} +install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR} +install ${configdir}/isolinux.cfg ${BOOTDIR} +install ${configdir}/boot.msg ${BOOTDIR} +install ${configdir}/grub.conf ${BOOTDIR} +install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png +install boot/memtest* ${BOOTDIR}/memtest + +## configure bootloader +replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg +replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg +replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/isolinux.cfg + +## install kernels +mkdir ${KERNELDIR} +%for kernel in kernels: + %if kernel.flavor: + ## i386 PAE + installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} + installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img + %if doupgrade: + installupgradeinitrd images-xen ${kernel.upgrade.path} ${KERNELDIR}/upgrade-${kernel.flavor}.img + %endif + %else: + ## normal i386, x86_64 + installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz + installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img + %if doupgrade: + installupgradeinitrd images-${basearch} ${kernel.upgrade.path} ${KERNELDIR}/upgrade.img + %endif + %endif +%endfor + +hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR} +hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} +%if doupgrade: + hardlink ${KERNELDIR}/upgrade.img ${BOOTDIR} +%endif +%if basearch == 'x86_64': + treeinfo images-xen kernel ${KERNELDIR}/vmlinuz + treeinfo images-xen initrd ${KERNELDIR}/initrd.img + %if doupgrade: + treeinfo images-xen upgrade ${KERNELDIR}/upgrade.img + %endif +%endif + +## WHeeeeeeee, EFI. +## We could remove the basearch restriction someday.. +<% efiargs=""; efigraft=""; efihybrid="" %> +%if exists("boot/efi/EFI/fedora/gcdx64.efi") and basearch != 'i386': + <% + efiarch = 'X64' if basearch=='x86_64' else 'IA32' + efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) + images = ["images/efiboot.img"] + if domacboot: + images.append("images/macboot.img") + for img in images: + efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot".format(img) + efigraft += " {0}={1}/{0}".format(img,outroot) + efihybrid = "--uefi --mac" if domacboot else "--uefi" + %> + <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch=efiarch, isolabel=isolabel"/> +%endif + +## make boot.iso +runcmd mkisofs -o ${outroot}/images/boot.iso \ + -b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \ + -boot-load-size 4 -boot-info-table -no-emul-boot \ + ${efiargs} -R -J -V '${isolabel}' -T -graft-points \ + ${BOOTDIR}=${outroot}/${BOOTDIR} \ + ${KERNELDIR}=${outroot}/${KERNELDIR} \ + ${LIVEDIR}=${outroot}/${LIVEDIR} \ + ${efigraft} +runcmd isohybrid ${efihybrid} ${outroot}/images/boot.iso +treeinfo images-${basearch} boot.iso images/boot.iso