Skip to content

Instantly share code, notes, and snippets.

@nivaca
Created September 9, 2020 22:55
Show Gist options
  • Save nivaca/25cde2d4d218fcddc28d6c79736b4403 to your computer and use it in GitHub Desktop.
Save nivaca/25cde2d4d218fcddc28d6c79736b4403 to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
# set -x # echo on
_isInstalled() {
package="$1";
check="$(sudo pacman -Qs --color always "${package}" | grep "local" | grep "${package} ")";
if [ -n "${check}" ] ; then
echo 0; #'0' means 'true' in Bash
return; #true
fi;
echo 1; #'1' means 'false' in Bash
return; #false
}
# `NvInstall <pkg>`
NvInstall() {
package="$1";
# If the package IS installed:
if [[ $(_isInstalled "${package}") == 0 ]]; then
echo -e "\e[33m${package} is already installed.\e[0m";
return;
fi;
# If the package is NOT installed:
if [[ $(_isInstalled "${package}") == 1 ]]; then
yay --noconfirm --needed -S "${package}";
fi;
}
# ...................................................................
# update mirrors
read -p "Update mirrors (y/n)? " choice
case "$choice" in
y|Y ) sudo pacman-mirrors --continent
esac
# Remove some programmes -------------------------
sudo pacman --noconfirm -R kwrite
sudo pacman --noconfirm -Rdd --nodeps clementine
sudo pacman --noconfirm -Rdd --nodeps k3b
sudo pacman --noconfirm -Rdd --nodeps transmission-qt
sudo pacman --noconfirm -R emovix
sudo pacman --noconfirm -R cantata
sudo pacman --noconfirm -R gwenview
sudo pacman --noconfirm -R libreoffice-still
sudo pacman --noconfirm -R libcdr
sudo pacman --noconfirm -R yakuake
sudo pacman --noconfirm -R skanlite
sudo pacman --noconfirm -R octopi octopi-cachecleaner octopi-notifier-frameworks octopi-repoeditor alpm-octopi-utils octopi-pacmanhelper
sudo pacman --noconfirm -R chromium
sudo pacman --noconfirm -R manjaro-browser-settings
sudo pacman --noconfirm -R noto-fonts
sudo pacman --noconfirm -R noto-fonts-cjk
sudo pacman --noconfirm -R noto-fonts-emoji
sudo pacman --noconfirm -R noto-fonts-extra
sudo pacman --noconfirm -R microsoft-office-online-jak
sudo pacman --noconfirm -R hplip # HP printers
sudo pacman --noconfirm -R steam-manjaro
sudo pacman --noconfirm -R konqueror
sudo pacman --noconfirm -R discover
sudo pacman --noconfirm -R vi # gonna replace it with neovim
sudo pacman --noconfirm -R inconsolata
# sudo pacman --noconfirm -R emacs # removes v.26.3
# Start system update ----------------------------
sudo pacman -Syyu --noconfirm
# ================================================
# Install programs:
# yay --------------------------------------------
[[ -f /bin/yay ]] || ~/Scripts/Arch/install-yay.sh
NvInstall pamac
NvInstall pamac-tray-appindicator
NvInstall ccache
NvInstall cmake
# compress / uncompress -----------------------------
NvInstall zip
NvInstall unzip
NvInstall unrar
# intel
yay -Rdd xf86-video-intel
NvInstall mesa
NvInstall intel-media-driver
NvInstall intel-compute-runtime
NvInstall intel-graphics-compiler
NvInstall vulkan-intel
NvInstall i7z # intel processors checking
# other ----------------------------------------------
NvInstall aurvote
NvInstall aur-auto-vote
NvInstall rsync
NvInstall rclone
NvInstall vorta # backups
NvInstall borg # backup tool
NvInstall gnome-themes-extra
NvInstall git
NvInstall wget
NvInstall curl
NvInstall parallel
NvInstall htop
NvInstall psensor
NvInstall kdiff3
NvInstall shellcheck-static
NvInstall qbittorrent-enhanced-git
NvInstall gvfs
NvInstall xdotools
NvInstall mlocate
NvInstall dupeguru
NvInstall dmidecode
# if not a desktop, install synaptics
# [[ $(sudo dmidecode --string chassis-type) == *Desktop* ]] || NvInstall xf86-input-synaptics
#NvInstall cups-pdf-to-pdf-git
# fish --------------------------------------------
NvInstall fish
# change default shell
## [[ $(ps -p $$ -ocomm=) == "bash" ]] &&
chsh nivaca -s "$(command -v fish)"
# Some KDE apps --------------------------------------------
NvInstall krename
NvInstall partitionmanager
NvInstall kdeplasma-addons
NvInstall systemd-kcm
NvInstall plasma5-applets-eventcalendar
# sddm -----------------------------------------------------
NvInstall sddm # greeter
NvInstall sddm-kcm
# sddm face
cp -f ~/images/.face ~/.face
ln -sf ~/.face ~/.face.icon
sudo cp ~/.face.icon /usr/share/sddm/faces/nivaca.face.icon
sudo chmod +r -R /usr/share/sddm/faces/
# plasma vaults ---------------------------------------------
NvInstall plasma-vault
NvInstall cryfs
# spelling --------------------------------------------
NvInstall aspell
NvInstall aspell-en
NvInstall aspell-es
NvInstall ispell
NvInstall hunspell
NvInstall hunspell-en_US
NvInstall hunspell-en_GB
NvInstall hunspell-es_any
# dev ------------------------------------------------
NvInstall python-pip
NvInstall python2-pip
sudo pip install --upgrade pip
NvInstall jdk8-openjdk # java
NvInstall nodejs
# utils ----------------------------------------------
NvInstall pwgen
NvInstall djview
NvInstall xbanish
NvInstall xclip
NvInstall xsel
NvInstall exa # ls replacement
NvInstall fzf
NvInstall fd # find replacement
NvInstall screenkey # show pressed keys
NvInstall cups-pdf-to-pdf-git
NvInstall gled-git # logitech mouse
# to run 32bit apps
yay -S lib32-glibc lib32-gcc-libs lib32-libx11 lib32-libxext
NvInstall standardnotes-desktop
NvInstall xsettingsd
NvInstall angrysearch
NvInstall the_silver_searcher
NvInstall w3m
NvInstall ranger
NvInstall scantailor-advanced
NvInstall oath-toolkit # two-factor auth.
NvInstall zbar # read barcodes
NvInstall neofetch
NvInstall speedcrunch # calculator
NvInstall bat # cat with wings
NvInstall grub-customizer
NvInstall watchdog
NvInstall haveged # entropy
NvInstall ripgrep
# officeware -------------------------------------------
NvInstall jabref
NvInstall libreoffice-fresh
NvInstall zotero
NvInstall goldendict
NvInstall calibre
NvInstall foliate
NvInstall pandoc-bin
NvInstall libmythes # thesaurus
NvInstall mythes-es
NvInstall mythes-en
# NvInstall pdftk (installed in ~/bin)
# NvInstall qpdf
# NvInstall qimgv-git # image viewer
# editors -----------------------------------------------
# NvInstall emacs
# neovim
NvInstall neovim
NvInstall neovim-symlinks
pip3 install pynvim --user
NvInstall npm
# sublime-text
NvInstall sublime-text-dev
sudo rm /usr/share/applications/sublime_text_3.desktop
sudo ln -sf /opt/sublime_text_3/sublime_text /usr/bin/subl
NvInstall atom-editor-bin
# internet -----------------------------------------------
NvInstall thunderbird
NvInstall firefox
NvInstall xdg-desktop-portal-kde
NvInstall xdg-desktop-portal
NvInstall chromium
NvInstall tor-browser
# fonts -----------------------------------------------
NvInstall ttf-ms-fonts
NvInstall ttf-google-fonts-typewolf
NvInstall ttf-ubuntu-font-family
NvInstall ttf-noto-fonts-simple
# icons -----------------------------------------------
NvInstall papirus-folders-nordic
NvInstall gnome-icon-theme
# Kvantum
NvInstall kvantum-theme-arc
NvInstall kvantum-manjaro
# jekyll -----------------------------------------------
# NvInstall ruby
# NvInstall ruby-rdoc
# gem install jekyll
# fsearch ------------------------------------
# update cpan
sudo cpan install CPAN
if ! pacman -Qs fsearch-git > /dev/null ; then
NvInstall perl-xml-parser
NvInstall expat
sudo cpan XML::Parser
NvInstall fsearch-git
fi
NvInstall redshift
NvInstall kimageformats
NvInstall qt5-imageformats
NvInstall imagemagick
NvInstall imagemagick-doc
NvInstall kid3-qt
NvInstall audacity
NvInstall vlc
NvInstall deadbeef
NvInstall gimp
NvInstall gimp-plugin-gmic
NvInstall inkscape
NvInstall youtube-dl
NvInstall perl-image-exiftool
NvInstall gtick # metronome
NvInstall flameshot
NvInstall obs-studio
# for use within emacs
sudo ln -sf /usr/bin/konsole /usr/bin/x-terminal-emulator
# end of file #
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment