Misc improvements, re-add/fix the expert mode

This commit is contained in:
Alexandre Aubin 2021-01-25 00:42:17 +01:00
parent 66d5f333bf
commit dd528adc39
19 changed files with 205 additions and 98 deletions

View file

@ -23,6 +23,12 @@ Or
./build-yunohost i386 ./build-yunohost i386
``` ```
Install process configuration
-----------------------------
- menu.cfg doc: https://wiki.syslinux.org/wiki/index.php?title=Menu
- Preseed configuration doc: https://www.debian.org/releases/stable/s390x/apb.en.html
Troubleshooting Troubleshooting
--------------- ---------------

View file

@ -118,13 +118,14 @@ if is_iso "$file"; then
chmod -R u+w "$buildtree" chmod -R u+w "$buildtree"
cp $BUILD_DIR/menu.cfg $buildtree/isolinux/
arch=`echo "$file" | cut -d"-" -f3` arch=`echo "$file" | cut -d"-" -f3`
if [ $arch = "i386" ]; if [ $arch = "i386" ];
then then
cp -f $BUILD_DIR/isolinux/{adgtk.cfg,adtxt.cfg,gtk.cfg,menu.cfg,stdmenu.cfg,txt.cfg} $buildtree/isolinux/ sed -i 's/__ARCH__/386/g' $buildtree/isolinux/menu.cfg
else else
rm -f $buildtree/isolinux/{adgtk.cfg,adtxt.cfg,gtk.cfg,menu.cfg,stdmenu.cfg,txt.cfg} sed -i 's/__ARCH__/amd/g' $buildtree/isolinux/menu.cfg
cp -f $BUILD_DIR/isolinux/{amdadgtk.cfg,amdadtxt.cfg,amdgtk.cfg,menu.cfg,stdmenu.cfg,amdtxt.cfg} $buildtree/isolinux/
fi fi
for i in $(find "$buildtree" -name "initrd.gz" -o -name "initrd.img"); do for i in $(find "$buildtree" -name "initrd.gz" -o -name "initrd.img"); do

View file

@ -1,4 +0,0 @@
label expertgui
menu label Graphical expert install
kernel /install.386/vmlinuz
append preseed/file=/cdrom/simple-cdd/advanced.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.386/gtk/initrd.gz -- quiet

View file

@ -1,4 +0,0 @@
label expert
menu label ^Expert install
kernel /install.386/vmlinuz
append preseed/file=/cdrom/simple-cdd/advanced.preseed vga=788 initrd=/install.386/initrd.gz -- quiet

View file

@ -1,4 +0,0 @@
label expertgui
menu label Graphical expert install
kernel /install.amd/vmlinuz
append preseed/file=/cdrom/simple-cdd/advanced.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.amd/gtk/initrd.gz -- quiet

View file

@ -1,4 +0,0 @@
label expert
menu label ^Expert install
kernel /install.amd/vmlinuz
append preseed/file=/cdrom/simple-cdd/advanced.preseed vga=788 initrd=/install.amd/initrd.gz -- quiet

View file

@ -1,4 +0,0 @@
label installgui
menu label ^Graphical install
kernel /install.amd/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.amd/gtk/initrd.gz -- quiet

View file

@ -1,6 +0,0 @@
default install
label install
menu label ^Install
menu default
kernel /install.amd/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed vga=788 initrd=/install.amd/initrd.gz -- quiet

View file

@ -1,4 +0,0 @@
label installgui
menu label ^Graphical install
kernel /install.386/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.386/gtk/initrd.gz -- quiet

View file

@ -1,20 +0,0 @@
menu hshift 15
menu width 49
menu title Installer boot menu
include stdmenu.cfg
include txt.cfg
include amdtxt.cfg
include gtk.cfg
include amdgtk.cfg
include adtxt.cfg
include amdadtxt.cfg
include adgtk.cfg
include amdadgtk.cfg
menu end
label help
menu label ^Help
text help
Display help screens; type 'menu' at boot prompt to return to this menu
endtext
config prompt.cfg

View file

@ -1,20 +0,0 @@
menu hshift 15
menu width 49
menu title Installer boot menu
include stdmenu.cfg
include txt.cfg
include amdtxt.cfg
include gtk.cfg
include amdgtk.cfg
include adtxt.cfg
include amdadtxt.cfg
include adgtk.cfg
include amdadgtk.cfg
menu end
label help
menu label ^Help
text help
Display help screens; type 'menu' at boot prompt to return to this menu
endtext
config prompt.cfg

View file

@ -1,13 +0,0 @@
menu background splash.png
menu color title * #FFFFFFFF *
menu color border * #00000000 #00000000 none
menu color sel * #ffffffff #76a1d0ff *
menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *
menu color tabmsg * #ffffffff #00000000 *
menu color help 37;40 #ffdddd00 #00000000 none
menu vshift 16
menu rows 7
menu helpmsgrow 12
menu cmdlinerow 12
menu tabmsgrow 13
menu tabmsg Press ENTER to boot or TAB to edit a menu entry

