Created
September 19, 2021 13:01
-
-
Save salopst/89bf87ceecd666901d09841dbd0aef22 to your computer and use it in GitHub Desktop.
Running list of apps and stuff installed following Pop OS install Jul 2021
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# 2021-07-13/2021-09-19 | |
# [email protected] | |
# $HOME/.dotfiles/_startup/ubuntu-post-install.sh | |
# | |
# - Not intended for script-running | |
# - Very GNOMEy -- Something for non-APT package managers ?? | |
# - Emacs sold seperately | |
export XDG_CONFIG_HOME=$HOME/.config | |
echo "$XDG_CONFIG_HOME" | |
sudo apt update && sudo apt full-upgrade -y | |
#### DELETE FROM STOCK | |
# | |
# | |
sudo apt purge --autoremove geary -y # replaced with evolution | |
# sudo apt purge --autoremove eog -y # POS cannot even crop... after all these years! | |
# gedit for geany ?? | |
# GNOME videos for MPV / VLC ?? | |
#### GENERAL --separate out the GNOMEy stuffs? | |
# | |
# if [ $(pgrep -c gnome-session) -gt 0 ]; then | |
# echo "Show me the way to go GNOME..." | |
# sudo apt install -y gnome-sushi gnome-tweaks | |
# # flatpaks | |
# flatpak install -y --noninteractive --user org.gnome.Evince org.gnome.Evolution | |
# | |
# fi | |
# | |
sudo apt install -y \ | |
alacritty apt-file bat curl copyq dconf-editor evolution exa ffmpeg \ | |
file flameshot flatpak fonts-powerline fonts-roboto fortune \ | |
fonts-font-awesomefzf git gnome-sushi\ | |
gnome-tweaks gthumb htop ibus-m17n imagemagick inxi jq kazam \ | |
libimage-exiftool-perl \ | |
libsane-hpaio lshw most neofetch nautilus-admin audacious-share \ | |
nmap ocrfeeder openssh-server p7zip pavucontrol \ | |
python3 python3-dev python3-pip python3-testresources \ | |
qalc ruby-dev samba sane sane-airscan shotwell spice-vdagent \ | |
stow sqlite3 texinfo \ | |
tmux ubuntu-restricted-extras unrar unzip wireguard youtube-dl zsh | |
#### DEV | |
# | |
# | |
sudo apt install -y \ | |
autoconf automake autotools-dev build-essential clang cmake \ | |
gnome-builder gridsite-clients kbd \ | |
libclang-dev libexif-dev libgtk-3-dev libimlib2-dev \ | |
libudve-dev nodejs npm libreadline-dev | |
#### PHONE & FILESYSTEMS | |
# | |
# PHONE | |
sudo apt install -y \ | |
ifuse libimobiledevice6 libimobiledevice-utils | |
# FILESYSTEMS | |
sudo mkdir -p /media/{iphone,macos,external} | |
sudo apt install -y \ | |
btrfs-progs bzip2 fuse gnutls-devlibjpeg-dev libattr1-dev \ | |
libdsk-utils libfuse3-dev libtiff-dev libssl-dev openssl libacl1-dev \ | |
libacl1 libgif-dev libxpm-dev libdsk-utils libgtk2.0-dev libgtk-3-dev \ | |
libfuse-dev libmediainfo-dev pkg-config libncurses5-dev libreadline-dev \ | |
libxml2-dev libxt-dev libbz2 zfsutils-linux zlib1g-dev | |
#### VIRTUALISATION | |
# | |
# | |
sudo apt install -y \ | |
genisoimage libguestfs-tools libosinfo-bin libvirt-dev linux-source \ | |
qemu-kvm uuid-runtime virtinst virt-manager virt-viewer \ | |
virtualbox virtualbox-ext-pack virtualbox-guest-additions-iso \ | |
virtualbox-guest-dkms virtualbox-guest-utils | |
############################################################################### | |
#### END REPO APT INSTALLS | |
############################################################################### | |
##### FLATPAK | |
# | |
# | |
# to add to ulauncher etc, add aliases $XDG_CONFIG_HOME/.shell_aliases.sh... | |
# `alias vscodium="flatpak run com.vscodium.codium"` | |
# | |
# flatpak uninstall --delete-data --noninteractive -y <app-name> | |
if [ $(dpkg-query -W -f='${Status}' flatpak 2>/dev/null | grep -c "ok installed") -eq 0 ]; | |
then | |
echo "" | |
echo "Installing → flatpak" | |
echo "" | |
sudo apt-get install -qq -y flatpak; | |
fi | |
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo | |
# com.play0ad.zeroad # strategy game about 13 ancient civs | |
# ✔ org.atheme.audacious # lightweight music player like ye olde WinAmp | |
# org.clementine_player.Clementine | |
# io.github.cmus.cmus | |
# ✔ com.github.qarmin.czkawka # CLI INSTALLED WITH CARGO | |
# org.kde.elisa # lightweight KDE/QT music player | |
# org.gnome.Evince | |
# org.gnome.Evolution # installed via repo | |
# ✔ com.github.tchx84.Flatseal # manage flatpak permissions | |
# ✔ com.github.johnfactotum.Foliate # ebook reader | |
# io.freetubeapp.FreeTube # privacy oriented YouTube client | |
# net.cozic.joplin_desktop # X-platform MD notetaker w/ sync | |
# flathub org.kde.kdenlive # grandaddy video editor | |
# ✔ io.github.seadve.Kooha # screenrecorder w/ Wayland support | |
# ✔ org.gnome.Lollypop # lightweight music player | |
# ✔ org.gnome.Meld # GNOME's differencing tool | |
# ✔ org.nomacs.ImageLounge # because ROG is a POS and cannot even crop | |
# ✔ nz.mega.MEGAsync # free non-google storage, | |
# md.obsidian.Obsidian # Markdown-based knowledge base | |
# org.openshot.OpenShot # video editing for the simples ? | |
# io.photoflare.photoflare # simple X-platform Image Editor | |
# ✔ org.musicbrainz.Picard # music tagger | |
# im.pidgin.Pidgin | |
# org.qownnotes.QOwnNotes | |
# org.shotcut.Shotcut # lightweight video editor | |
# ✔ flathub org.gnome.Shotwell # GNOME version of DigiKam? | |
# com.simplenote.Simplenote | |
# org.standardnotes.standardnotes | |
# ✔ io.typora.Typora # markdown editor | |
# com.valvesoftware.Steam | |
# org.videolan.VLC | |
# com.tutanota.Tutanota | |
flatpak install -y --noninteractive --user flathub \ | |
net.ankiweb.Anki \ | |
org.audacityteam.Audacity \ | |
org.audacityteam.Audacity.Codecs \ | |
com.bitwarden.desktop \ | |
com.calibre_ebook.calibre \ | |
com.discordapp.Discord \ | |
com.github.johnfactotum.Foliate \ | |
org.freefilesync.FreeFileSync \ | |
com.github.tchx84.Flatseal \ | |
org.gimp.GIMP \ | |
org.inkscape.Inkscape \ | |
org.nomacs.ImageLounge \ | |
io.github.seadve.Kooha \ | |
org.gnome.Lollypop \ | |
io.github.liberodark.OpenDrive \ | |
org.musicbrainz.Picard \ | |
io.github.Qalculate \ | |
com.obsproject.Studio \ | |
ch.protonmail.protonmail-bridge \ | |
ch.protonmail.protonmail-import-export-app \ | |
com.github.wwmm.pulseeffects \ | |
de.haeckerfelix.Shortwave \ | |
org.signal.Signal \ | |
com.skype.Client \ | |
com.spotify.Client \ | |
org.telegram \ | |
org.texstudio.TeXstudio \ | |
com.transmissionbt.Transmission \ | |
io.typora.Typora \ | |
com.vscodium.codium \ | |
us.zoom.Zoom | |
##### PIP3 APPS (PYTHON3) | |
# | |
# | |
pip3 install --user --upgrade youtube_dl | |
# a CLI front-end for borgbackup | |
# pip3 -m pip install --user --upgrade emborg | |
# a set of rules for auto-managing files--- kinda like MacOS' Hazel or Maid | |
pip3 install --user --upgrade organize-tool | |
##### R | |
# | |
# https://cloud.r-project.org/bin/linux/ubuntu/ | |
# | |
# update indices | |
sudo apt update -qq | |
# install two helper packages we need | |
sudo apt install --no-install-recommends software-properties-common dirmngr | |
# import the signing key (by Michael Rutter) for these repo | |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 | |
# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed | |
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" | |
sudo apt install --no-install-recommends r-base | |
### RStudio | |
sudo apt install gdebi-core -y | |
cd ~/tmp | |
wget https://download1.rstudio.org/desktop/bionic/amd64/rstudio-1.4.1717-amd64.deb | |
sudo apt install -y ./rstudio-1.4.1717-amd64.deb | |
##### RUST, CARGO & FEEL-GOODS | |
# | |
# | |
curl https://sh.rustup.rs -sSf | sh | |
# Default Crate install location is $HOME/.cargo/bin | |
source $HOME/.cargo/env | |
# | |
# rust replacements & feel-goods... https://zaiste.net/posts/shell-commands-rust/ | |
# aliases in .shell-aliases | |
# alias bat=batcat | |
# type exa >/dev/null 2>&1 && alias ls='exa -lahGi' | |
# alias fd=fdfind | |
cargo install bat # purdy cat | |
cargo install bandwhich # display current network utilization by process | |
# cargo install castor # GTK gemini, gopher, finger client | |
cargo install czkawka_gui # https://github.com/qarmin/czkawka | |
cargo install czkawka_cli # remove unnecessary files from your computer. | |
cargo install du-dust # du alternative; bin is `dust` | |
cargo install exa # drop-in replacement for `ls` | |
cargo install fd-find # a better `find` than `find`? | |
cargo install git-delta # file diffing | |
cargo install grex # provide pattern... it offers a possible regex | |
cargo install hyperfine # performance monitor | |
cargo install procs # procs is a modern replacement for `ps | |
cargo install ripgrep #`rg` .. a better grep? | |
cargo install skim # FZF alternative; bin is `sk` | |
cargo install sd # more intuitive than `sed` | |
cargo install starship # lovely drop-in command prompt | |
cargo install szyszka # GUI batch file-renamer | |
cargo install tealdeer # tldr alternative; bin is `tldr | |
cargo install ytop # purdy htop | |
cargo install zellij # a terminal workspace -- buggy as of 2021-04-28 | |
cargo install zoxide # fast `cd`ing around the filesystem | |
##### NPM | |
# | |
# | |
# Should already be installed, but... | |
if [ $(dpkg-query -W -f='${Status}' npm 2>/dev/null | grep -c "ok installed") -eq 1 ]; | |
then | |
echo "" | |
echo "Installing → npm" | |
echo "" | |
sudo apt-get install -qq -y npm; | |
fi | |
# sometimes get perm issues with installing to /usr/local/lib/node_modules | |
mkdir $HOME/.npm-global | |
npm config set prefix '~/.npm-global' | |
export PATH=~/.npm-global/bin:$PATH >> $HOME/.profile | |
source $HOME/.profile | |
# for to make some wapps from web pages | |
# https://github.com/nativefier/nativefier | |
npm install -g nativefier | |
## EG... make icloud nativefier app for ical... | |
## 2021-03-28 | |
# ``` | |
# mkdir -p ~/tmp/icloud-nativefier-build-dir | |
# cd ../tmp/icloud-nativefier-build-dir | |
# # get nice icon | |
# wget https://i.imgur.com/m0abT4k.png -O icon.png | |
# nativefier -p linux -a x64 -i icon.png --disable-context-menu --disable-dev-tools --single-instance https://www.icloud.com/ | |
# # App built to /home/yearluk/tmp/icloud-nativefier-build-dir/iCloud-linux-x64 | |
# mv ~/tmp/icloud-nativefier-build-dir/iCloud-linux-x64 ~/bin/ | |
# # add to $XDG_CONFIG_HOME/.shell_aliases.sh ... | |
# # alias icloud="$HOME/bin/iCloud-linux-x64/iCloud" | |
# cd ~/bin/iCloud-linux-x64 | |
# # make the desktop file.... put in ~/.local/share/applications ... or /usr/share/applications/ | |
# vscodium icloud.desktop | |
# chmod +x ./icloud.desktop | |
# ``` | |
##### SHIT FROM OTHER PLACES | |
# | |
# | |
# Espanso: text expander ... https://espanso.org/ | |
cd $HOME/tmp | |
wget https://github.com/federico-terzi/espanso/releases/latest/download/espanso-debian-amd64.deb | |
sudo apt install -y ./espanso-debian-amd64.deb | |
espanso start | |
# Module for espanso ... https://espanso.org/install/linux/ | |
mkdir -p $HOME/opt | |
wget https://github.com/federico-terzi/modulo/releases/latest/download/modulo-x86_64.AppImage -O $HOME/opt/modulo.AppImage && chmod u+x $HOME/opt/modulo.AppImage | |
sudo ln -s $HOME/opt/modulo.AppImage /usr/bin/modulo | |
# KiTTY ... https://sw.kovidgoyal.net/kitty | |
# default install path is $HOME/.local/kitty.app | |
# To update kitty, simply re-run the command. | |
curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin \ | |
dest=$HOME/bin | |
cp $HOME/bin/kitty.app/share/applications/kitty.desktop ~/.local/share/applications/kitty.desktop | |
sed -i "s|Icon=kitty|Icon=$HOME/bin/kitty.app/share/icons/hicolor/256x256/apps/kitty.png|g" ~/.local/share/applications/kitty.desktop | |
# purdy BASH prompt ... https://github.com/chris-marsh/pureline | |
cd $HOME/tmp && git clone https://github.com/chris-marsh/pureline.git | |
cp pureline/configs/powerline_full_256col.conf $HOME/.config/.pureline.conf | |
echo 'source $HOME/.config/ $HOME/.pureline.conf' >> $HOME/.bashrc | |
# Ulauncher: Alfred-like launcher | |
sudo add-apt-repository ppa:agornostal/ulauncher | |
sudo apt install ulauncher -y | |
# MediaElch: simple movie/tv show scraper | |
sudo add-apt-repository ppa:mediaelch/mediaelch-stable | |
sudo apt update | |
sudo apt install mediaelch -y | |
# Musique -- a music player | |
# cd $HOME/tmp | |
# wget -O https://flavio.tordini.org/files/musique/musique.deb | |
# sudo apt install musique.deb | |
# NordVPN | |
sh <(curl -sSf https://downloads.nordcdn.com/apps/linux/install.sh) | |
# sxiv: CLI imageviewer | |
cd $HOME/src && \ | |
git clone https://github.com/muennich/sxiv.git && cd sxiv \ | |
make && sudo make install | |
# ytfzf: CLI youtube viewer | |
cd $HOME/src && \ | |
git clone https://github.com/pystardust/ytfzf && cd ytfzf \ | |
sudo make install | |
# sudo make uninstall | |
##### DCONF / GSETTINGS | |
# | |
# $ grep -i -R --exclude-dir=~/.local 'gsettings set' ~/ > ~/Desktop/gsettings-search.txt | |
# | |
# GUI `dconf-editor` and CLI `gsettings` both access the same db, but command line has options not present in GUI... figures! | |
# | |
gsettings set org.gnome.desktop.interface cursor-theme "Pop" | |
gsettings set org.gnome.desktop.interface locate-pointer true | |
gsettings set org.gnome.desktop.interface icon-theme "Pop" | |
gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs" | |
gsettings set org.gnome.desktop.notifications.show-in-lockscreen false | |
gsettings set org.gnome.shell.extensions.pop-cosmic show-applications-button false | |
gsettings set org.gnome.shell.extensions.pop-cosmic show-workspaces-button true | |
# Since <Primary>t gives me alacrity... | |
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom04-GNOME-terminal/ name "GNOME Terminal" | |
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom04-GNOME-terminal/ command "gnome-terminal --maximize" | |
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom04-GNOME-terminal/ binding "<Primary><Alt>t" | |
gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom04-GNOME-terminal/']" | |
# enable (or not) notifications for whatever apps | |
# [org/gnome/desktop/notifications] | |
# application-children=['io-elementary-appcenter', 'org-gnome-nautilus', 'org-freefilesync-freefilesync', 'org-signal-signal', 'us-zoom-zoom', 'org-gnome-tweaks', 'brave-browser', 'firefox', 'ca-desrt-dconf-editor', 'org-gnome-geary', 'org-gnome-shell-extensions', 'virtualbox', 'com-transmissionbt-transmission', 'ulauncher', 'flameshot', 'org-gnome-gedit', 'org-telegram-desktop', 'org-gnome-totem', 'io-github-hexchat', 'com-alacritty-alacritty', 'gnome-printers-panel', 'gnome-control-center', 'org-gnome-extensions-desktop', 'org-gnome-evolution', 'gnome-power-panel', 'rstudio', 'protonmail-bridge', 'org-gnome-evolution-alarm-notify', 'megasync', 'com-hamrick-vuescan', 'org-gimp-gimp', 'org-gnome-chromegnomeshell', 'musique', 'org-gnome-eog', 'gnome-datetime-panel', 'kazam', 'org-clementine-player-clementine', 'net-scribus-scribus', 'com-github-unrud-videodownloader', 'org-audacityteam-audacity', 'org-gnome-easytag', 'org-qbittorrent-qbittorrent', 'freefilesync', 'org-musicbrainz-picard', 'org-gnome-baobab', 'fr-handbrake-ghb'] | |
# show-banners=true | |
dconf write /org/gnome/nautilus/preferences/always-use-location-entry true | |
dconf write /org/gnome/desktop/interface/clock-format "['24hr']" | |
dconf write /org/gnome/desktop/interface/locate-pointer "['true']" | |
dconf write /org/gnome/desktop/wm/keybindings/show-desktop "['<Super>D']" | |
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-1 "['<Super>1']" | |
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-2 "['<Super>2']" | |
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-3 "['<Super>3']" | |
dconf write /org/gnome/desktop/wm/keybindings/switch-to-workspace-4 "['<Super>4']" | |
dconf write /org/gnome/desktop/input-sources/xkb-options "['caps:ctrl','caps:ctrl_modifier','compose:ralt']" | |
# for the GNOME panel-date-format extension, below | |
dconf write /org/gnome/shell/extensions/panel-date-format/format "'%A | %Y-%m-%d | ** %k:%M:%s ** '" | |
# for the workspace-switch-wraparound, below. switch workspaces w/ <Super>Tab | |
dconf write /org/gnome/desktop/wm/kwybindings/switch-to-workspace-down "['<Primary><Super>Down', '<Primary><Super>KP_Down', '<Primary><Super>j', '<Super>Tab']" | |
gsettings get org.gnome.desktop.input-sources sources | |
==> [('xkb', 'us'), ('xkb', 'in+hin-kagapa')] | |
# does not work... | |
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'in+hin-kagapa'), ('ibus', 'gr+polytonic')]" | |
('xkb', 'gr+polytonic') | |
('xkb', 'in+bolnagri'), ('xkb', 'eu') | |
org.gnome.desktop.input-sources [] | |
##### GNOME EXTENSIONS --MANUAL | |
# | |
# https://extensions.gnome.org/extension/1462/panel-date-format/ | |
# https://extensions.gnome.org/extension/1162/emoji-selector/ | |
# https://extensions.gnome.org/accounts/profile/dlandau | |
# https://extensions.gnome.org/extension/750/openweather/ | |
# https://extensions.gnome.org/extension/2087/desktop-icons-ng-ding/ | |
# https://extensions.gnome.org/extension/4173/clear-top-bar/ | |
# https://extensions.gnome.org/extension/1116/workspace-switch-wraparound/ | |
##### BROWSER EXTENSIONS --MANUAL | |
# | |
# bitwarden | |
# ublockorigin | |
# reddit enhancement suite | |
# tin eye image search | |
# alt search engine: https://millionshort.com |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment