diff --git a/cocoPrograms.csv b/cocoPrograms.csv new file mode 100644 index 0000000..28fa8fc --- /dev/null +++ b/cocoPrograms.csv @@ -0,0 +1,141 @@ +NAME,IMPORTANT +alacritty,N +alsa-utils,Y +ani-cli-git,N +base,Y +base-devel,Y +bashmount,N +bc,N +binwalk,N +bitwarden,N +brave-bin,N +chromium,N +clipnotify,N +cmake,N +cppcheck,N +cronie,N +detox,N +dialog,Y +discord,N +docker,N +docker-compose,N +droidcam,N +efibootmgr,Y +exifcleaner-bin,N +ferdi-bin,N +filezilla,N +firefox,N +flameshot,N +foxitreader,N +fsearch,N +fzf,N +gdb,N +gimp,N +git,Y +gnu-netcat,N +grub,Y +hdparm,N +htop,N +imagemagick,N +imwheel,N +intel-ucode,Y +jdk8-openjdk,N +jdk-openjdk,N +jetbrains-toolbox,N +keepass,N +keepass-plugin-keeagent,N +keychain,N +libimobiledevice,N +libreoffice-still,N +libxft-bgra,N +linux,Y +linux-firmware,Y +linux-headers,Y +lxappearance,N +man-pages,Y +mpv,N +mutt-wizard-git,N +nasm,N +neofetch,N +neovim,Y +net-tools,N +networkmanager,Y +nitrogen,N +nmap,N +noisetorch,N +noto-fonts,Y +noto-fonts-emoji,Y +ntfs-3g,N +nvidia,Y +nvidia-settings,Y +nvidia-utils,Y +nvimpager-git,N +obs-studio,N +octave,N +openssh,N +orchis-theme-bin,N +p7zip,N +pam-gnupg,N +pandoc-bin,N +pcmanfm,N +pdfjumbler,N +pdfslicer,N +perl-image-exiftool,N +picom-git,N +piper,N +sudo,Y +pipewire,Y +pipewire-alsa,Y +pipewire-pulse,Y +psensor,N +pulsemixer,N +python-pip,N +python-pynvim,N +python-pywal,N +qalculate-gtk,N +qemu,N +r,N +ranger,N +redshift,N +reflector,Y +rtl8821cu-dkms-git,N +scdoc,N +seahorse,N +shellcheck-bin,N +spotify,N +stegsolve,N +strace,N +sxiv,N +tcpdump,N +tela-icon-theme-bin,N +texlive-bin,N +tk,N +tmux,N +traceroute,N +trash-cli,N +ttf-fira-code,Y +ttf-joypixels,N +ttf-meslo-nerd-font-powerlevel10k,N +unclutter,N +unrar,N +unzip,N +usb_modeswitch,N +usbutils,N +valgrind,N +vim,N +virtualbox,N +visual-studio-code-bin,N +wget,N +xclip,N +xcompmgr,N +xdg-user-dirs,Y +xdg-utils,Y +xdotool,N +xorg,N +xorg-xinit,N +xsel,N +youtube-dl,N +zaread-git,N +zathura,N +zathura-pdf-mupdf,N +zsh,Y diff --git a/install.sh b/install.sh index 9ffa9b9..fdcc69a 100755 --- a/install.sh +++ b/install.sh @@ -92,12 +92,26 @@ formatPart() { mountPart() { mount "$rootPart" /mnt > /dev/null mkdir -p /mnt/boot/efi + # TODO: Ask where to mount the bootPart mount "$bootPart" /mnt/boot/efi > /dev/null swapon "$swapPart" > /dev/null } -installPackages() { - pacstrap /mnt base linux linux-firmware git neovim intel-ucode reflector +getThePackages() { + if [ ! -f "programs.csv" ]; then + curl -LO "https://raw.githubusercontent.com/santilococo/CocoASAIS/master/cocoPrograms.csv" + fi + local IFS=, + while read -r NAME IMPORTANT; do + if [ "$IMPORTANT" = "${1}" ]; then + installPackage "$NAME" + fi + done < cocoPrograms.csv +} + +installImportantPackages() { + getThePackages "Y" + runInChroot "systemctl enable NetworkManager; systemctl enable fstrim.timer" } generateFstab() { @@ -168,16 +182,12 @@ updateMirrors() { } installPackage() { - whiptail --infobox "Installing \`$1\` from the official arch repositories." 0 0 + whiptail --infobox "Installing '$1'." 0 0 pacstrap /mnt ${1} } -installMorePackages() { - pacstrap /mnt grub efibootmgr networkmanager base-devel linux-headers xdg-user-dirs xdg-utils alsa-utils pipewire pipewire-alsa pipewire-pulse sudo nvidia-utils nvidia-settings - runInChroot "systemctl enable NetworkManager; systemctl enable fstrim.timer" -} - grubSetUp() { + # TODO: Prompt user for efi-directory runInChroot "grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB; grub-mkconfig -o /boot/grub/grub.cfg" } @@ -208,8 +218,8 @@ finishInstallation() { } installLastPrograms() { - sudo pacman -Sy --noconfirm xorg xorg-xinit ttf-fira-code dialog - # TODO: Use csv to install all the programs + sudo pacman -Sy + getThePackages "N" sudo pacman -S zsh sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k @@ -230,14 +240,13 @@ steps=( checkUefi updateSystemClock partDisks - installPackages + installImportantPackages generateFstab setTimeZone setLocale networkConf setRootPassword updateMirrors - installMorePackages grubSetUp userSetUp finishInstallation @@ -272,4 +281,6 @@ runScript() { done } -runScript \ No newline at end of file +# runScript +# installPackages + getThePackages "N" \ No newline at end of file