From 6b620664df0dd57ca41486d64ebe48a83ff028fc Mon Sep 17 00:00:00 2001 From: BodgeMaster <> Date: Sun, 2 Jul 2023 20:54:58 +0200 Subject: [PATCH] install stage 1: download resources for stage 2, undo additional GRUB configuration undoes 4ba64868470d4689b9a84af4ae3569d9b3f4d63a --- install-stage1.sh | 31 ++++++++++++++----- notes_to_self.txt | 21 +++---------- package_selections/README.md | 19 ++++++++++++ package_selections/audio/description.txt | 1 + package_selections/audio/none | 11 +++++++ package_selections/audio/options.lst | 3 ++ package_selections/audio/pipewire | 15 +++++++++ package_selections/audio/pipewire-slim | 15 +++++++++ package_selections/desktop/description.txt | 1 + package_selections/desktop/icewm-fancy | 12 +++++++ package_selections/desktop/icewm-light | 12 +++++++ package_selections/desktop/none | 11 +++++++ package_selections/desktop/openbox | 13 ++++++++ package_selections/desktop/options.lst | 4 +++ package_selections/extras/all | 17 ++++++++++ package_selections/extras/all-no-minecraft | 17 ++++++++++ package_selections/extras/description.txt | 1 + package_selections/extras/desktop-backgrounds | 16 ++++++++++ package_selections/extras/minecraft | 16 ++++++++++ package_selections/extras/minesweeper | 17 ++++++++++ package_selections/extras/none | 11 +++++++ package_selections/extras/options.lst | 7 +++++ package_selections/extras/snake | 17 ++++++++++ package_selections/multimedia/description.txt | 1 + package_selections/multimedia/none | 11 +++++++ package_selections/multimedia/options.lst | 2 ++ package_selections/multimedia/vlc | 16 ++++++++++ package_selections/nvidia/description.txt | 9 ++++++ package_selections/nvidia/none | 11 +++++++ package_selections/nvidia/nvidia | 17 ++++++++++ package_selections/nvidia/nvidia390 | 17 ++++++++++ package_selections/nvidia/nvidia470 | 17 ++++++++++ package_selections/nvidia/options.lst | 4 +++ package_selections/pre-configure/bashrc | 13 ++++++++ .../pre-configure/description.txt | 1 + .../pre-configure/gui-and-bashrc | 17 ++++++++++ package_selections/pre-configure/none | 11 +++++++ package_selections/pre-configure/options.lst | 3 ++ package_selections/sections.lst | 10 ++++++ package_selections/systray/description.txt | 1 + package_selections/systray/network | 20 ++++++++++++ package_selections/systray/network-and-audio | 20 ++++++++++++ package_selections/systray/none | 11 +++++++ package_selections/systray/options.lst | 3 ++ package_selections/terminal/description.txt | 1 + package_selections/terminal/lxterminal | 15 +++++++++ package_selections/terminal/none | 11 +++++++ package_selections/terminal/options.lst | 3 ++ package_selections/terminal/xterm | 15 +++++++++ package_selections/utilities/description.txt | 1 + .../utilities/desktop-integrated-guisysmon | 17 ++++++++++ .../utilities/desktop-integrated-htop | 17 ++++++++++ package_selections/utilities/none | 11 +++++++ package_selections/utilities/options.lst | 5 +++ package_selections/utilities/xfe-guisysmon | 17 ++++++++++ package_selections/utilities/xfe-htop | 15 +++++++++ package_selections/web/description.txt | 1 + package_selections/web/elinks | 11 +++++++ package_selections/web/evil | 15 +++++++++ package_selections/web/firefox | 15 +++++++++ package_selections/web/firefox-esr | 15 +++++++++ package_selections/web/none | 11 +++++++ package_selections/web/options.lst | 5 +++ 63 files changed, 679 insertions(+), 25 deletions(-) create mode 100644 package_selections/README.md create mode 100644 package_selections/audio/description.txt create mode 100644 package_selections/audio/none create mode 100644 package_selections/audio/options.lst create mode 100644 package_selections/audio/pipewire create mode 100644 package_selections/audio/pipewire-slim create mode 100644 package_selections/desktop/description.txt create mode 100644 package_selections/desktop/icewm-fancy create mode 100644 package_selections/desktop/icewm-light create mode 100644 package_selections/desktop/none create mode 100644 package_selections/desktop/openbox create mode 100644 package_selections/desktop/options.lst create mode 100644 package_selections/extras/all create mode 100644 package_selections/extras/all-no-minecraft create mode 100644 package_selections/extras/description.txt create mode 100644 package_selections/extras/desktop-backgrounds create mode 100644 package_selections/extras/minecraft create mode 100644 package_selections/extras/minesweeper create mode 100644 package_selections/extras/none create mode 100644 package_selections/extras/options.lst create mode 100644 package_selections/extras/snake create mode 100644 package_selections/multimedia/description.txt create mode 100644 package_selections/multimedia/none create mode 100644 package_selections/multimedia/options.lst create mode 100644 package_selections/multimedia/vlc create mode 100644 package_selections/nvidia/description.txt create mode 100644 package_selections/nvidia/none create mode 100644 package_selections/nvidia/nvidia create mode 100644 package_selections/nvidia/nvidia390 create mode 100644 package_selections/nvidia/nvidia470 create mode 100644 package_selections/nvidia/options.lst create mode 100644 package_selections/pre-configure/bashrc create mode 100644 package_selections/pre-configure/description.txt create mode 100644 package_selections/pre-configure/gui-and-bashrc create mode 100644 package_selections/pre-configure/none create mode 100644 package_selections/pre-configure/options.lst create mode 100644 package_selections/sections.lst create mode 100644 package_selections/systray/description.txt create mode 100644 package_selections/systray/network create mode 100644 package_selections/systray/network-and-audio create mode 100644 package_selections/systray/none create mode 100644 package_selections/systray/options.lst create mode 100644 package_selections/terminal/description.txt create mode 100644 package_selections/terminal/lxterminal create mode 100644 package_selections/terminal/none create mode 100644 package_selections/terminal/options.lst create mode 100644 package_selections/terminal/xterm create mode 100644 package_selections/utilities/description.txt create mode 100644 package_selections/utilities/desktop-integrated-guisysmon create mode 100644 package_selections/utilities/desktop-integrated-htop create mode 100644 package_selections/utilities/none create mode 100644 package_selections/utilities/options.lst create mode 100644 package_selections/utilities/xfe-guisysmon create mode 100644 package_selections/utilities/xfe-htop create mode 100644 package_selections/web/description.txt create mode 100644 package_selections/web/elinks create mode 100644 package_selections/web/evil create mode 100644 package_selections/web/firefox create mode 100644 package_selections/web/firefox-esr create mode 100644 package_selections/web/none create mode 100644 package_selections/web/options.lst diff --git a/install-stage1.sh b/install-stage1.sh index 6e00800..c9b55e7 100644 --- a/install-stage1.sh +++ b/install-stage1.sh @@ -389,14 +389,29 @@ run_in_target xbps-reconfigure -fa >> $LOGFILE 2>&1 echo "done" echo -n "Adding stage 2 installer... " -wget --output-document=/mnt/target/install-stage2.sh https://lostcave.ddnss.de/git/BodgeMaster/void-minecraft-usb/raw/branch/master/install-stage2.sh >> $LOGFILE 2>&1 -chmod 744 /mnt/target/install-stage2.sh >> $LOGFILE 2>&1 -echo "menuentry 'Continue Void-USB Installation' { - echo 'Loading Linux...' - linux $(run_in_target find /boot -type l -name "vmlinu*") quiet root=/dev/loop0 ro void-usb-container=UUID=$(lsblk --raw --noheadings --output UUID "$TARGET_PART_BIG") init=/install-stage2.sh - echo 'Loading initial ramdisk...' - initrd $(run_in_target find /boot -type l -name "init*") -}" >> /mnt/target/boot/efi/LOADER/grub/custom_before.cfg + +STAGE2_DIR="/mnt/target/opt/void-usb/installer" +function get_stage2_file { + [ -d "$STAGE2_DIR/$(dirname $1)" ] || mkdir -p "$STAGE2_DIR/$(dirname $1)" + wget --output-document="$STAGE2_DIR/$1" "$GIT_REPO_BASE/$1" >> $LOGFILE 2>&1 +} + +get_stage2_file install-stage2.sh >> $LOGFILE 2>&1 +chmod 744 "$STAGE2_DIR/install-stage2.sh" >> $LOGFILE 2>&1 + +get_stage2_file package_selections/sections.lst +readarray -t SECTIONS < "$STAGE2_DIR/package_selections/sections.lst" +for I in ${!SECTIONS[@]}; do + get_stage2_file "package_selections/${SECTIONS[$I]}/description.txt" + + get_stage2_file "package_selections/${SECTIONS[$I]}/options.lst" + readarray -t OPTIONS < "$STAGE2_DIR/package_selections/${SECTIONS[$I]}/options.lst" + for J in ${!OPTIONS[@]}; do + get_stage2_file "package_selections/${SECTIONS[$I]}/${OPTIONS[$J]}" + done +done + +#TODO: auto-login root and run install stage 2 echo "done" echo "Creating system image..." diff --git a/notes_to_self.txt b/notes_to_self.txt index e64a6a8..1a61c80 100644 --- a/notes_to_self.txt +++ b/notes_to_self.txt @@ -42,23 +42,9 @@ Stage 2: -> acpid -> ask user to connect to network using nmtui -> install packages - -> setxkbmap xauth xorg-video-drivers mesa mesa-dri xorg-server elogind xorg-input-drivers xrandr acpilight xhost xinit xrdb xinput xgamma xset iceauth sessreg transset xcmsdb xkbutils xmodmap dejavu-fonts-ttf - -> terminal? - -> browser? - -> prism launcher - -> java (multiple versions?) - -> pipewire (pulsemixer?) - -> ask about nvidia driver - -> install if needed - -> find out when and where to set `nvidia-drm.modeset=1` - -> ask whether to use CTWM or IceWM - -> short description of up and downsides - -> if CTWM, also install - -> xclock - -> if IceWM, also install - -> network-manager-applet - -> sound applet - -> configure zram swap + -> go through the list of choices for what the user can install + -> Minimum viable Xorg setup: setxkbmap xauth xorg-video-drivers mesa mesa-dri xorg-server elogind xorg-input-drivers xrandr acpilight xhost xinit xrdb xinput xgamma xset iceauth sessreg transset xcmsdb xkbutils xmodmap dejavu-fonts-ttf + -> don’t ask the user if there is only one option -> passwd -l root -> populate /etc/skel -> ultimate bashrc bc why not @@ -77,3 +63,4 @@ Stage 2: -> add to groups -> including sudo group -> build new squashfs image and reboot + -> rm -r /opt/void-usb/installer diff --git a/package_selections/README.md b/package_selections/README.md new file mode 100644 index 0000000..8ec2f98 --- /dev/null +++ b/package_selections/README.md @@ -0,0 +1,19 @@ +# Package Selections + +These are intended to give the user a bunch of choices when installing the +system. For example whether to use XFE or a more fully featured set of applications. + +## Sections + +Sections contain choices of a specific category. The sections are stored in +folders containing the section’s description and its options. +For each section, only one of the options can be chosen. +The file `sections.lst` holds a list of all available sections in the order +in which the user will be asked about them. + +## Options + +Options are shell scripts that are sourced by the stage 2 installer. +They hold variables for description, package list, pre-install checks, +and additional post-install actions. +Options are shown in the order in which they appear in `options.lst`. diff --git a/package_selections/audio/description.txt b/package_selections/audio/description.txt new file mode 100644 index 0000000..48abf68 --- /dev/null +++ b/package_selections/audio/description.txt @@ -0,0 +1 @@ +Choose which audio packages to install diff --git a/package_selections/audio/none b/package_selections/audio/none new file mode 100644 index 0000000..bbab7f6 --- /dev/null +++ b/package_selections/audio/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="No audio" + +PACKAGES="" + +function post-install { + echo "audio/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/audio/options.lst b/package_selections/audio/options.lst new file mode 100644 index 0000000..8a9a6bd --- /dev/null +++ b/package_selections/audio/options.lst @@ -0,0 +1,3 @@ +pipewire +pipewire-slim +none diff --git a/package_selections/audio/pipewire b/package_selections/audio/pipewire new file mode 100644 index 0000000..9c052ef --- /dev/null +++ b/package_selections/audio/pipewire @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Pipewire with GUI settings (Pavucontrol)" + +PACKAGES="pipewire pavucontrol" + +function post-install { + echo "audio/pipewire" >> /tmp/stage-2-choices +} diff --git a/package_selections/audio/pipewire-slim b/package_selections/audio/pipewire-slim new file mode 100644 index 0000000..e0462d4 --- /dev/null +++ b/package_selections/audio/pipewire-slim @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Pipewire with text-based settings (pulsemixer)" + +PACKAGES="pipewire pulsemixer" + +function post-install { + echo "audio/pipewire-slim" >> /tmp/stage-2-choices +} diff --git a/package_selections/desktop/description.txt b/package_selections/desktop/description.txt new file mode 100644 index 0000000..0a911f4 --- /dev/null +++ b/package_selections/desktop/description.txt @@ -0,0 +1 @@ +Choose a desktop setup to install diff --git a/package_selections/desktop/icewm-fancy b/package_selections/desktop/icewm-fancy new file mode 100644 index 0000000..91c2408 --- /dev/null +++ b/package_selections/desktop/icewm-fancy @@ -0,0 +1,12 @@ +function check { + return 0 +} + +DESCRIPTION="BodgeMaster’s IceWM setup (recommended)" + +# TODO +PACKAGES="" + +function post-install { + echo "desktop/icewm-fancy" >> /tmp/stage-2-choices +} diff --git a/package_selections/desktop/icewm-light b/package_selections/desktop/icewm-light new file mode 100644 index 0000000..55bf6ed --- /dev/null +++ b/package_selections/desktop/icewm-light @@ -0,0 +1,12 @@ +function check { + return 0 +} + +DESCRIPTION="Lighter IceWM setup" + +# TODO +PACKAGES="" + +function post-install { + echo "desktop/icewm-light" >> /tmp/stage-2-choices +} diff --git a/package_selections/desktop/none b/package_selections/desktop/none new file mode 100644 index 0000000..4783fc3 --- /dev/null +++ b/package_selections/desktop/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="No desktop - for advanced users that want to set things up themselves" + +PACKAGES="" + +function post-install { + echo "desktop/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/desktop/openbox b/package_selections/desktop/openbox new file mode 100644 index 0000000..e77a1c6 --- /dev/null +++ b/package_selections/desktop/openbox @@ -0,0 +1,13 @@ +function check { + return 0 +} + +# TODO: more information for the user +DESCRIPTION="OpenBox window manager (even more lightweight???)" + +# TODO also add xclock +PACKAGES="" + +function post-install { + echo "desktop/openbox" >> /tmp/stage-2-choices +} diff --git a/package_selections/desktop/options.lst b/package_selections/desktop/options.lst new file mode 100644 index 0000000..36c89ec --- /dev/null +++ b/package_selections/desktop/options.lst @@ -0,0 +1,4 @@ +icewm-fancy +icewm-light +openbox +none diff --git a/package_selections/extras/all b/package_selections/extras/all new file mode 100644 index 0000000..573cc28 --- /dev/null +++ b/package_selections/extras/all @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="All of the above" + +#TODO +PACKAGES="" + +function post-install { + # TODO: configure desktop backgounds if using IceWM + echo "extras/all" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/all-no-minecraft b/package_selections/extras/all-no-minecraft new file mode 100644 index 0000000..cfb3f58 --- /dev/null +++ b/package_selections/extras/all-no-minecraft @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="All of the above except Minecraft" + +#TODO +PACKAGES="" + +function post-install { + # TODO: configure desktop backgounds if using IceWM + echo "extras/all-no-minecraft" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/description.txt b/package_selections/extras/description.txt new file mode 100644 index 0000000..7657627 --- /dev/null +++ b/package_selections/extras/description.txt @@ -0,0 +1 @@ +Choose some extras to install diff --git a/package_selections/extras/desktop-backgrounds b/package_selections/extras/desktop-backgrounds new file mode 100644 index 0000000..bbd834c --- /dev/null +++ b/package_selections/extras/desktop-backgrounds @@ -0,0 +1,16 @@ +function check { + if grep "desktop/icewm" /tmp/stage-2-choices >/dev/null 2>&1; then + return 0 + else + return 1 + fi +} + +DESCRIPTION="Add some desktop backgrounds and randomly choose one on login" + +PACKAGES="" + +function post-install { + # TODO: configure + echo "extras/desktop-backgrounds" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/minecraft b/package_selections/extras/minecraft new file mode 100644 index 0000000..e6e0765 --- /dev/null +++ b/package_selections/extras/minecraft @@ -0,0 +1,16 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Prism Launcher for Minecraft" + +#TODO: Java stuff +PACKAGES="PrismLauncher" + +function post-install { + echo "extras/minecraft" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/minesweeper b/package_selections/extras/minesweeper new file mode 100644 index 0000000..94beac3 --- /dev/null +++ b/package_selections/extras/minesweeper @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +#TODO +DESCRIPTION="??? (Minesweeper)" + +#TODO +PACKAGES="" + +function post-install { + echo "extras/minesweeper" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/none b/package_selections/extras/none new file mode 100644 index 0000000..1004162 --- /dev/null +++ b/package_selections/extras/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="None" + +PACKAGES="" + +function post-install { + echo "extras/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/extras/options.lst b/package_selections/extras/options.lst new file mode 100644 index 0000000..a5e4bdf --- /dev/null +++ b/package_selections/extras/options.lst @@ -0,0 +1,7 @@ +desktop-backgrounds +minesweeper +snake +minecraft +all-no-minecraft +all +none diff --git a/package_selections/extras/snake b/package_selections/extras/snake new file mode 100644 index 0000000..3dec7dc --- /dev/null +++ b/package_selections/extras/snake @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +#TODO +DESCRIPTION="nSnake" + +#TODO +PACKAGES="nSnake" + +function post-install { + echo "extras/snake" >> /tmp/stage-2-choices +} diff --git a/package_selections/multimedia/description.txt b/package_selections/multimedia/description.txt new file mode 100644 index 0000000..e8628cc --- /dev/null +++ b/package_selections/multimedia/description.txt @@ -0,0 +1 @@ +Install a media player? diff --git a/package_selections/multimedia/none b/package_selections/multimedia/none new file mode 100644 index 0000000..0ba9c16 --- /dev/null +++ b/package_selections/multimedia/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="No" + +PACKAGES="" + +function post-install { + echo "multimedia/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/multimedia/options.lst b/package_selections/multimedia/options.lst new file mode 100644 index 0000000..aa387a6 --- /dev/null +++ b/package_selections/multimedia/options.lst @@ -0,0 +1,2 @@ +vlc +none diff --git a/package_selections/multimedia/vlc b/package_selections/multimedia/vlc new file mode 100644 index 0000000..2428b2f --- /dev/null +++ b/package_selections/multimedia/vlc @@ -0,0 +1,16 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Install VLC" + +#TODO: fluidsynth MIDI stuff +PACKAGES="vlc" + +function post-install { + echo "multimedia/vlc" >> /tmp/stage-2-choices +} diff --git a/package_selections/nvidia/description.txt b/package_selections/nvidia/description.txt new file mode 100644 index 0000000..5650610 --- /dev/null +++ b/package_selections/nvidia/description.txt @@ -0,0 +1,9 @@ +Do you want to install the proprietary Nvidia driver? + +By default, Void Linux ships with the open-source nouveau driver. +This is nice because it gets the system up and running when using an +Nvidia GPU but, due to Nvidia’s secrecy, it isn’t particularly good. + +Installing the proprietary driver is recommended if you want to use Nvidia GPUs. + +Different versions are available. You can only choose one. diff --git a/package_selections/nvidia/none b/package_selections/nvidia/none new file mode 100644 index 0000000..ca24ea2 --- /dev/null +++ b/package_selections/nvidia/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="Don’t install." + +PACKAGES="" + +function post-install { + echo "nvidia/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/nvidia/nvidia b/package_selections/nvidia/nvidia new file mode 100644 index 0000000..e9efae6 --- /dev/null +++ b/package_selections/nvidia/nvidia @@ -0,0 +1,17 @@ +function check { + if xbps-query glibc >/dev/null 2>&1; then + return 0 + else + return 1 + fi +} + +DESCRIPTION="Latest Nvidia driver, supports GTX ??? series and up" + +#TODO: optimus support? +PACKAGES="nvidia" + +function post-install { + #TODO: nvidia modeset kernel parameter? + echo "nvidia/nvidia" >> /tmp/stage-2-choices +} diff --git a/package_selections/nvidia/nvidia390 b/package_selections/nvidia/nvidia390 new file mode 100644 index 0000000..51261f6 --- /dev/null +++ b/package_selections/nvidia/nvidia390 @@ -0,0 +1,17 @@ +function check { + if xbps-query glibc >/dev/null 2>&1; then + return 0 + else + return 1 + fi +} + +DESCRIPTION="Legacy Nvidia driver, version 390, supports GTX ??? series" + +#TODO: Optimus support? +PACKAGES="nvidia390" + +function post-install { + #TODO: nvidia modeset kernel parameter? + echo "nvidia/nvidia390" >> /tmp/stage-2-choices +} diff --git a/package_selections/nvidia/nvidia470 b/package_selections/nvidia/nvidia470 new file mode 100644 index 0000000..bd6b6e1 --- /dev/null +++ b/package_selections/nvidia/nvidia470 @@ -0,0 +1,17 @@ +function check { + if xbps-query glibc >/dev/null 2>&1; then + return 0 + else + return 1 + fi +} + +DESCRIPTION="Legacy Nvidia driver, version 470, supports GTX ??? series" + +#TODO: optimus support? +PACKAGES="nvidia470" + +function post-install { + #TODO: nvidia modeset kernel parameter? + echo "nvidia/nvidia470" >> /tmp/stage-2-choices +} diff --git a/package_selections/nvidia/options.lst b/package_selections/nvidia/options.lst new file mode 100644 index 0000000..7f83b08 --- /dev/null +++ b/package_selections/nvidia/options.lst @@ -0,0 +1,4 @@ +none +nvidia +nvidia470 +nvidia390 diff --git a/package_selections/pre-configure/bashrc b/package_selections/pre-configure/bashrc new file mode 100644 index 0000000..42add9f --- /dev/null +++ b/package_selections/pre-configure/bashrc @@ -0,0 +1,13 @@ +function check { + return 0 +} + +DESCRIPTION="Only add custom bashrc (advanced users)" + +PACKAGES="" + +function post-install { + #TODO: configure things + + echo "pre-configure/bashrc" >> /tmp/stage-2-choices +} diff --git a/package_selections/pre-configure/description.txt b/package_selections/pre-configure/description.txt new file mode 100644 index 0000000..25f8342 --- /dev/null +++ b/package_selections/pre-configure/description.txt @@ -0,0 +1 @@ +Do you want some quality-of-life configuration done? diff --git a/package_selections/pre-configure/gui-and-bashrc b/package_selections/pre-configure/gui-and-bashrc new file mode 100644 index 0000000..f3cea31 --- /dev/null +++ b/package_selections/pre-configure/gui-and-bashrc @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Auto-start GUI session on login and add custom bashrc (recommended)" + +PACKAGES="" + +function post-install { + #TODO: configure things + + echo "pre-configure/gui-and-bashrc" >> /tmp/stage-2-choices +} diff --git a/package_selections/pre-configure/none b/package_selections/pre-configure/none new file mode 100644 index 0000000..bf3fdea --- /dev/null +++ b/package_selections/pre-configure/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="No (advanced users)" + +PACKAGES="" + +function post-install { + echo "pre-configure/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/pre-configure/options.lst b/package_selections/pre-configure/options.lst new file mode 100644 index 0000000..019e1cb --- /dev/null +++ b/package_selections/pre-configure/options.lst @@ -0,0 +1,3 @@ +gui-and-bashrc +bashrc +none diff --git a/package_selections/sections.lst b/package_selections/sections.lst new file mode 100644 index 0000000..a1d09b0 --- /dev/null +++ b/package_selections/sections.lst @@ -0,0 +1,10 @@ +nvidia +desktop +audio +systray +terminal +utilities +pre-configure +web +multimedia +extras diff --git a/package_selections/systray/description.txt b/package_selections/systray/description.txt new file mode 100644 index 0000000..b67bc48 --- /dev/null +++ b/package_selections/systray/description.txt @@ -0,0 +1 @@ +Do you want to install system tray applets? diff --git a/package_selections/systray/network b/package_selections/systray/network new file mode 100644 index 0000000..21cca79 --- /dev/null +++ b/package_selections/systray/network @@ -0,0 +1,20 @@ +function check { + if grep "desktop/icewm" /tmp/stage-2-choices >/dev/null 2>&1; then + if grep "audio/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 0 + else + return 1 + fi + else + return 1 + fi +} + +DESCRIPTION="Add tray icon for network" + +#TODO +PACKAGES="" + +function post-install { + echo "systray/network" >> /tmp/stage-2-choices +} diff --git a/package_selections/systray/network-and-audio b/package_selections/systray/network-and-audio new file mode 100644 index 0000000..6300567 --- /dev/null +++ b/package_selections/systray/network-and-audio @@ -0,0 +1,20 @@ +function check { + if grep "desktop/icewm" /tmp/stage-2-choices >/dev/null 2>&1; then + if grep "audio/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi + else + return 1 + fi +} + +DESCRIPTION="Add tray icon for network and audio" + +#TODO +PACKAGES="" + +function post-install { + echo "systray/network-and-audio" >> /tmp/stage-2-choices +} diff --git a/package_selections/systray/none b/package_selections/systray/none new file mode 100644 index 0000000..bfce3cb --- /dev/null +++ b/package_selections/systray/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="Don’t install additional tray icons" + +PACKAGES="" + +function post-install { + echo "systray/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/systray/options.lst b/package_selections/systray/options.lst new file mode 100644 index 0000000..a3736a3 --- /dev/null +++ b/package_selections/systray/options.lst @@ -0,0 +1,3 @@ +network-and-audio +network +none diff --git a/package_selections/terminal/description.txt b/package_selections/terminal/description.txt new file mode 100644 index 0000000..134cae5 --- /dev/null +++ b/package_selections/terminal/description.txt @@ -0,0 +1 @@ +Which GUI terminal emulator do you want to install? diff --git a/package_selections/terminal/lxterminal b/package_selections/terminal/lxterminal new file mode 100644 index 0000000..d35c761 --- /dev/null +++ b/package_selections/terminal/lxterminal @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="LXDE Terminal (recommended)" + +PACKAGES="lxterminal" + +function post-install { + echo "terminal/lxterminal" >> /tmp/stage-2-choices +} diff --git a/package_selections/terminal/none b/package_selections/terminal/none new file mode 100644 index 0000000..27811e7 --- /dev/null +++ b/package_selections/terminal/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="None (advanced users only)" + +PACKAGES="none" + +function post-install { + echo "terminal/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/terminal/options.lst b/package_selections/terminal/options.lst new file mode 100644 index 0000000..12fb9cd --- /dev/null +++ b/package_selections/terminal/options.lst @@ -0,0 +1,3 @@ +lxterminal +xterm +none diff --git a/package_selections/terminal/xterm b/package_selections/terminal/xterm new file mode 100644 index 0000000..b2004d5 --- /dev/null +++ b/package_selections/terminal/xterm @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Xterm" + +PACKAGES="xterm" + +function post-install { + echo "terminal/xterm" >> /tmp/stage-2-choices +} diff --git a/package_selections/utilities/description.txt b/package_selections/utilities/description.txt new file mode 100644 index 0000000..033d14f --- /dev/null +++ b/package_selections/utilities/description.txt @@ -0,0 +1 @@ +Which set of desktop utilities do you want to install? diff --git a/package_selections/utilities/desktop-integrated-guisysmon b/package_selections/utilities/desktop-integrated-guisysmon new file mode 100644 index 0000000..7f07634 --- /dev/null +++ b/package_selections/utilities/desktop-integrated-guisysmon @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +#TODO +DESCRIPTION="Fully featured (list of things) (recommended)" + +#TODO +PACKAGES="" + +function post-install { + echo "utilities/desktop-integrated-guisysmon" >> /tmp/stage-2-choices +} diff --git a/package_selections/utilities/desktop-integrated-htop b/package_selections/utilities/desktop-integrated-htop new file mode 100644 index 0000000..4bad1f1 --- /dev/null +++ b/package_selections/utilities/desktop-integrated-htop @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +#TODO +DESCRIPTION="Fully featured (list of things with htop)" + +#TODO +PACKAGES="" + +function post-install { + echo "utilities/desktop-integrated-htop" >> /tmp/stage-2-choices +} diff --git a/package_selections/utilities/none b/package_selections/utilities/none new file mode 100644 index 0000000..7b0d51b --- /dev/null +++ b/package_selections/utilities/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="None" + +PACKAGES="" + +function post-install { + echo "utilities/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/utilities/options.lst b/package_selections/utilities/options.lst new file mode 100644 index 0000000..511a989 --- /dev/null +++ b/package_selections/utilities/options.lst @@ -0,0 +1,5 @@ +desktop-integrated-guisysmon +xfe-guisysmon +desktop-integrated-htop +xfe-htop +none diff --git a/package_selections/utilities/xfe-guisysmon b/package_selections/utilities/xfe-guisysmon new file mode 100644 index 0000000..b6d2c46 --- /dev/null +++ b/package_selections/utilities/xfe-guisysmon @@ -0,0 +1,17 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +#TODO +DESCRIPTION="Smaller set of desktop utilities (XFE + ???)" + +#TODO +PACKAGES="xfe" + +function post-install { + echo "utilities/xfe-guisysmon" >> /tmp/stage-2-choices +} diff --git a/package_selections/utilities/xfe-htop b/package_selections/utilities/xfe-htop new file mode 100644 index 0000000..833b2a5 --- /dev/null +++ b/package_selections/utilities/xfe-htop @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Smaller set of desktop utilities (XFE + Htop)" + +PACKAGES="xfe htop" + +function post-install { + echo "utilities/xfe-htop" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/description.txt b/package_selections/web/description.txt new file mode 100644 index 0000000..29a6255 --- /dev/null +++ b/package_selections/web/description.txt @@ -0,0 +1 @@ +Install a web browser? diff --git a/package_selections/web/elinks b/package_selections/web/elinks new file mode 100644 index 0000000..ecb4d2b --- /dev/null +++ b/package_selections/web/elinks @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="Install ELinks (terminal-based browser)" + +PACKAGES="elinks" + +function post-install { + echo "web/elinks" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/evil b/package_selections/web/evil new file mode 100644 index 0000000..a4e3f45 --- /dev/null +++ b/package_selections/web/evil @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Join the dark side with Chromium (Consider Firefox... You can still install Chromium later.)" + +PACKAGES="chromium" + +function post-install { + echo "web/evil" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/firefox b/package_selections/web/firefox new file mode 100644 index 0000000..8c81b55 --- /dev/null +++ b/package_selections/web/firefox @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Install Firefox (recommended)" + +PACKAGES="firefox" + +function post-install { + echo "web/firefox" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/firefox-esr b/package_selections/web/firefox-esr new file mode 100644 index 0000000..f8c3b53 --- /dev/null +++ b/package_selections/web/firefox-esr @@ -0,0 +1,15 @@ +function check { + if grep "desktop/none" /tmp/stage-2-choices >/dev/null 2>&1; then + return 1 + else + return 0 + fi +} + +DESCRIPTION="Install Firefox - Extended Support Release (ESR)" + +PACKAGES="firefox-esr" + +function post-install { + echo "web/firefox-esr" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/none b/package_selections/web/none new file mode 100644 index 0000000..32d0693 --- /dev/null +++ b/package_selections/web/none @@ -0,0 +1,11 @@ +function check { + return 0 +} + +DESCRIPTION="No web browser" + +PACKAGES="" + +function post-install { + echo "web/none" >> /tmp/stage-2-choices +} diff --git a/package_selections/web/options.lst b/package_selections/web/options.lst new file mode 100644 index 0000000..e0a6273 --- /dev/null +++ b/package_selections/web/options.lst @@ -0,0 +1,5 @@ +firefox +firefox-esr +evil +elinks +none