add preseed-file for Linux Mint ISO and a shell script to create a custom Linux Mint ISO
This commit is contained in:
parent
80f208a1c1
commit
7c5ad3ffbc
|
@ -0,0 +1,76 @@
|
|||
# My working preseed file for LinuxMint 18 Cinnamon
|
||||
|
||||
d-i debian-installer/locale string de_DE
|
||||
d-i localechooser/supported-locales de_DE.UTF-8
|
||||
d-i keyboard-configuration/xkb-keymap select de
|
||||
d-i keyboard-configuration/layoutcode string de
|
||||
|
||||
d-i debian-installer/splash boolean false
|
||||
d-i console-setup/ask_detect boolean false
|
||||
d-i console-setup/layoutcode string de
|
||||
d-i console-setup/variantcode string
|
||||
|
||||
### Partitioning
|
||||
# If the system has free space you can choose to only partition that space.
|
||||
# This is only honoured if partman-auto/method (below) is not set.
|
||||
#d-i partman-auto/init_automatically_partition select biggest_free
|
||||
|
||||
# Alternatively, you may specify a disk to partition. If the system has only
|
||||
# one disk the installer will default to using that, but otherwise the device
|
||||
# name must be given in traditional, non-devfs format (so e.g. /dev/sda
|
||||
# and not e.g. /dev/discs/disc0/disc).
|
||||
# For example, to use the first SCSI/SATA hard disk:
|
||||
#d-i partman-auto/disk string /dev/sda
|
||||
# In addition, you'll need to specify the method to use.
|
||||
# The presently available methods are:
|
||||
# - regular: use the usual partition types for your architecture
|
||||
# - lvm: use LVM to partition the disk
|
||||
# - crypto: use LVM within an encrypted partition
|
||||
#d-i partman-auto/method string regular
|
||||
|
||||
# You can choose one of the three predefined partitioning recipes:
|
||||
# - atomic: all files in one partition
|
||||
# - home: separate /home partition
|
||||
# - multi: separate /home, /var, and /tmp partitions
|
||||
#d-i partman-auto/choose_recipe select atomic
|
||||
|
||||
#d-i partman/default_filesystem string ext3
|
||||
#d-i partman/choose_partition select finish
|
||||
|
||||
# If one of the disks that are going to be automatically partitioned
|
||||
# contains an old LVM configuration, the user will normally receive a
|
||||
# warning. This can be preseeded away...
|
||||
#d-i partman-lvm/device_remove_lvm boolean true
|
||||
# The same applies to pre-existing software RAID array:
|
||||
#d-i partman-md/device_remove_md boolean true
|
||||
# And the same goes for the confirmation to write the lvm partitions.
|
||||
#d-i partman-lvm/confirm boolean true
|
||||
#d-i partman-lvm/confirm_nooverwrite boolean true
|
||||
|
||||
# Just in case, the positive answer to all other imagineable conformation questions:
|
||||
#d-i partman-partitioning/confirm_write_new_label boolean true
|
||||
#d-i partman/confirm boolean true
|
||||
#d-i partman/confirm_nooverwrite boolean true
|
||||
#d-i partman/confirm_write_new_label boolean true
|
||||
#d-i partman-md/confirm boolean true
|
||||
|
||||
# Time
|
||||
d-i time/zone string Europe/Berlin
|
||||
d-i clock-setup/utc boolean true
|
||||
d-i clock-setup/ntp boolean true
|
||||
d-i clock-setup/ntp-server string ntp.ubuntu.com
|
||||
|
||||
# LinuxMint will *demand* a user during installation, ignoring the value
|
||||
# of the passwd/make-user flag, so we need to provide the user data here.
|
||||
# You should not preseed the password in clear text, this is just an example!
|
||||
d-i passwd/user-fullname string user
|
||||
d-i passwd/username string user
|
||||
d-i passwd/user-password-crypted password $6$8Wk7hOnUGc1ffBRY$nefXDPeChvZGK3B/bA4Hzv91sOU8IqmXE4IJATV.BRFtaWJtBQqJKtBQO.e092nf4Jg1.4L2TH5TaLtFy02x1.
|
||||
d-i passwd/user-password-again password $6$8Wk7hOnUGc1ffBRY$nefXDPeChvZGK3B/bA4Hzv91sOU8IqmXE4IJATV.BRFtaWJtBQqJKtBQO.e092nf4Jg1.4L2TH5TaLtFy02x1.
|
||||
d-i passwd/root-login boolean false
|
||||
d-i user-setup/encrypt-home boolean false
|
||||
d-i user-setup/allow-password-weak boolean true
|
||||
|
||||
|
||||
# Use non-free packages
|
||||
ubiquity ubiquity/use_nonfree boolean true
|
|
@ -0,0 +1,38 @@
|
|||
#!/bin/bash
|
||||
|
||||
#the script needs superuser rights to work correctly for now.
|
||||
#TO DO: maybe there is a way for the script to work as non-root?
|
||||
[[ $UID -ne 0 ]] && exec sudo ./"$0"
|
||||
|
||||
#creates some folders that are used during the process. These can be changed, but needed be to changed across the script.
|
||||
mkdir /mnt/iso /opt/mintiso
|
||||
|
||||
#Downloads latest* mint-iso from the fh-aachen mirror.
|
||||
#TO DO: Maybe there is a way to use a more generic url here? As it stands now the url has to be changed when a new Linux Mint version is released down the line. Maybe variables are a possibility?
|
||||
wget http://mirror.bauhuette.fh-aachen.de/linuxmint-cd/stable/19.3/linuxmint-19.3-cinnamon-64bit.iso
|
||||
|
||||
#mounts the downloaded iso into a folder. * is added as a wildcard for the version number.
|
||||
mount -o loop linuxmint-*-cinnamon-64bit.iso /mnt/iso
|
||||
|
||||
#the contents of the iso have to be copied over to another folder, since the ISO is mounted read-only. all the steps below require root.
|
||||
cp -rT /mnt/iso/ /opt/mintiso/
|
||||
cd /opt/mintiso/
|
||||
|
||||
#copies the computertruhe.seed from codeberg-repo so always the latest preseed-file is used.
|
||||
curl https://codeberg.org/stefan230/Setup-Skripte/raw/branch/master/mint/computertruhe.seed > /opt/mintiso/preseed/computertruhe.seed
|
||||
|
||||
#configures the bootloader to use the "custom" computertruhe-preseed.
|
||||
sed -i 's/linuxmint.seed/computertruhe.seed/g' isolinux/isolinux.cfg
|
||||
|
||||
#creates the custom-iso with the given parameters.
|
||||
#TO DO: the outputpath right now is not generic enough. Maybe find a better name for the iso.
|
||||
mkisofs -D -r -V "UNATTENDED_MINT" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /home/stefan/linuxmint-unattended.iso /opt/mintiso
|
||||
|
||||
#umounts the iso and clears up the space we used to create the iso.
|
||||
umount /mnt/iso
|
||||
cd
|
||||
rm -r /mnt/iso/
|
||||
rm -r /opt/mintiso/
|
||||
|
||||
#from here we are basically done and the iso can be "burned" on an USB ready for install.
|
||||
echo "Die Custom ISO wurde fertiggestellt und kann nun verwendet werden. Die ISO ist unter /home/stefan/linuxmint-unattended.iso zu finden."
|
Loading…
Reference in New Issue