This commit is contained in:
Your Name 2023-12-14 22:19:11 -07:00
parent 55239d60e2
commit f13600bf5d

View File

@ -4,7 +4,7 @@
#
# An automatic installer for Gentoo Stable with the following features:
# 1. BTRFS with Grub Snapshots
# 2. KDE or Gnome Desktop
# 2. KDE or GNOME Desktop
# 3. The ability to build a custom and deployable image onto any machine
# 4. Easily create a bootable USB drive
# 5. Automatic Partitioning
@ -40,11 +40,11 @@ COMPRESSION='compress=zstd:10'
FLATPAKS+=()
SERVICES+=(cronie gdm libvirt smartd cronie cups grub-btrfsd sddm NetworkManager dev-zram0.swap)
MAKEOPTS="-j$(cat /proc/cpuinfo | grep -i processor | grep -vi 'model' | wc -l)"
KDE_DESKTOP_USE_FLAGS="-samba -telemetry -bluetooth wxwidgets jumbo-build kernel-install hwaccel sasl -gpm proprietary-codecs screencast systemd x264 pulseaudio firmware nfsv4 caps -zeroconf dbus sound-server X -browser-integration desktop-portal minimal -gnome qt5 kde dvd alsa gui -wayland device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot browser keeshare network opengl"
GNOME_DESKTOP_USE_FLAGS="keyring -samba minizip -gnome-online-accounts -telemetry -bluetooth wxwidgets jumbo-build kernel-install hwaccel sasl -gpm proprietary-codecs screencast systemd x264 pulseaudio firmware nfsv4 caps -zeroconf dbus sound-server X -browser-integration desktop-portal minimal gtk gnome qt5 -kde dvd alsa gui wayland device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot browser keeshare network opengl"
SERVER_USE_FLAGS="-samba -gtk kernel-install -pipewire -bluetooth udev -sound -ipv6 sasl usb usbredir spice vhost-net virtfs -vnc -wayland -gpm -proprietary-codecs -screencast systemd pulseaudio sound-server -x264 firmware nfsv4 caps -zeroconf dbus -X -browser-integration desktop-portal minimal -gnome -qt5 -kde -dvd -alsa -gui device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot -browser -keeshare network -opengl"
BASE_PACKAGES=" app-containers/netavark mail-mta/postfix app-admin/sysstat sys-apps/smartmontools sys-process/cronie net-fs/nfs-utils net-firewall/iptables dev-python/pip sys-fs/inotify-tools net-analyzer/nmap x11-apps/xhost app-misc/screen app-portage/gentoolkit sys-fs/dosfstools app-admin/sudo sys-apps/systemd sys-boot/plymouth sys-apps/zram-generator app-eselect/eselect-repository dev-vcs/git sys-boot/refind sys-block/parted sys-boot/grub sys-block/zram-init sys-process/btop net-vpn/wireguard-tools sys-apps/flatpak app-editors/vim app-misc/fastfetch net-misc/yt-dlp app-containers/crun app-containers/podman sys-fs/btrfs-progs net-print/cups "
GNOME_DESKTOP_PACKAGES=" app-text/evince gnome-extra/gnome-system-monitor dev-libs/qtkeychain gnome-extra/gnome-browser-connector sys-power/power-profiles-daemon gnome-extra/gnome-shell-extensions gnome-extra/gnome-calculator gnome-extra/gnome-tweaks app-office/libreoffice media-gfx/gimp gnome-light www-client/firefox app-editors/vscodium app-admin/keepassxc net-im/telegram-desktop-bin net-misc/nextcloud-client media-video/vlc "
KDE_DESKTOP_USE_FLAGS="flatpak -samba -telemetry -bluetooth wxwidgets jumbo-build kernel-install hwaccel sasl -gpm proprietary-codecs screencast systemd x264 pulseaudio firmware nfsv4 caps -zeroconf dbus sound-server X -browser-integration desktop-portal -gnome qt5 kde dvd alsa gui -wayland device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot browser keeshare network opengl"
GNOME_DESKTOP_USE_FLAGS="flatpak keyring -samba minizip -gnome-online-accounts -telemetry -bluetooth wxwidgets jumbo-build kernel-install hwaccel sasl -gpm proprietary-codecs screencast systemd x264 pulseaudio firmware nfsv4 caps -zeroconf dbus sound-server X -browser-integration desktop-portal gtk gnome qt5 -kde dvd alsa gui wayland device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot browser keeshare network opengl"
SERVER_USE_FLAGS="-samba -gtk kernel-install -pipewire -bluetooth udev -sound -ipv6 sasl usb usbredir spice vhost-net virtfs -vnc -wayland -gpm -proprietary-codecs -screencast systemd pulseaudio sound-server -x264 firmware nfsv4 caps -zeroconf dbus -X -browser-integration desktop-portal -gnome -qt5 -kde -dvd -alsa -gui device-mapper efiemu themes truetype btrfs seccomp cgroup-hybrid geoclue -webengine boot -browser -keeshare network -opengl"
BASE_PACKAGES=" app-vim/airline app-containers/netavark mail-mta/postfix app-admin/sysstat sys-apps/smartmontools sys-process/cronie net-fs/nfs-utils net-firewall/iptables dev-python/pip sys-fs/inotify-tools net-analyzer/nmap x11-apps/xhost app-misc/screen app-portage/gentoolkit sys-fs/dosfstools app-admin/sudo sys-apps/systemd sys-boot/plymouth sys-apps/zram-generator app-eselect/eselect-repository dev-vcs/git sys-boot/refind sys-block/parted sys-boot/grub sys-block/zram-init sys-process/btop net-vpn/wireguard-tools sys-apps/flatpak app-editors/vim app-misc/fastfetch net-misc/yt-dlp app-containers/crun app-containers/podman sys-fs/btrfs-progs net-print/cups "
GNOME_DESKTOP_PACKAGES=" gnome-extra/gnome-software app-text/evince gnome-extra/gnome-system-monitor dev-libs/qtkeychain gnome-extra/gnome-browser-connector sys-power/power-profiles-daemon gnome-extra/gnome-shell-extensions gnome-extra/gnome-calculator gnome-extra/gnome-tweaks app-office/libreoffice media-gfx/gimp gnome-light www-client/firefox app-editors/vscodium app-admin/keepassxc net-im/telegram-desktop-bin net-misc/nextcloud-client media-video/vlc "
KDE_DESKTOP_PACKAGES=" x11-drivers/xf86-input-evdev kde-apps/kcalc kde-apps/dolphin kde-apps/ark www-client/firefox plasma-meta app-editors/vscodium kde-apps/konsole media-gfx/krita kde-apps/kdegraphics-meta app-admin/keepassxc app-office/calligra net-im/telegram-desktop-bin net-misc/nextcloud-client net-im/neochat x11-misc/sddm media-video/vlc "
#Change/Set Desktop: GNOME/KDE
DESKTOP_ENVIRONMENT="gnome"
@ -61,7 +61,7 @@ DISTCC_HOSTS+=(192.168.0.44/2 192.168.0.146/2 192.168.0.153/2 192.168.0.148/2 19
DISTCC_LISTEN="192.168.0.0/24"
DISTCC_CORES="30"
#Add Masked Packages to the Array
MASKED_PACKAGES+=(dev-libs/nss www-client/firefox net-im/element-desktop-bin media-libs/harfbuzz games-util/game-device-udev-rules dev-lang/python dev-python/pyrate-limiter dev-python/moddb dev-python/pypresence games-util/lutris games-util/steam-launcher app-misc/fastfetch net-im/telegram-desktop-bin dev-libs/yyjson)
MASKED_PACKAGES+=(gnome-extra/gnome-software dev-libs/nss www-client/firefox net-im/element-desktop-bin media-libs/harfbuzz games-util/game-device-udev-rules dev-lang/python dev-python/pyrate-limiter dev-python/moddb dev-python/pypresence games-util/lutris games-util/steam-launcher app-misc/fastfetch net-im/telegram-desktop-bin dev-libs/yyjson)
partitionDetection() {
#This is used for the installer to do script-based actions
@ -72,6 +72,21 @@ partitionDetection() {
partitionDetection
firmware() {
clear
if [ -z "/usr/sbin/fwupdmgr" ]; then
emerge sys-apps/fwupd
else
echo
echo "Firmware Utility already installed"
echo
fi
fwupdmgr refresh
fwupdmgr get-updates
fwupdmgr update
#emerge --unmerge sys-apps/fwupd
}
auto_login() {
mkdir -p $TARGET/etc/sddm.conf.d
echo "[Autologin]" >$TARGET/etc/sddm.conf.d/autologin
@ -751,6 +766,8 @@ elif [ "$1" = "btrfs-tweaks" ]; then
btrfs-tweaks
elif [ "$1" = "compile-kernel" ]; then
compile-kernel
elif [ "$1" = "firmware" ]; then
firmware
elif [ "$1" = "remove-snapshot" ]; then
remove-snapshots
elif [ "$1" = "help" ]; then