scripts

Scripts for general automations
git clone git://git.laack.co/scripts.git
Log | Files | Refs

alpine-install.sh (6034B)


      1 #!/bin/sh
      2 # alpine base install via 'setup-alpine'
      3 # Make sure to uncomment second line of /etc/apk/repositories
      4 # install st, dwm, and tabbed if you are intending to replicate my dwm/x11 setup.
      5 
      6 # Make sure to run this script as YOUR user, not root. Your user
      7 # will need doas privileges, but if you run this as root setting the default
      8 # shell will not work as expected.
      9 
     10 # NOTE: There are sections (e.g. school) that I would not
     11 # recommend using unless you need them. This config is mine
     12 # so I want reproducability, but if it wasn't for my use case
     13 # I wouldn't download them.
     14 
     15 # If you are intending to run this on a server, some portions
     16 # should be commented out as there isn't a real reason to have
     17 # a thunderbird, an audio sever, firefox, okular, etc. on a server.
     18 
     19 # why isn't this default?
     20 doas apk add curl
     21 
     22 # open apps (this should be installed using my configuration)
     23 # doas apk add dmenu
     24 
     25 # git
     26 doas apk add git
     27 
     28 # Install and set default shell
     29 doas apk add shadow
     30 doas apk add bash
     31 doas chsh $USER -s /bin/bash
     32 
     33 # Sync
     34 doas apk add rsync
     35 
     36 # Xorg input management
     37 doas apk add libinput
     38 doas apk add udev
     39 doas apk add xf86-input-libinput
     40 
     41 # This gives dmenu_run
     42 doas apk add dmenu
     43 
     44 
     45 # python
     46 doas apk add python3
     47 # No need for pip, use venvs ;)
     48 # python3 -m ensurepip --break-system-packages
     49 
     50 
     51 # doas apk add py3-pip
     52 doas apk add python3-dev
     53 
     54 # Email Client
     55 # doas apk add thunderbird
     56 
     57 # Desktop notifications
     58 # doas apk add libnotify
     59 # doas apk add swaync
     60 
     61 # Audio (TODO)
     62 
     63 # Unison
     64 doas apk add ocaml
     65 
     66 # Session Manager
     67 # I use tabbed now instead
     68 # doas apk add tmux
     69 
     70 # Control Sound
     71 doas apk add pavucontrol
     72 
     73 # Video/Music Viewer and YT-DLP for streaming
     74 doas apk add mpv yt-dlp
     75 
     76 # File System Traversal
     77 doas apk add zoxide
     78 
     79 # Text Editor + necessary component for telescope full text search
     80 doas apk add neovim
     81 doas apk add ripgrep
     82 
     83 # PDF Viewer
     84 doas apk add zathura
     85 doas apk add zathura-pdf-mupdf
     86 
     87 # Browser
     88 # PLUGINS:
     89 # 	- Bitwarden (connect to self hosted vaultwarden)
     90 # 	- Ad Nauseum (screw ads and marketers)
     91 # 	- Vimium (following links from keyboard is great)
     92 
     93 # CUSTOM CONFIG FOR VIMIUM 
     94 # unmap f
     95 # map s LinkHints.activateMode
     96 # map S LinkHints.activateModeToOpenInNewTab
     97 # unmap f
     98 # unmap F
     99 # unmap H
    100 # unmap L
    101 # 
    102 # map <c-left> previousTab
    103 # map <c-right> nextTab
    104 # 
    105 # map <left> goBack
    106 # map <right> goForward
    107 # map ys LinkHints.activateModeToCopyLinkUrl
    108 
    109 #doas apk add firefox
    110 doas apk add qutebrowser
    111 
    112 # LaTeX + filetype conversion 
    113 # there are alternatives to full,
    114 # but it was such a chore to just get pandoc
    115 # working with them that this seems fine.
    116 # Yes, the package is large, honestly though,
    117 # does it really matter? It doesn't need to be backed
    118 # up so who cares... right?
    119 doas apk add texlive-full
    120 doas apk add pandoc
    121 
    122 # screen config (gui... gasp!!!)
    123 doas apk add wdisplays
    124 
    125 # THESE ARE FOR SCHOOL ONLY
    126 # I WOULDN'T USE THEM OTHERWISE
    127 
    128 doas apk add openjdk21
    129 doas apk add zip
    130 
    131 # END SCHOOL SECTION
    132 
    133 # password manager
    134 # - See my scripts for pass.sh which is taken from the official 
    135 # - pass repo and is an integration between pass and dmenu
    136 # - for searching for passwords. If you use ROFI, similar
    137 # - functions also exist.
    138 
    139 doas apk add gpg
    140 doas apk add gpg-agent
    141 doas apk add pass
    142 
    143 # OTPs
    144 doas apk add pass-otp
    145 # these two allow for scanning the QR codes and converting to 
    146 # the proper uri format for pass-otp
    147 doas apk add imagemagick
    148 doas apk add zbar
    149 
    150 doas apk add grim
    151 
    152 doas apk add make
    153 doas apk add g++
    154 doas apk add cmake
    155 
    156 # control brightness of (laptop) screen
    157 doas apk add brightnessctl
    158 
    159 # watch file, allows tex compilation without vimtex
    160 doas apk add entr
    161 
    162 # for script to get browser history
    163 doas apk add sqlite
    164 
    165 # tailscale
    166 doas apk add tailscale
    167 doas tailscale up
    168 
    169 
    170 # DWM setup reqs
    171 
    172 # git clone https://git.suckless.org/dwm
    173 doas apk add xorg-server
    174 doas apk add libx11-dev
    175 doas apk add libxft-dev
    176 doas apk add libxinerama-dev
    177 # You may want to use this or compile it yourself.
    178 # doas apk add st
    179 doas apk add xinit
    180 doas apk add xf86-input-libinput
    181 doas apk add arandr
    182 doas apk add xclip
    183 
    184 doas apk add xsetroot
    185 doas apk add xkill
    186 # image viewer
    187 doas apk add scrot
    188 
    189 # view photos
    190 doas apk add feh
    191 
    192 # file manager
    193 # doas apk add ranger
    194 doas apk add picom
    195 
    196 # compiling st
    197 doas apk add ncurses
    198 
    199 doas apk add tmux
    200 
    201 doas apk add htop
    202 
    203 # dvtm
    204 # doas apk add ncurses-dev
    205 
    206 doas apk add libnotify
    207 doas apk add dbus-x11
    208 doas apk add dunst
    209 
    210 # needed for debugging stuff, 
    211 # not "necessary".
    212 doas apk add gdb
    213 doas apk add dragon
    214 
    215 
    216 # fuck honorlock, that proprietary spyware.
    217 #doas apk add chromium
    218 
    219 # dragon
    220 doas apk add gtk+3.0-dev
    221 doas apk add librewolf
    222 
    223 
    224 #doas apk add bluez
    225 
    226 # I don't trust firefox, but librewolf doesn't have vertical tabs yet so here I am.
    227 # Also, apk doesn't allow me to download 136...
    228 # doas apk add flatpak
    229 # sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
    230 # flatpak install flathub org.mozilla.firefox
    231 
    232 #flatpak install flathub app.zen_browser.zen
    233 
    234 # doas apk add emacs
    235 # doas apk add emacs-x11
    236 doas apk add fzf
    237 #doas apk add fd
    238 
    239 # Kakoune (not worth it for me, maybe for you though!)
    240 #doas apk add kakoune
    241 #doas apk add kakoune-lsp
    242 
    243 # Configure treesitter support for LaTeX.
    244 # doas apk add yarn
    245 # doas apk add npm
    246 # doas npm install -g tree-sitter
    247 # yarn global add tree-sitter-cli
    248 
    249 # convert images into a pdf
    250 # it would probably be better to use imagemagick via convert
    251 # doas apk add py3-img2pdf
    252 
    253 # pip install spotdl --break-system-packages
    254 
    255 # doas apk add virt-manager qemu
    256 
    257 # doas apk add libvirt-daemon py3-libvirt py3-libxml2
    258 
    259 # doas rc-update add libvirtd && doas rc-service libvirtd start
    260 # doas apk add polkit
    261 # doas rc-service polkit start
    262 
    263 # used for manim
    264 # doas apk add ffmpeg-dev
    265 # doas apk add gcompat
    266 # doas apk add libavif-dev
    267 
    268 # make directory for shared sty stuff (this will install)
    269 # the theme for latex globally. I normally use owl. This can be found
    270 # in my bin/resources directory.
    271 
    272 doas mkdir -p /usr/local/texlive/texmf-local/tex/latex/
    273 
    274 doas apk add newsboat
    275 doas apk add flameshot