7da7e9b4a7
Merged nanorc.org into README.org. Some new headers also reference other orgmode config files. Replaced vim with neovim.
202 lines
7.8 KiB
Fish
Executable File
202 lines
7.8 KiB
Fish
Executable File
#!/usr/bin/fish
|
||
# -*- mode: fish -*-
|
||
|
||
set keyboardconf \
|
||
'Section "InputClass"
|
||
Identifier "system-keyboard"
|
||
MatchIsKeyboard "on"
|
||
Option "XkbLayout" "fr,fr,us"
|
||
Option "XkbModel" "pc104"
|
||
Option "XkbVariant" "bepo,,"
|
||
Option "XkbOptions" "grp:menu_toggle"
|
||
EndSection'
|
||
|
||
printf "\n# Set keyboard layout #########################################################\n\n"
|
||
echo $keyboardconf | sudo tee /etc/X11/xorg.conf.d/00-keyboard.conf
|
||
|
||
set mylocales "en_US.UTF-8 UTF-8" "fr_FR.UTF-8 UTF-8" "ja_JP.UTF-8 UTF-8"
|
||
|
||
printf "\n# Set our locale ##############################################################\n\n"
|
||
for item in $mylocales
|
||
if test (grep -e "#$item" /etc/locale.gen)
|
||
sudo sed -i "/$item/s/^#//g" /etc/locale.gen
|
||
end
|
||
end
|
||
|
||
set localeconf "LANG=en_US.UTF-8
|
||
LC_COLLATE=C
|
||
LC_NAME=fr_FR.UTF-8
|
||
LC_NUMERIC=fr_FR.UTF-8
|
||
LC_IDENTIFICATION=fr_FR.UTF-8
|
||
LC_TELEPHONE=fr_FR.UTF-8
|
||
LC_MONETARY=fr_FR.UTF-8
|
||
LC_PAPER=fr_FR.UTF-8
|
||
LC_ADDRESS=fr_FR.UTF-8
|
||
LC_TIME=fr_FR.UTF-8
|
||
LC_MEASUREMENT=fr_FR.UTF-8"
|
||
|
||
echo $localeconf | sudo tee /etc/locale.conf
|
||
|
||
printf "\n# Generate locale #############################################################\n\n"
|
||
sudo locale-gen
|
||
|
||
printf "\n# Create directories for mounting #############################################\n\n"
|
||
sudo mkdir -p /mnt/{USB,CD,Android}
|
||
sudo chown $USER:(id -g $USER) /mnt/{USB,CD,Android}
|
||
|
||
mkdir -p $HOME/.cache/nano/backups
|
||
|
||
printf "\n# Set fish as the default shell ###############################################\n\n"
|
||
chsh -s /usr/bin/fish
|
||
|
||
if ! test which yay
|
||
printf "\n# Installing yay ##############################################################\n\n"
|
||
cd
|
||
mkdir -p fromGIT
|
||
cd fromGIT
|
||
git clone https://aur.archlinux.org/yay.git
|
||
cd yay
|
||
makepkg -si --noconfirm
|
||
else
|
||
printf "\n# yay already installed #######################################################\n\n"
|
||
end
|
||
|
||
printf "\n# Installing Spacemacs ########################################################\n\n"
|
||
rm -rf ~/.emacs.d
|
||
|
||
git clone --single-branch --branch develop https://github.com/syl20bnr/spacemacs ~/.emacs.d
|
||
|
||
yadm checkout -- ~/.emacs.d/private/
|
||
|
||
if ! test (echo "phundrak" | sed -e "s/^.*$USER//I")
|
||
|
||
printf "\n# Update yadm’s remotes #######################################################\n\n"
|
||
yadm remote set-url origin git@labs.phundrak.fr:phundrak/dotfiles.git
|
||
yadm remote add github git@github.com:phundrak/dotfiles.git
|
||
|
||
printf "\n# Decrypt encrypted dotfiles ##################################################\n\n"
|
||
yadm decrypt
|
||
|
||
end
|
||
|
||
printf '\n# Install envtpl ##############################################################\n\n'
|
||
yay -Syu python-envtpl-git
|
||
|
||
printf "\n# Getting yadm susbmodules ####################################################\n\n"
|
||
yadm submodule update --init --recursive
|
||
|
||
printf "\n# Generating alt files ########################################################\n\n"
|
||
yadm alt
|
||
|
||
for f in (find ~/.etc -type f)
|
||
set dest (echo $f | sed -n 's/^.*etc\(.*\)$/\/etc\1/p')
|
||
sudo ln -s $f $dest
|
||
end
|
||
|
||
read --prompt "echo 'Symlink .nanorc to root’s .nanorc? (Y/n): ' " -l nanoroot
|
||
if test $nanoroot = 'y' || test $nanoroot = "Y" || test $nanoroot = ''
|
||
printf "\n# Symlinking .nanorc to root’s .nanorc ########################################\n\n"
|
||
sudo ln -s $HOME/.nanorc /root/.nanorc
|
||
end
|
||
|
||
set PACKAGES \
|
||
acpilight asar ascii aspell-en aspell-fr assimp awesome-terminal-fonts \
|
||
base-devel bat biber bleachbit bluez-firmware bluez-utils bookworm boost bzip2 \
|
||
chromium clisp compton cppcheck cppreference cppreference-devhelp cpupower \
|
||
cronie cryptsetup device-mapper diffutils discord-canary discount ditaa dmenu \
|
||
dmenu-lpass docker docker-compose doxygen dunst dwarffortress emacs \
|
||
exfat-utils farbfel ffmpegthumbnailer findutils firefox flake8 \
|
||
font-mathematica fontforge freeglut fzf gcc-libs gdb gimp glibc \
|
||
gnome-disk-utility gnome-epub-thumbnailer gnu-free-fonts gnuplot go-tools \
|
||
graphviz htop i3-gaps i3lock-blur i3status igdm-bin inetutils j4-dmenu-desktop \
|
||
jfsutils jmtpfs lastpass-cli less linux-headers lldb logrotate lvm2 ly-git \
|
||
meson minted mpc mpd mpd-rich-presence-discord-git mpv mupdf-tools nano ncdu \
|
||
ncmpcpp nemo-fileroller nemo-preview neofetch neovim netctl networkmanager \
|
||
networkmanager-openvpn nm-connection-editor nnn nomacs noto-fonts-emoji npm \
|
||
ntfs-3g numlockx openssh p7zip pacman-contrib pandoc-bin pavucontrol pciutils \
|
||
pcurses pdfpc polybar pulseaudio-bluetooth python-envtpl-git python-pip \
|
||
python-pywal qemu r raw-thumbnailer reflector rofi rofi-wifi-menu-git rsync \
|
||
rtv rustup s-nail samba scrot sent shadow siji-git simplescreenrecorder \
|
||
speedcrunch sshfs st-luke-git swi-prolog texlive-most texlive-bin \
|
||
texlive-langchinese texlive-langcyrillic texlive-langgreek \
|
||
texlive-langjapanese texlive-langkorean texlive-latexextra \
|
||
texlive-localmanager-git tmux tree ttf-arphic-uming ttf-baekmuk \
|
||
ttf-bitstream-vera ttf-dejavu ttf-google-fonts-opinionated-git ttf-joypixels \
|
||
ttf-liberation ttf-material-design-icons-git ttf-ms-fonts ttf-symbola \
|
||
ttf-tibetan-machine ttf-twemoji-color ttf-unifont unicode unicode-emoji unrar \
|
||
usbutils valgrind w3m wget x11-ssh-askpass xclip xdg-user-dirs-gtk \
|
||
xorg-drivers xorg-apps xfsprogs xorg-server xorg-xinit xss-lock yapf
|
||
|
||
printf "\n# Installing needed packages ##################################################\n\n"
|
||
yay -S --needed $PACKAGES
|
||
|
||
printf "\n# Installing tryone’s compton fork ############################################\n\n"
|
||
yay -S compton-tryone-git
|
||
|
||
printf "\n# Enabling and starting Docker ################################################\n\n"
|
||
sudo systemctl enable --now docker
|
||
|
||
read --prompt "echo 'Do you wish to be added to the `docker` group? (Y/n): ' " -l adddockergroup
|
||
if test $adddockergroup = 'y' || test $adddockergroup = "Y" || test $adddockergroup = ''
|
||
sudo usermod -aG docker $USER
|
||
end
|
||
|
||
printf "\n# Enabling Emacs as user service ##############################################\n\n"
|
||
systemctl --user enable --now emacs
|
||
|
||
read --prompt "echo 'Do you want to activate the ssh server? (Y/n): ' " -l sshdserver
|
||
if test $sshdserver = 'y' || test $sshdserver = "Y" || test $sshdserver = ''
|
||
printf "\n# Enabling ssh server #########################################################\n\n"
|
||
sudo systemctl enable --now sshd
|
||
end
|
||
|
||
sudo systemctl enable --now ly
|
||
sudo systemctl disable getty@tty2
|
||
|
||
sudo usermod -aG video $USER
|
||
|
||
printf "\n# Installing fisher ###########################################################\n\n"
|
||
curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish
|
||
|
||
set FISHEXTENSIONS \
|
||
edc/bass franciscolourenco/done jethrokuan/fzf jethrokuan/z \
|
||
jorgebucaran/fish-getopts laughedelic/pisces matchai/spacefish \
|
||
tuvistavie/fish-ssh-agent
|
||
|
||
fisher add $FISHEXTENSIONS
|
||
|
||
printf "\n# Install i3-gaps-rounded #####################################################\n\n"
|
||
cd ~/fromGIT
|
||
git clone https://github.com/resloved/i3.git i3-gaps-rounded
|
||
cd i3-gaps-rounded
|
||
rm -rf build
|
||
autoreconf --force --install
|
||
mkdir build && cd build
|
||
../configure --prefix=/usr --sysconfdir=/etc --disable-sanitizers
|
||
make -j
|
||
sudo make install
|
||
|
||
printf "\n# Install polybar-battery #####################################################\n\n"
|
||
cd ~/fromGIT
|
||
git clone https://github.com/drdeimos/polybar_another_battery.git
|
||
cd polybar_another_battery
|
||
go get -u github.com/distatus/battery/cmd/battery
|
||
make build
|
||
|
||
ln -s polybar-ab ~/.local/bin/polybar-ab
|
||
|
||
printf "\n# Install Reveal.JS ###########################################################\n\n"
|
||
cd ~/fromGIT
|
||
git clone https://github.com/hakimel/reveal.js.git
|
||
|
||
printf "\n# Install the rust toolchains, nightly is the default one #####################\n\n"
|
||
rustup default nightly
|
||
|
||
rustup toolchain install stable
|
||
|
||
printf "\n# Add rust utilities ##########################################################\n\n"
|
||
cargo install rustfmt racer
|
||
|
||
printf "\n# Clean the pacman and yay cache ##############################################\n\n"
|
||
yay -Sc --noconfirm
|