View file

@ -1,6 +0,0 @@
default install
label install
menu label ^Install
menu default
kernel /install.386/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed vga=788 initrd=/install.386/initrd.gz -- quiet

37
menu.cfg Normal file
View file

@ -0,0 +1,37 @@
menu hshift 15
menu width 49
menu title Installer boot menu
menu background splash.png
menu color title * #FFFFFFFF *
menu color border * #00000000 #00000000 none
menu color sel * #ffffffff #76a1d0ff *
menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *
menu color tabmsg * #ffffffff #00000000 *
menu color help 37;40 #ffdddd00 #00000000 none
menu vshift 16
menu rows 7
menu helpmsgrow 12
menu cmdlinerow 12
menu tabmsgrow 13
menu tabmsg
default installgui
label install
menu label ^Text install
kernel /install.__ARCH__/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed vga=788 initrd=/install.__ARCH__/initrd.gz -- quiet
label installgui
menu label ^Graphical install (recommended)
menu default
kernel /install.__ARCH__/vmlinuz
append preseed/file=/cdrom/simple-cdd/default.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.__ARCH__/gtk/initrd.gz -- quiet
label expert
menu label Expert text install
kernel /install.__ARCH__/vmlinuz
append preseed/file=/cdrom/simple-cdd/expert.preseed vga=788 initrd=/install.__ARCH__/initrd.gz -- quiet
label expertgui
menu label Graphical expert install
kernel /install.__ARCH__/vmlinuz
append preseed/file=/cdrom/simple-cdd/expert.preseed video=vesa:ywrap,mtrr vga=788 initrd=/install.__ARCH__/gtk/initrd.gz -- quiet

View file

@ -1 +1 @@
Y U NO HOST full automatic webservices installer YunoHost installer

View file

@ -5,7 +5,6 @@ d-i netcfg/dhcp_options select Configure network manually
d-i netcfg/disable_dhcp boolean false d-i netcfg/disable_dhcp boolean false
d-i netcfg/get_hostname string yunohost d-i netcfg/get_hostname string yunohost
d-i netcfg/get_domain string yunohost.org d-i netcfg/get_domain string yunohost.org
d-i netcfg/get_domain seen true
### Mirror settings ### Mirror settings
d-i mirror/country string manual d-i mirror/country string manual
@ -15,10 +14,16 @@ d-i mirror/http/proxy string
### Clock and time zone setup ### Clock and time zone setup
d-i clock-setup/utc boolean true d-i clock-setup/utc boolean true
#d-i time/zone string Europe/Paris
d-i clock-setup/ntp boolean true d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string 0.fr.pool.ntp.org d-i clock-setup/ntp-server string 0.fr.pool.ntp.org
# Set locale to en_UK but seen to false, such that the question is asked anyway
d-i debian-installer/locale string en_UK
d-i debian-installer/locale seen false
d-i time/zone string Europe/Paris
d-i time/zone seen false
### Partitioning ### Partitioning
d-i partman-auto/method string lvm d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true d-i partman-lvm/device_remove_lvm boolean true
@ -74,6 +79,13 @@ d-i apt-setup/local0/key string http://forge.yunohost.org/yunohost.asc
d-i apt-setup/local0/comment string YunoHost repository d-i apt-setup/local0/comment string YunoHost repository
#d-i debian-installer/allow_unauthenticated string true #d-i debian-installer/allow_unauthenticated string true
# Skip "scan another CD/DVD"
# https://unix.stackexchange.com/a/409237
apt-cdrom-setup apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-first boolean false
d-i apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-failed boolean false
### Package selection ### Package selection
tasksel tasksel/first multiselect standard, ssh-server tasksel tasksel/first multiselect standard, ssh-server
# Keep postfix in here, otherwise exim4 might get installed and create a weird # Keep postfix in here, otherwise exim4 might get installed and create a weird
@ -88,6 +100,7 @@ debconf debconf/frontend select Noninteractive
### Boot loader installation ### Boot loader installation
d-i grub-installer/only_debian boolean true d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true d-i grub-installer/with_other_os boolean true
d-i grub-installer/bootdev string /dev/sda
### Finishing up the installation ### Finishing up the installation
d-i finish-install/reboot_in_progress note d-i finish-install/reboot_in_progress note
@ -116,7 +129,6 @@ nslcd nslcd/ldap-binddn string
nslcd nslcd/ldap-base string dc=yunohost,dc=org nslcd nslcd/ldap-base string dc=yunohost,dc=org
libnss-ldapd libnss-ldapd/nsswitch multiselect group, passwd, shadow libnss-ldapd libnss-ldapd/nsswitch multiselect group, passwd, shadow
postsrsd postsrsd/domain string yunohost.org postsrsd postsrsd/domain string yunohost.org
apt-cdrom-setup apt-setup/cdrom/set-next boolean false
### Avoid circular dependencies error ### Avoid circular dependencies error
d-i preseed/early_command string apt-install debhelper || true d-i preseed/early_command string apt-install debhelper || true

