install.org (6583B)
1 * Step-by-step recap (Bullseye) 2 ** Setup keyboard 3 Turn CapsLock key into Control (cf. keyboard(5)): 4 - add =ctrl:nocaps= to =XKBOPTIONS= in =/etc/default/keyboard= 5 - run =udevadm trigger --subsystem-match=input --action=change= 6 - run =setupcon= in a TTY 7 ** Install stuff 8 *** Distro-provided packages 9 #+begin_src sh 10 packages=( 11 # To clone & update dotfiles. 12 git 13 # Look & feel. 14 elementary-xfce-icon-theme greybird-gtk-theme 15 # Enable volume management with Thunar. 16 gvfs-backends gvfs-fuse 17 # System monitoring. 18 htop powertop wavemon 19 # Documentation: 20 # - info pages, 21 gcc-doc make-doc tar-doc info 22 # - manpages, 23 manpages-dev manpages-posix manpages-posix-dev 24 # - text & HTML pages. 25 git-doc python3-doc 26 # Writing helpers. 27 aspell-fr verbiste wordnet 28 # CLI helpers. 29 mlocate ripgrep vim 30 # Fonts. 31 fonts-noto-color-emoji 32 # Miscellaneous applications. 33 ffmpeg gimp pandoc terminator vlc 34 ) 35 sudo apt install ${packages[@]} 36 #+end_src 37 *** Latest and greatest 38 **** Firefox 39 - download most recent release from <https://www.mozilla.org> 40 - unpack it =$SOMEWHERE= 41 - make sure everyone can find it: 42 43 #+begin_src sh 44 $ sudo update-alternatives --install $(which x-www-browser) x-www-browser \ 45 ${SOMEWHERE}/firefox/firefox 1 46 $ sudo update-alternatives --set x-www-browser ${SOMEWHERE}/firefox/firefox 47 $ ln -s ${SOMEWHERE}/firefox/firefox ~/.local/bin/ 48 #+end_src 49 50 - paste backuped profile into =~/.mozilla/firefox/${profile}= 51 **** Symbola 52 - grab the archive from <http://users.teilar.gr/~g1951d/> 53 - drop the TTF files in =~/.local/share/fonts= 54 - run =fc-cache -fv= 55 **** youtube-dl 56 #+begin_src sh 57 $ sudo apt install python3-pip 58 $ pip3 install --user youtube-dl 59 #+end_src 60 ** Setup dotfiles 61 *** Clone versioned dotfiles 62 - create new SSH key for GitLab 63 - follow instructions in dotfiles README 64 *** Tweak non-versioned dotfiles 65 - set EMAIL in =.profile= 66 - add =~/.local/bin= to PATH 67 - copy =.profile= to =.xsessionrc= 68 - in =.bashrc= 69 - enable globstar and autocd 70 - uncomment grep and ls aliases 71 - source =~/.bash_prompt= 72 ** Setup Emacs 73 - clone from Savannah 74 - =apt build-dep emacs= 75 - =apt install libgconf2-dev libwebkit2gtk-4.0-dev= 76 (optional build dependencies for ≥27) 77 - comment out .emacs below =(load custom-file)= 78 #+begin_src elisp 79 (package-refresh-contents) 80 (package-install-selected-packages) 81 #+end_src 82 ** Setup XFCE 83 *** Appearance 84 **** Style 85 Greybird-dark 86 **** Icons 87 elementary Xfce darker 88 **** Fonts 89 - Rendering 90 - [X] Enable anti-aliasing 91 - Hinting: Slight 92 - Sub-pixel order: RGB (trusting the [[http://www.lagom.nl/lcd-test/subpixel.php][Lagom LCD test pages]]) 93 *** File Manager 94 **** View 95 - Side Pane: Tree 96 - View as Detailed List 97 *** Panel 98 **** Top panel 99 ***** Items 100 ****** Whisker Menu 101 ****** Window Buttons 102 ****** Separator 103 ****** Workspace Switcher 104 ****** Separator 105 ****** Status Tray Plugin 106 ****** PulseAudio Plugin 107 ****** Power Manager Plugin 108 - Show label: None 109 ****** Notification Plugin 110 ****** Separator 111 ****** Clock 112 **** Bottom panel 113 Delete. 114 *** Window Manager 115 **** Keyboard 116 - Move window to previous workspace: Shift+Super+Left 117 - Move window to next workspace: Shift+Super+Right 118 - Tile window to the left: Super+Left 119 - Tile window to the right: Super+Right 120 - Show desktop: Super+D 121 *** Window Manager Tweaks 122 **** Accessibility 123 - [X] Hide title of windows when maximized 124 **** Compositor 125 - [ ] Show shadows under… 126 *** Terminal 127 **** General 128 - Scrolling 129 - [ ] Scroll on output 130 - Scrollbar is: Disabled 131 - [X] Unlimited scrollback 132 **** Appearance 133 - Font 134 - [X] Use system font 135 - Opening New Windows 136 - [ ] Display menubar in new windows 137 **** Advanced 138 - Shortcuts 139 - [X] Disable all menu access keys (such as Alt+f) /for readline/ 140 - [X] Disable menu shortcut key (F10 by default) /for htop & 141 wavemon/ 142 - [X] Disable help window shortcut key (F1 by default) /for htop & 143 wavemon/ 144 - Misc 145 - [X] Automatically copy selection to clipboard 146 *** Keyboard 147 **** Application shortcuts 148 - emacs: Super+E 149 - exo-open --launch FileManager: Super+F 150 - exo-open --launch TerminalEmulator: Super+T 151 - exo-open --launch WebBrowser: Super+W 152 - xfce4-popup-whiskermenu: Alt+F1 153 - xfce4-screenshooter: Print 154 - xfce4-screenshooter --fullscreen: Shift+Print 155 - xfce4-screenshooter --region: Control+Print 156 - xfce4-screenshooter --window: Super+Print 157 - xfce4-session-logout: Super+X 158 - xflock4: Super+L 159 *** Mouse and Touchpad 160 **** Devices 161 - =… Touchpad= 162 - Touchpad 163 - [X] Tap touchpad to click 164 *** Power Manager 165 **** System 166 - On battery / Plugged in 167 - When laptop lid is closed: Suspend 168 *** Removable Drives and Media 169 **** Storage 170 - [X] Mount removable drives when hot-plugged 171 - [X] Mount removable media when inserted 172 173 ** Setup more stuff 174 *** lightdm 175 Show my account on startup: 176 #+begin_src conf 177 # /usr/share/lightdm/lightdm.conf.d/99_custom.conf 178 [Seat:*] 179 greeter-hide-users=false 180 #+end_src 181 *** system groups 182 #+begin_src sh 183 groups=( 184 adm # Access /var/log journals. 185 dialout # Sync my phone. 186 ) 187 for g in ${groups[@]} 188 do 189 sudo adduser ${USER} ${g} 190 done 191 #+end_src 192 * Live reactions (Buster) 193 ** groundwork 194 Using instructions from <https://wiki.debian.org/Firmware>. 195 *** Get netinst image from <https://www.debian.org/CD/netinst/> 196 *** Get firmware archive from <https://cdimage.debian.org/cdimage/unofficial/non-free/firmware/stable/current/> 197 So that the installer can use the wireless network card. Extract all 198 .deb files to a top-level =firmware= folder on a USB key. 199 *** Shrink the MS partition 200 Had to "optimize the disk", otherwise some free space remained 201 unavailable. 202 ** installer 203 Everything went smoothly: 204 - if the USB key holding the firmware isn't plugged in, the installer 205 requests it, otherwise it finds the firmware automatically; 206 - Secure Boot supported transparently; 207 - dual-booting too. 208 ** package repositories 209 Non-free repositories automatically added during the installation, 210 because of the WiFi firmware I presume. 211 ** kernel issues 212 *** i915/glk_dmc_ver1_04.bin 213 kern.log: 214 #+begin_quote 215 i915 0000:00:02.0: firmware: failed to load i915/glk_dmc_ver1_04.bin (-2) 216 #+end_quote 217 apt install firmware-misc-nonfree seems to quiet that down. 218 *** i2c_hid_get_input: incomplete report 219 kern.log: 220 #+begin_quote 221 i2c_hid i2c-MSFT0001:00: i2c_hid_get_input: incomplete report (14/65535) 222 #+end_quote 223 About one message for every half-second spent touching the touchpad. 224 225 "Solved" with: 226 #+begin_src sh 227 $ apt install -t buster-backports \ 228 linux-image-amd64 \ 229 firmware-iwlwifi \ 230 firmware-misc-nonfree 231 #+end_src