diff --git a/citrine.internal.sh b/citrine.internal.sh index bf9f963..ffd03a6 100755 --- a/citrine.internal.sh +++ b/citrine.internal.sh @@ -14,6 +14,24 @@ prompt() { read response } +# --------------------------------- +yn="" +yesno() { + dialog --title Citrine --yesno "$@" 10 80 + yn=$? +} + +dumptitle="" +dump() { + dialog --title "${dumptitle}" --no-collapse --msgbox "$@" 0 0 +} + +msgdat="" +msgbox(){ + msgdat=$(dialog --title Citrine --inputbox "$@" --stdout 10 80) +} +# -------------------------- + if [[ "$EUID" != "0" ]]; then err "Run as root" exit 1 @@ -24,10 +42,12 @@ pacman-key --init pacman-key --populate archlinux pacman-key --populate crystal -prompt "Do you need a keyboard layout other than standard US? (y/N)" -KBD="$response" -echo "KBD=$response" -if [[ "$KBD" == "y" || "$KBD" == "Y" ]]; then +yesno "Do you need a keyboard layout other than QWERTY US?" +KBD="$yn" +echo "KBD=$KBD" + +# TODO: layout select in dialog +if [[ "$KBD" == "0" || "$KBD" == "0" ]]; then prompt "We're going to show the list of keymaps in less. Do you know how to exit less? (Y/n)" UL="$response" if [[ "$UL" == "n" ]]; then @@ -44,23 +64,25 @@ fi clear -inf "Disks:" -fdisk -l | grep Disk | grep sectors --color=never +yesno "Would you like to partition manually?" +echo "PMODE=$yn" +PMODE="$yn" -prompt "Would you like to partition manually? (y/N)" -echo "PMODE=$response" -PMODE="$response" +dumptitle="System Disks" +diskdat="$(fdisk -l | grep Disk | grep sectors --color=never)" +dump "$diskdat" MANUAL="no" DISK="" -if [[ "$PMODE" == "y" ]]; then +if [[ "$PMODE" == "0" ]]; then MANUAL="yes" else - prompt "Install target WILL BE FULLY WIPED" - echo "DISK=$response" - DISK="$response" + msgbox "Install target WILL BE FULLY WIPED" + echo "DISK=$msgdat" + DISK="$msgdat" if ! fdisk -l ${DISK}; then - err "Seems like $DISK doesn't exist. Did you typo?" + dumptitle="ERROR" + dump "Seems like $DISK doesn't exist. Did you typo?" exit 1 fi fi @@ -81,16 +103,21 @@ else fi echo "EFI=$EFI" +dumptitle="Please confirm" if [[ "$EFI" == "yes" ]]; then - prompt "This PC seems to have booted with UEFI. Press enter to confirm" + dump "This PC seems to *have* booted with UEFI. Press enter to confirm, or Control+C to cancel" else - prompt "This PC seems to *not* have booted with UEFI. Press enter to aknowledge, or press Control+C if this seems wrong." + dump "This PC seems to *not* have booted with UEFI. Press enter to aknowledge, or press Control+C if this seems wrong." fi inf "Setting system clock via network" timedatectl set-ntp true if [[ "$MANUAL" == "no" ]]; then + + dumptitle="CAUTION!" + dump "This is your last chance to avoid deleting critical data on $DISK. If you're not sure, press Control+C NOW!" + echo "Partitioning disk" if [[ "$EFI" == "yes" ]]; then parted ${DISK} mklabel gpt --script @@ -109,8 +136,8 @@ if [[ "$MANUAL" == "no" ]]; then mkfs.vfat ${DISK}p1 mkfs.ext4 ${DISK}p2 mount ${DISK}p2 /mnt - mkdir -p /mnt/efi - mount ${DISK}p1 /mnt/efi + mkdir -p /mnt/boot/efi + mount ${DISK}p1 /mnt/boot/efi else inf "Initializing ${DISK} as NVME MBR" mkfs.ext4 ${DISK}p1 @@ -119,11 +146,11 @@ if [[ "$MANUAL" == "no" ]]; then else if [[ "$EFI" == "yes" ]]; then inf "Initializing ${DISK} as EFI" - mkfs.vfat ${DISK}1 + mkfs.vfat -F32 ${DISK}1 mkfs.ext4 ${DISK}2 mount ${DISK}2 /mnt - mkdir -p /mnt/efi - mount ${DISK}1 /mnt/efi + mkdir -p /mnt/boot/efi + mount ${DISK}1 /mnt/boot/efi else inf "Initializing ${DISK} as MBR" mkfs.ext4 ${DISK}1 @@ -132,30 +159,34 @@ if [[ "$MANUAL" == "no" ]]; then fi else clear - inf "You have chosen manual partitioning." - inf "We're going to drop to a shell for you to partition, but first, PLEASE READ these notes." - inf "Before you exit the shell, make sure to format and mount a partition for / at /mnt" + + dumptitle="Read carefully!" + + dump "You have chosen manual partitioning.\ + We're going to drop to a shell for you to partition, but first, PLEASE READ these notes.\ + Before you exit the shell, make sure to format and mount a partition for / at /mnt." + if [[ "$EFI" == "yes" ]]; then - mkdir -p /mnt/efi - inf "Additionally, since this machine was booted with UEFI, please make sure to make a 200MB or greater partition" - inf "of type VFAT and mount it at /mnt/efi" + mkdir -p /mnt/boot/efi + + dump "Additionally, since this machine was booted with UEFI, please make sure to make a 200MB or greater partition\ + of type VFAT and mount it at /mnt/boot/efi" else - inf "Please give me the full path of the device you're planning to partition (needed for bootloader installation later)" - inf "Example: /dev/sda" - printf ": " - read DISK + msgbox "Please give me the full path of the device you're planning to partition (needed for bootloader installation later)\ + .. Example: /dev/sda" + DISK="${msgdat}" fi CONFDONE="NOPE" + dumptitle="Citrine" while [[ "$CONFDONE" == "NOPE" ]]; do - inf "Press enter to go to a shell." - read - bash - prompt "All set (and partitions mounted?) (y/N)" - echo "STAT=$response" - STAT="$response" - if [[ "$STAT" == "y" ]]; then + dump "Press enter a shell. (ZSH)" + zsh + yesno "All set (and partitions mounted?)" + echo "STAT=$yn" + STAT="$yn" + if [[ "$STAT" == "0" ]]; then if ! findmnt | grep /mnt; then err "Are you sure you've mounted the partitions?" @@ -170,43 +201,261 @@ inf "Verifying network connection" ping -c 1 getcryst.al if [[ ! "$?" == "0" ]]; then - err "It seems like this system can't reach the internet. Exiting." + dumptitle="Error!" + dump "It seems like this system can't reach the internet. Failing here." + umount -l /mnt exit 1 fi inf "Setting up base Crystal System" -crystalstrap /mnt base linux linux-firmware systemd-sysvcompat networkmanager grub crystal-grub-theme man-db man-pages texinfo micro sudo curl archlinux-keyring neofetch +crystalstrap /mnt base linux linux-firmware systemd-sysvcompat networkmanager man-db man-pages texinfo micro sudo curl archlinux-keyring neofetch if [[ ! "$?" == "0" ]]; then inf "CrystalStrap had some error. Retrying." - crystalstrap /mnt base linux linux-firmware systemd-sysvcompat networkmanager grub crystal-grub-theme man-db man-pages texinfo micro sudo curl archlinux-keyring neofetch + crystalstrap /mnt base linux linux-firmware systemd-sysvcompat networkmanager man-db man-pages texinfo micro sudo curl archlinux-keyring neofetch fi if [[ "$EFI" == "yes" ]]; then inf "Installing EFI support package" - crystalstrap /mnt efibootmgr + crystalstrap /mnt efibootmgr refind +else + inf "Installing Syslinux bootloader" + crystalstrap /mnt syslinux fi -# Grub theme -sed -i 's/\/path\/to\/gfxtheme/\/usr\/share\/grub\/themes\/crystal\/theme.txt/g' /mnt/etc/default/grub -sed -i 's/#GRUB_THEME/GRUB_THEME/g' /mnt/etc/default/grub +genfstab -U /mnt > /mnt/etc/fstab -cp /usr/bin/continue.sh /mnt/. -chmod +x /mnt/continue.sh +clear -genfstab -U /mnt > /mnt/etc/fstab +TZ="/usr/share/place/holder" +while [[ ! -f $TZ ]]; do + msgbox "Pick a time zone (Format: America/New_York, Europe/London, etc)" + PT="$msgdat" + TZ="/usr/share/zoneinfo/${PT}" +done + +arch-chroot /mnt ln-sf $TZ /etc/localtime +inf "Set TZ to ${TZ}" +inf "Syncing hardware offset" +arch-chroot /mnt hwclock --systohc + +echo "en_US.UTF-8 UTF-8" >> /mnt/etc/locale.gen +echo "LANG=en_US.UTF-8" > /mnt/etc/locale.conf + +clear +yesno "Do you need more locales than just en_US?" +echo "More=$yn" +More="$yn" + +if [[ "$MORE" == "0" ]]; then + msgbox "Preferred editor" + PRGRM="$msgdat" + echo "PGRM=$msgdat" + if [[ -x "$(command -v ${PGRM})" ]]; then + inf "Attempting to install ${PGRM}" + pacman -S ${PGRM} --noconfirm + fi + dumptitle="Read carefully." + dump "When we open the file, please remove the leading # before any locales you need.\ + Then, save and exit." + ${PGRM} /mnt/etc/locale.gen +fi + +inf "Generating selected locales." +arch-chroot /mnt locale-gen + +echo +echo +inf "en_US was set as system primary." +inf "After install, you can edit /etc/locale.conf to change the primary if desired." +inf "Press enter" +prompt "" if [[ "$KBD" == "y" || "$KBD" == "Y" ]]; then - echo ${KMP} >> /mnt/keymap + echo "KEYMAP=${KMP}" > /mnt/etc/vconsole.conf fi +clear +msgbox "Enter the system hostname" +HOSTNAME="$msgdat" +echo ${HOSTNAME} > /mnt/etc/hostname +echo "127.0.0.1 localhost" > /mnt/etc/hosts + +yesno "Would you like IPV6?" +IPS="$yn" + +if [[ "$IPS" == "0" ]]; then + echo "::1 localhost" >> /mnt/etc/hosts +fi +echo "127.0.0.1 ${HOSTNAME}.localdomain ${HOSTNAME}" >> /mnt/etc/hosts + +clear +inf "Set a password for root" +done="nope" +while [[ "$done" == "nope" ]]; do + arch-chroot /mnt passwd + if [[ "$(echo $?)" == "0" ]]; then + done="yep" + fi +done + +msgbox "Your username" +UN="$msgdat" +arch-chroot /mnt useradd -m ${UN} +arch-chroot /mnt usermod -aG wheel ${UN} +inf "Set password for ${UN}" +done="nope" +while [[ "$done" == "nope" ]]; do + arch-chroot /mnt passwd ${UN} + if [[ "$(echo $?)" == "0" ]]; then + done="yep" + fi +done +echo >> /mnt/etc/sudoers +echo "# Enabled by Crystalinstall (citrine)" >> /mnt/etc/sudoers +echo "%wheel ALL=(ALL) ALL" >> /mnt/etc/sudoers + if [[ "$EFI" == "yes" ]]; then - touch /mnt/efimode + root="$(findmnt -n -o SOURCE /mnt/ | awk 'BEGIN { FS = "/" }; { print $3 }')" + arch-chroot /mnt refind-install + echo '"Crystal Linux" "rw root=/dev/placeholder"' > /mnt/boot/refind_linux.conf + sed -i "s/placeholder/$root/" /mnt/boot/refind_linux.conf +else + arch-chroot /mnt curl https://git.getcryst.al/crystal/Syslinux_install_script/raw/branch/master/syslinux-install_update -o /usr/bin/syslinux-install_update + arch-chroot /mnt syslinux-install_update -i -a -m +fi + +arch-chroot /mnt systemctl enable NetworkManager +arch-chroot pacman-key --init +arch-chroot pacman-key --populate archlinux +arch-chroot pacman-key --populate crystal + +clear + +yesno "Would you like to install a DE/WM profile?" +echo "DEP=$yn" +DEP="$yn" + +arch-chroot /mnt pacman -Sy --quiet --noconfirm + +if [[ "$DEP" == "0" ]]; then + inf "--- Desktop Environments ---" + inf "- Budgie" + inf "- Cinnamon" + inf "- Deepin" + inf "- Enlightenment (note: very DIY. Read Arch Wiki)" + inf "- GNOME" + # Flashback seems to need some work + #inf "- (GNOME) Flashback" + inf "- KDE" + inf "- LXDE" + inf "- LXQt" + inf "- Mate" + inf "- Cutefish" + inf "- Xfce" + inf "- UKUI (note: very poorly documented. In english, anyway)" + inf "(We'll add more as people ask)" + inf "Please enter exactly as shown." + prompt "" + echo "DE=$response" + DE="$response" + DM="" + case "$DE" in + "Budgie" | "budgie") + arch-chroot /mnt pacman -S --quiet --noconfirm budgie-desktop gnome + DM="gdm" + ;; + "Cinnamon" | "cinnamon") + arch-chroot /mnt pacman -S --quiet --noconfirm cinnamon + DM="gdm" + ;; + "Deepin" | "deepin") + arch-chroot /mnt pacman -S --quiet --noconfirm deepin deepin-extra + DM="lightdm" + ;; + "Gnome" | "GNOME" | "gnome") + arch-chroot /mnt pacman -S --quiet --noconfirm gnome gnome-extra chrome-gnome-shell + DM="gdm" + ;; + "KDE" | "Kde" | "kde") + arch-chroot /mnt pacman -S --quiet --noconfirm plasma kde-applications sddm + DM="sddm" + ;; + "LXDE" | "lxde" | "Lxde") + arch-chroot /mnt pacman -S --quiet --noconfirm lxde + DM="lxdm" + ;; + "LXQt" | "lxqt" | "Lxqt" | "LXQT") + arch-chroot /mnt pacman -S --quiet --noconfirm lxqt breeze-icons xorg + DM="sddm" + ;; + "Mate" | "mate") + arch-chroot /mnt pacman -S --quiet --noconfirm mate mate-extra mate-applet-dock mate-applet-streamer + DM="gdm" + ;; + "Xfce" | "xfce") + arch-chroot /mnt pacman -S --quiet --noconfirm xfce4 xfce4-goodies + DM="sddm" + ;; + "Cutefish" | "cutefish") + arch-chroot /mnt pacman -S --quiet --noconfirm cutefish + DM="sddm" + ;; + "Enlightenment" | "enlightenment") + arch-chroot /mnt pacman -S --quiet --noconfirm enlightenment terminology + ;; +esac + +if [[ "$DM" == "" ]]; then + inf "Your selected DE/WM doesn't have a standard display manager. Enter one of the below names, or leave blank for none" + inf "- gdm" + inf "- sddm" + inf "- lightdm (you'll need a greeter package. See Arch Wiki)" + inf "- (you can type another Arch package name if you have one in mind)" + inf "- [blank] for none" + prompt "" + ND="$response" + echo "ND=$ND" + if [[ "$ND" != "" ]]; then + inf "Ok, we'll install $ND" + DM="$ND" + arch-chroot /mnt pacman -S --quiet --noconfirm $DM + else + inf "Ok, not installing a display manager." + fi else - echo ${DISK} > /mnt/diskn + arch-chroot /mnt pacman -S --quiet --noconfirm $DM +fi +if [[ "$DM" != "" ]]; then + prompt "Would you like to enable ${DM} for ${DE}? (Y/n)" + useDM="$response" + if [[ "$useDM" != "n" ]]; then + arch-chroot /mnt systemctl enable ${DM} + if [[ "$DE" == "Deepin" ]]; then + sed -i 's/lightdm-gtk-greeter/lightdm-deepin-greeter/g' /mnt/etc/lightdm/lightdm.conf + fi + fi + fi fi -arch-chroot /mnt /continue.sh 2>&1 | tee /mnt/var/log/citrine.chroot.log -rm /mnt/continue.sh +prompt "Would you like to add more packages? (Y/n)" +MP="$response" +if [[ "$MP" != "n" ]]; then + prompt "Would you like to use a URL to a package list? (Y/n)" + OL="$response" + if [[ "$OL" == "n" ]]; then + prompt "Write package names" + PKGNS="$response" + inf "Installing: $PKGNS" + arch-chroot /mnt ame -S ${PKGNS} + else + prompt "URL to package list" + SRC="$response" + PKGS="$(curl ${SRC})" + for PKG in PKGS; do + arch-chroot /mnt ame -S ${PKG} + done + fi +fi inf "Installation should now be complete." \ No newline at end of file diff --git a/continue.sh b/continue.sh index 11c2889..7235978 100755 --- a/continue.sh +++ b/continue.sh @@ -14,11 +14,31 @@ prompt() { read response } +# --------------------------------- +yn="" +yesno() { + dialog --title Citrine --yesno "$@" --stdout 10 80 + yn=$(echo "?") +} + +dumptitle="" +dump() { + dialog --title "${dumptitle}" --no-collapse --msgbox "$@" 0 0 +} + +msgdat="" +msgbox(){ + msgdat=$(dialog --title Citrine --inputbox "$@" --stdout 10 80) +} +# -------------------------- + clear + +# TODO: How might we make a list select of timezones? TZ="/usr/share/LMAO/XD" while [[ ! -f $TZ ]]; do - prompt "Pick a time zone (Format: America/New_York , Europe/London, etc)" - PT="$response" + msgbox "Pick a time zone (Format: America/New_York , Europe/London, etc)" + PT="$msgdat" TZ="/usr/share/zoneinfo/${PT}" done @@ -31,6 +51,8 @@ echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen echo "LANG=en_US.UTF-8" > /etc/locale.conf clear + +# Todo: List-select of locales somehow prompt "Do you need more locales than just en_US? (y/N)" echo "MORE=$response" MORE="$response" @@ -60,19 +82,21 @@ if [[ -f /keymap ]]; then fi clear -prompt "System hostname" -HOSTNAME="$response" +msgbox "Enter the system hostname" +HOSTNAME="$msgdat" echo ${HOSTNAME} > /etc/hostname echo "127.0.0.1 localhost" > /etc/hosts -prompt "Would you like IPV6? (y/N)" -IPS="$response" -if [[ "$IPS" == "y" || "$IPS" == "Y" ]]; then + +yesno "Would you like IPV6?" +IPS="$yn" + +if [[ "$IPS" == "0" ]]; then echo "::1 localhost" >> /etc/hosts fi echo "127.0.1.1 ${HOSTNAME}.localdomain ${HOSTNAME}" >> /etc/hosts clear -inf "Password for root" +inf "Set a password for root" done="nope" while [[ "$done" == "nope" ]]; do passwd @@ -81,8 +105,8 @@ while [[ "$done" == "nope" ]]; do fi done -prompt "Your username" -UN="$response" +msgbox "Your username" +UN="$msgdat" useradd -m ${UN} usermod -aG wheel ${UN} inf "Set password for ${UN}" @@ -121,34 +145,32 @@ pacman-key --populate crystal clear -prompt "Would you like to install a DE/WM profile? (y/N)" -echo "DEP=$response" -DEP="$response" - -if [[ "$DEP" == "y" || "$DEP" == "Y" ]]; then - inf "--- Desktop Environments ---" - inf "- Budgie" - inf "- Cinnamon" - inf "- Deepin" - inf "- Enlightenment (note: very DIY. Read Arch Wiki)" - inf "- GNOME" - # Flashback seems to need some work - #inf "- (GNOME) Flashback" - inf "- KDE" - inf "- LXDE" - inf "- LXQt" - inf "- Mate" - inf "- Cutefish" - inf "- Xfce" - inf "- UKUI (note: very poorly documented. In english, anyway)" - inf "--- Window Managers ---" - inf "- i3" - inf "(We'll add more as people ask)" - inf "Please enter exactly as shown." - prompt "" - echo "DE=$response" - DE="$response" + +yesno "Would you like to install a DE/WM profile?" +echo "DEP=$yn" +DEP="$yn" + +if [[ "$DEP" == "0" ]]; then + + dumptitle="Desktop/WM Choices" + + dump "\ + --- Desktop Environments --- + - Budgie + - Cinnamon + - Deepin + - GNOME + - KDE + - LXDE + - LXQt + - Mate + - Xfce" + + msgbox "DE Choice (please enter exactly)" + echo "DE=$msgdat" + DE="$msgdat" DM="" + if [[ "$DE" == "Budgie" ]]; then pacman -Sy --quiet --noconfirm budgie-desktop gnome DM="gdm" @@ -158,15 +180,9 @@ if [[ "$DEP" == "y" || "$DEP" == "Y" ]]; then elif [[ "$DE" == "Deepin" ]]; then pacman -Sy --quiet --noconfirm deepin deepin-extra DM="lightdm" - elif [[ "$DE" == "Enlightenment" ]]; then - pacman -Sy --quiet --noconfirm enlightenment terminology elif [[ "$DE" == "GNOME" ]]; then pacman -Sy --quiet --noconfirm gnome gnome-extra chrome-gnome-shell DM="gdm" - elif [[ "$DE" == "Flashback" || "$DE" == "GNOME Flashback" || "$DE" == "(GNOME) Flashback" ]]; then - DE="Flashback" - pacman -Sy --quiet --noconfirm gnome-flashback gnome-backgrounds gnome-control-center network-manger-applet gnome-applets sensors-applet - DM="gdm" elif [[ "$DE" == "KDE" ]]; then pacman -Sy --quiet --noconfirm plasma kde-applications sddm DM="sddm" @@ -179,47 +195,17 @@ if [[ "$DEP" == "y" || "$DEP" == "Y" ]]; then elif [[ "$DE" == "Mate" ]]; then pacman -Sy --quiet --noconfirm mate mate-extra mate-applet-dock mate-applet-streamer DM="gdm" - elif [[ "$DE" == "UKUI" ]]; then - pacman -Sy --quiet --noconfirm ukui elif [[ "$DE" == "Xfce" ]]; then pacman -Sy --quiet --noconfirm xfce4 xfce4-goodies DM="sddm" elif [[ "$DE" == "Cutefish" || "$DE" == "cutefish" ]] ;then pacman -Sy --quiet --noconfirm cutefish DM="sddm" - # Start WM's - elif [[ "$DE" == "i3" ]]; then - inf "Choose either i3 or i3-gaps in below prompt. Rest of group is your preference" - inf "Press enter" - prompt "" - pacman -Sy i3 xorg-xinit xorg-server - fi - - if [[ "$DM" == "" ]]; then - inf "Your selected DE/WM doesn't have a standard display manager. Enter one of the below names, or leave blank for none" - inf "- gdm" - inf "- sddm" - inf "- lightdm (you'll need a greeter package. See Arch Wiki)" - inf "- (you can type another Arch package name if you have one in mind)" - inf "- [blank] for none" - prompt "" - ND="$response" - echo "ND=$ND" - if [[ "$ND" != "" ]]; then - inf "Ok, we'll install $ND" - DM="$ND" - pacman -Sy --quiet --noconfirm $DM - else - inf "Ok, not installing a display manager." - fi - else - pacman -Sy --quiet --noconfirm $DM - fi if [[ "$DM" != "" ]]; then - prompt "Would you like to enable ${DM} for ${DE}? (Y/n)" - useDM="$response" - if [[ "$useDM" != "n" ]]; then + yesno "Would you like to enable ${DM} for ${DE}?" + useDM="$yn" + if [[ "$useDM" == "0" ]]; then systemctl enable ${DM} if [[ "$DE" == "Deepin" ]]; then sed -i 's/lightdm-gtk-greeter/lightdm-deepin-greeter/g' /etc/lightdm/lightdm.conf @@ -228,19 +214,19 @@ if [[ "$DEP" == "y" || "$DEP" == "Y" ]]; then fi fi -prompt "Would you like to add more packages? (Y/n)" -MP="$response" -if [[ "$MP" != "n" ]]; then - prompt "Would you like to use a URL to a package list? (Y/n)" - OL="$response" - if [[ "$OL" == "n" ]]; then - prompt "Write package names" - PKGNS="$response" +yesno "Would you like to add more packages?" +MP="$yn" +if [[ "$MP" == "0" ]]; then + yesno "Would you like to use a URL to a package list?" + OL="$yesno" + if [[ "$OL" != "0" ]]; then + msgbox "Package names" + PKGNS="$msgdat" inf "Installing: $PKGNS" ame -S ${PKGNS} else - prompt "URL to package list" - SRC="$response" + msgbox "URL to package list" + SRC="$msgdat" PKGS="$(curl ${SRC})" for PKG in PKGS; do ame -S ${PKG} @@ -248,4 +234,4 @@ if [[ "$MP" != "n" ]]; then fi fi -inf "Installation complete" +#inf "Installation complete" diff --git a/make.sh b/make.sh new file mode 100755 index 0000000..ce031a7 --- /dev/null +++ b/make.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +ins() { + pacman -Sy dialog --noconfirm --needed + chmod +x *.sh + cp *.sh /usr/bin + mv /usr/bin/citrine.sh /usr/bin/citrine + mv /usr/bin/citrine.internal.sh /usr/bin/citrine.internal +} + +testc() { + citrine +} + +if [[ "$1" == "" ]]; then + echo "./make.sh install - installs citrine" + echo "./make.sh test - (installs) then runs citrine" + exit 1 +fi + +if [[ "$1" == "install" ]]; then + ins +elif [[ "$1" == "test" ]]; then + ins + testc +fi \ No newline at end of file diff --git a/refind_linux.conf b/refind_linux.conf new file mode 100644 index 0000000..da6dce8 --- /dev/null +++ b/refind_linux.conf @@ -0,0 +1 @@ +"Crystal Linux" "rw root=/dev/sdc"