diff options
| author | Craig Jennings <craigmartinjennings@gmail.com> | 2023-05-04 15:47:09 -0500 |
|---|---|---|
| committer | Craig Jennings <craigmartinjennings@gmail.com> | 2023-05-04 15:47:09 -0500 |
| commit | dcdca371e59f225ace002f30cf7dd3ee1b2f4a4b (patch) | |
| tree | df9c25ae4eac629c12509f1d8e0da1d01fb9067e /archsetup.sh | |
| parent | 13d60ec80f32f03958646ad7188151ae9ce4ccae (diff) | |
cleanup, add themes/cursors,
- remove snapper
- install dmidecode
- install vimix themes and cursors
- uncomment tor-browser
- install thunderbird
- comment out all quiet boot that doesn't apply to zfs
- remove btrfs snapshots section
Diffstat (limited to 'archsetup.sh')
| -rwxr-xr-x | archsetup.sh | 137 |
1 files changed, 56 insertions, 81 deletions
diff --git a/archsetup.sh b/archsetup.sh index 6baa44f..e9fcd64 100755 --- a/archsetup.sh +++ b/archsetup.sh @@ -7,16 +7,14 @@ Notes: -I define two levels of errors: +There are two levels of errors: * CRASH: Issues that will halt forward progress, aborting this script. -* ERROR: Issues not serious enough to prevent the script from continuing. +* ERROR: Issues not serious enough to halt the script. Both are printed on screen and in the $logfile. Stderr is also printed to the $logfile for all relevant info. -This script creates a tmpfs RAM disk for all compilation. - -Outstanding Tasks: - +This script creates a tmpfs RAM disk for all compilation. This speeds up +building and installing, and all source code no longer exists after reboot. ' # Code @@ -447,13 +445,7 @@ desktop_environment() { git_install $dwm_repo git_install $dmenu_repo git_install $st_repo - aur_install pinentry-dmenu # password entry works with dmenu - - # for hyprland - # pacman_install hyprland - # aur_install waybar-hyprland-fix - # pacman_install xdg-desktop-portal-hyprland - # aur_install foot + aur_install pinentry-dmenu # password entry that leverages dmenu # Core Fonts @@ -463,17 +455,17 @@ desktop_environment() { pacman_install noto-fonts-emoji aur_install ttf-all-the-icons - # File System Utilities + # System Utilities - action="File System Utilities" && display "subtitle" "$action" + action="System Utilities" && display "subtitle" "$action" pacman_install sshfs pacman_install dosfstools pacman_install exfat-utils pacman_install testdisk pacman_install ntfs-3g pacman_install udisks2 + pacman_install dmidecode aur_install inxi - pacman_install snapper # File Associations @@ -566,12 +558,19 @@ desktop_environment() { aur_install colorpicker - # Browser + # Theme and Cursor + + action="UI Theme" && display "subtitle" "$action" + + for software in vimix-icon-theme vimix-cursors vimix-gtk-themes; do + aur_install $software + done; + + # Browsers action="Browsers" && display "subtitle" "$action" pacman_install firefox - # aur_install tor-browser - # currently getting errors with the key validation + aur_install tor-browser # Install Printing @@ -592,7 +591,7 @@ developer_workstation () { action="Programming Languages and Utilities" && display "subtitle" "$action" pacman_install clang # C/C++ compiler pacman_install cmake # make system - pacman_install gdb # the gnu debuffer + pacman_install gdb # the gnu debugger pacman_install splint # C programming static analysis pacman_install valgrind # memory management utility @@ -708,6 +707,7 @@ supplemental_software() { pacman_install smartmontools # monitors hard drives pacman_install syncthing # sync utility pacman_install texlive-most # latex + pacman_install thunderbird # email, calendar, rss feeds pacman_install transmission-cli # bittorrent client pacman_install transmission-remote-gtk # bittorrent client pacman_install unclutter # hides mouse cursor when not being used @@ -735,10 +735,10 @@ supplemental_software() { git_install https://github.com/clamiax/snore.git # sleep with feedback pip_install ranger # terminal file manager pip_install pydf # better display of available space on mounted filesystems - pip_install tidal-dl # tidal-dl: tidal as yt-dlp:youtube + pip_install tidal-dl # tidal-dl:tidal as yt-dlp:youtube pacman_install lxappearance # GTK+ theme switcher - # nice fonts + # some nice fonts pacman_install ttf-crimson-pro pacman_install ttf-crimson-pro-variable pacman_install ttf-sourcecodepro-nerd @@ -763,70 +763,46 @@ silent_boot() { (echo "kernel.printk = 3 3 3 3" >/etc/sysctl.d/20-quiet-printk.conf) || \ error "error" "$action" "$?" - action="delegating fsck messages from udev to systemd" && display "task" "$action" - sed -i "s/.*HOOKS=(base udev autodetect keyboard keymap modconf block filesystems fsck).*/HOOKS=(base systemd autodetect keyboard keymap modconf block filesystems fsck)/" /etc/mkinitcpio.conf || error "error" "running sed on mkinitcpio.conf to hide fsck messages" "$?" - mkinitcpio -P >> "$logfile" 2>&1 || error "error" "running mkinitcpio -P to silence fsck messages" "$?" + # action="delegating fsck messages from udev to systemd" && display "task" "$action" + # sed -i "s/.*HOOKS=(base udev autodetect keyboard keymap modconf block filesystems fsck).*/HOOKS=(base systemd autodetect keyboard keymap modconf block filesystems fsck)/" /etc/mkinitcpio.conf || error "error" "running sed on mkinitcpio.conf to hide fsck messages" "$?" + # mkinitcpio -P >> "$logfile" 2>&1 || error "error" "running mkinitcpio -P to silence fsck messages" "$?" - action="instructing systemd to check filesystems" && display "task" "$action" - servicefile=/usr/lib/systemd/system/systemd-fsck-root.service - [ -f $servicefile ] && echo "StandardOutput=null" >>$servicefile && \ - echo "StandardError=journal+console" >>$servicefile + # action="instructing systemd to check filesystems" && display "task" "$action" + # servicefile=/usr/lib/systemd/system/systemd-fsck-root.service + # [ -f $servicefile ] && echo "StandardOutput=null" >>$servicefile && \ + # echo "StandardError=journal+console" >>$servicefile - servicefile=/usr/lib/systemd/system/systemd-fsck@.service - [ -f $servicefile ] && echo "StandardOutput=null" >>$servicefile && \ - echo "StandardError=journal+console" >>$servicefile + # servicefile=/usr/lib/systemd/system/systemd-fsck@.service + # [ -f $servicefile ] && echo "StandardOutput=null" >>$servicefile && \ + # echo "StandardError=journal+console" >>$servicefile - action="removing hostname from login prompt" && display "task" "$action" - sed -i "s/--noclear/--nohostname --noclear/g" /usr/lib/systemd/system/getty@.service \ - || error "error" "$action" "$?" + # action="removing hostname from login prompt" && display "task" "$action" + # sed -i "s/--noclear/--nohostname --noclear/g" /usr/lib/systemd/system/getty@.service \ + # || error "error" "$action" "$?" action="silencing the unneeded and chatty watchdog module" && display "task" "$action" echo "blacklist iTCO_wdt" >/etc/modprobe.d/nowatchdog.conf || error "error" "$action" "$?" - # on systemd boot, eliminate timeout and silence boot text - if [ -f /boot/loader/loader.conf ]; then - action="eliminating timeout and silencing boot test on systemd boot" && display "task" "$action" - echo "timeout=0" >/boot/loader/loader.conf - - # the file in this location was named based on the time of the install, so we must use find to identify it. - kernelfile=$(find /boot/loader/entries/ -name "*.conf") - # hush boot output via kernel parameters - sed -i "/.*options root=PARTUUID.*/ s/$/quiet rd.systemd.show_status=auto rd.udev.log_level=2 nvme.noacpi=1 mem_sleep_default=deep nowatchdog/" "$kernelfile" - fi - - # if grub, reset timeouts and adjust log levels - if [ -f /etc/default/grub ]; then - action="resetting timeouts and adjusting log levels on grub boot" && display "task" "$action" - sed -i "s/.*GRUB_TIMEOUT=.*/GRUB_TIMEOUT=2/g" /etc/default/grub - sed -i "s/.*GRUB_DEFAULT=.*/GRUB_DEFAULT=0/g" /etc/default/grub - sed -i "s/.*GRUB_RECORDFAIL_TIMEOUT=.*/GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT/g" /etc/default/grub - sed -i "s/.*GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT=\"rw quiet loglevel=2 rd.systemd.show_status=auto rd.udev.log_level=2 nvme.noacpi=1 mem_sleep_default=deep nowatchdog\"/g" /etc/default/grub - grub-mkconfig -o /boot/grub/grub.cfg >> "$logfile" 2>&1 || error "error" "" "$?" - fi -} - -### Configure Snapshots - -configure_snapshots() { - - # note that the order of these commands are important - action="Snapshots and Recovery" && display "title" "$action" - aur_install grub-btrfs - - action="configuring boot menu to display snapshots" && display "task" "$action" - (grub-mkconfig -o /boot/grub/grub.cfg >> "$logfile" 2>&1) || error "error" "$action" "$?" - - # install timeshift + autosnap - aur_install timeshift - aur_install timeshift-autosnap - - action="taking initial btrfs snapshot" && display "task" "$action" - (timeshift --btrfs --create --comments "ArchSetup initial snapshot on $(date +'%D %T')" >> \ - "$logfile" 2>&1) || error "error" "$action" "$?" - - action="enabling automatic snapshots in the boot menu" && display "task" "$action" - (systemctl enable --now grub-btrfs.path >> "$logfile" 2>&1) || error "error" "$action" "$?" - + # # on systemd boot, eliminate timeout and silence boot text + # if [ -f /boot/loader/loader.conf ]; then + # action="eliminating timeout and silencing boot test on systemd boot" && display "task" "$action" + # echo "timeout=0" >/boot/loader/loader.conf + + # # the file in this location was named based on the time of the install, so we must use find to identify it. + # kernelfile=$(find /boot/loader/entries/ -name "*.conf") + # # hush boot output via kernel parameters + # sed -i "/.*options root=PARTUUID.*/ s/$/quiet rd.systemd.show_status=auto rd.udev.log_level=2 nvme.noacpi=1 mem_sleep_default=deep nowatchdog/" "$kernelfile" + # fi + + # # if grub, reset timeouts and adjust log levels + # if [ -f /etc/default/grub ]; then + # action="resetting timeouts and adjusting log levels on grub boot" && display "task" "$action" + # sed -i "s/.*GRUB_TIMEOUT=.*/GRUB_TIMEOUT=2/g" /etc/default/grub + # sed -i "s/.*GRUB_DEFAULT=.*/GRUB_DEFAULT=0/g" /etc/default/grub + # sed -i "s/.*GRUB_RECORDFAIL_TIMEOUT=.*/GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT/g" /etc/default/grub + # sed -i "s/.*GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT=\"rw quiet loglevel=2 rd.systemd.show_status=auto rd.udev.log_level=2 nvme.noacpi=1 mem_sleep_default=deep nowatchdog\"/g" /etc/default/grub + # grub-mkconfig -o /boot/grub/grub.cfg >> "$logfile" 2>&1 || error "error" "" "$?" + # fi } ### Outro @@ -873,8 +849,7 @@ essential_services desktop_environment developer_workstation supplemental_software -# silent_boot # make booting less noisy -# configure_snapshots # automatic snapshots added to grub menu for restoration +silent_boot # make booting a bit less noisy outro # take end stats; show summary |