View file

@ -0,0 +1 @@
YunoHost installer

4
profiles/expert.packages Normal file
View file

@ -0,0 +1,4 @@
less
simple-cdd-profiles
firmware-linux-nonfree
debhelper

135
profiles/expert.preseed Normal file
View file

@ -0,0 +1,135 @@
### Network configuration
d-i netcfg/choose_interface select auto
d-i netcfg/dhcp_failed note
d-i netcfg/dhcp_options select Configure network manually
d-i netcfg/disable_dhcp boolean false
d-i netcfg/get_hostname string yunohost
d-i netcfg/get_domain string yunohost.org
### Mirror settings
d-i mirror/country string manual
d-i mirror/http/hostname string ftp.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
d-i mirror/http/proxy seen false
### Clock and time zone setup
d-i clock-setup/utc boolean true
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string 0.fr.pool.ntp.org
# Set locale to en_UK but seen to false, such that the question is asked anyway
#d-i debian-installer/locale string en_UK
#d-i debian-installer/locale seen false
#d-i time/zone string Europe/Paris
#d-i time/zone seen false
### Partitioning
d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-auto/choose_recipe select atomic
d-i partman-lvm/device_remove_lvm_span boolean true
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-auto-lvm/new_vg_name string system
d-i partman-lvm/confirm boolean true
d-i partman-auto-lvm/guided_size string max
d-i partman-auto/expert_recipe string \
boot-root :: \
128 256 256 ext4 \
$primary{ } \
$bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /boot } \
. \
512 1024 1024 linux-swap \
$lvmok{ } \
lv_name{ swap } \
method{ swap } format{ } \
. \
4096 4096 1000000000 ext4 \
$lvmok{ } \
lv_name{ root } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
.
d-i partman/confirm_write_new_label boolean true
#d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
### Account setup
d-i passwd/root-password-crypted password $1$6xBdkGvE$8nLCNRxwABespdFJniEiX0
d-i passwd/make-user boolean false
### Base system installation
d-i apt-setup/non-free boolean false
d-i apt-setup/contrib boolean true
d-i apt-setup/services-select multiselect security, updates
d-i apt-setup/security_host string security.debian.org
d-i apt-setup/local0/repository string \
http://forge.yunohost.org/debian/ buster stable
d-i apt-setup/local0/key string http://forge.yunohost.org/yunohost.asc
d-i apt-setup/local0/comment string YunoHost repository
#d-i debian-installer/allow_unauthenticated string true
# Skip "scan another CD/DVD"
# https://unix.stackexchange.com/a/409237
apt-cdrom-setup apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-first boolean false
d-i apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-failed boolean false
### Package selection
tasksel tasksel/first multiselect standard, ssh-server
# Keep postfix in here, otherwise exim4 might get installed and create a weird
# conflict...
d-i pkgsel/include string postfix yunohost yunohost-admin
d-i pkgsel/upgrade select none
### Deactivate poll on popular packages
popularity-contest popularity-contest/participate boolean false
debconf debconf/frontend select Noninteractive
### Boot loader installation
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
#d-i grub-installer/bootdev string /dev/sda
### Finishing up the installation
d-i finish-install/reboot_in_progress note
d-i cdrom-detect/eject boolean true
d-i debian-installer/exit/reboot boolean true
### YunoHost Debconf (same than in yunohost/install_script)
slapd slapd/password1 password yunohost
slapd slapd/password2 password yunohost
slapd slapd/domain string yunohost.org
slapd shared/organization string yunohost.org
slapd slapd/allow_ldap_v2 boolean false
slapd slapd/invalid_config boolean true
slapd slapd/backend select MDB
postfix postfix/main_mailer_type select Internet Site
postfix postfix/mailname string /etc/mailname
mysql-server-5.5 mysql-server/root_password password yunohost
mysql-server-5.5 mysql-server/root_password_again password yunohost
mariadb-server-10.0 mysql-server/root_password password yunohost
mariadb-server-10.0 mysql-server/root_password_again password yunohost
nslcd nslcd/ldap-bindpw password
nslc nslcd/ldap-starttls boolean false
nslcd nslcd/ldap-reqcert select
nslcd nslcd/ldap-uris string ldap://localhost/
nslcd nslcd/ldap-binddn string
nslcd nslcd/ldap-base string dc=yunohost,dc=org
libnss-ldapd libnss-ldapd/nsswitch multiselect group, passwd, shadow
postsrsd postsrsd/domain string yunohost.org
### Avoid circular dependencies error
d-i preseed/early_command string apt-install debhelper || true