summaryrefslogtreecommitdiff
path: root/guides/sysadmin/machines/hirondell/install.org
diff options
context:
space:
mode:
Diffstat (limited to 'guides/sysadmin/machines/hirondell/install.org')
-rw-r--r--guides/sysadmin/machines/hirondell/install.org231
1 files changed, 231 insertions, 0 deletions
diff --git a/guides/sysadmin/machines/hirondell/install.org b/guides/sysadmin/machines/hirondell/install.org
new file mode 100644
index 0000000..20a749b
--- /dev/null
+++ b/guides/sysadmin/machines/hirondell/install.org
@@ -0,0 +1,231 @@
+* Step-by-step recap (Bullseye)
+** Setup keyboard
+Turn CapsLock key into Control (cf. keyboard(5)):
+- add =ctrl:nocaps= to =XKBOPTIONS= in =/etc/default/keyboard=
+- run =udevadm trigger --subsystem-match=input --action=change=
+- run =setupcon= in a TTY
+** Install stuff
+*** Distro-provided packages
+#+begin_src sh
+packages=(
+ # To clone & update dotfiles.
+ git
+ # Look & feel.
+ elementary-xfce-icon-theme greybird-gtk-theme
+ # Enable volume management with Thunar.
+ gvfs-backends gvfs-fuse
+ # System monitoring.
+ htop powertop wavemon
+ # Documentation:
+ # - info pages,
+ gcc-doc make-doc tar-doc info
+ # - manpages,
+ manpages-dev manpages-posix manpages-posix-dev
+ # - text & HTML pages.
+ git-doc python3-doc
+ # Writing helpers.
+ aspell-fr verbiste wordnet
+ # CLI helpers.
+ mlocate ripgrep vim
+ # Fonts.
+ fonts-noto-color-emoji
+ # Miscellaneous applications.
+ ffmpeg gimp pandoc terminator vlc
+)
+sudo apt install ${packages[@]}
+#+end_src
+*** Latest and greatest
+**** Firefox
+- download most recent release from from <https://www.mozilla.org>
+- unpack it =$SOMEWHERE=
+- make sure everyone can find it:
+
+#+begin_src sh
+$ sudo update-alternatives --install $(which x-www-browser) x-www-browser \
+ ${SOMEWHERE}/firefox/firefox 1
+$ sudo update-alternatives --set x-www-browser ${SOMEWHERE}/firefox/firefox
+$ ln -s ${SOMEWHERE}/firefox/firefox ~/.local/bin/
+#+end_src
+
+- paste backuped profile into =~/.mozilla/firefox/${profile}=
+**** Symbola
+- grab the archive from <http://users.teilar.gr/~g1951d/>
+- drop the TTF files in =~/.local/share/fonts=
+- run =fc-cache -fv=
+**** youtube-dl
+#+begin_src sh
+$ sudo apt install python3-pip
+$ pip3 install --user youtube-dl
+#+end_src
+** Setup dotfiles
+*** Clone versioned dotfiles
+- create new SSH key for GitLab
+- follow instructions in dotfiles README
+*** Tweak non-versioned dotfiles
+- set EMAIL in =.profile=
+- add =~/.local/bin= to PATH
+- copy =.profile= to =.xsessionrc=
+- in =.bashrc=
+ - enable globstar and autocd
+ - uncomment grep and ls aliases
+ - source =~/.bash_prompt=
+** Setup Emacs
+- clone from Savannah
+- =apt build-dep emacs=
+- =apt install libgconf2-dev libwebkit2gtk-4.0-dev=
+ (optional build dependencies for ≥27)
+- comment out .emacs below =(load custom-file)=
+#+begin_src elisp
+(package-refresh-contents)
+(package-install-selected-packages)
+#+end_src
+** Setup XFCE
+*** Appearance
+**** Style
+Greybird-dark
+**** Icons
+elementary Xfce darker
+**** Fonts
+- Rendering
+ - [X] Enable anti-aliasing
+ - Hinting: Slight
+ - Sub-pixel order: RGB (trusting the [[http://www.lagom.nl/lcd-test/subpixel.php][Lagom LCD test pages]])
+*** File Manager
+**** View
+- Side Pane: Tree
+- View as Detailed List
+*** Panel
+**** Top panel
+***** Items
+****** Whisker Menu
+****** Window Buttons
+****** Separator
+****** Workspace Switcher
+****** Separator
+****** Status Tray Plugin
+****** PulseAudio Plugin
+****** Power Manager Plugin
+- Show label: None
+****** Notification Plugin
+****** Separator
+****** Clock
+**** Bottom panel
+Delete.
+*** Window Manager
+**** Keyboard
+- Move window to previous workspace: Shift+Super+Left
+- Move window to next workspace: Shift+Super+Right
+- Tile window to the left: Super+Left
+- Tile window to the right: Super+Right
+- Show desktop: Super+D
+*** Window Manager Tweaks
+**** Accessibility
+- [X] Hide title of windows when maximized
+**** Compositor
+- [ ] Show shadows under…
+*** Terminal
+**** General
+- Scrolling
+ - [ ] Scroll on output
+ - Scrollbar is: Disabled
+ - [X] Unlimited scrollback
+**** Appearance
+- Font
+ - [X] Use system font
+- Opening New Windows
+ - [ ] Display menubar in new windows
+**** Advanced
+- Shortcuts
+ - [X] Disable all menu access keys (such as Alt+f) /for readline/
+ - [X] Disable menu shortcut key (F10 by default) /for htop &
+ wavemon/
+ - [X] Disable help window shortcut key (F1 by default) /for htop &
+ wavemon/
+- Misc
+ - [X] Automatically copy selection to clipboard
+*** Keyboard
+**** Application shortcuts
+- emacs: Super+E
+- exo-open --launch FileManager: Super+F
+- exo-open --launch TerminalEmulator: Super+T
+- exo-open --launch WebBrowser: Super+W
+- xfce4-popup-whiskermenu: Alt+F1
+- xfce4-screenshooter: Print
+- xfce4-screenshooter --fullscreen: Shift+Print
+- xfce4-screenshooter --region: Control+Print
+- xfce4-screenshooter --window: Super+Print
+- xfce4-session-logout: Super+X
+- xflock4: Super+L
+*** Mouse and Touchpad
+**** Devices
+- =… Touchpad=
+ - Touchpad
+ - [X] Tap touchpad to click
+*** Power Manager
+**** System
+- On battery / Plugged in
+ - When laptop lid is closed: Suspend
+*** Removable Drives and Media
+**** Storage
+- [X] Mount removable drives when hot-plugged
+- [X] Mount removable media when inserted
+
+** Setup more stuff
+*** lightdm
+Show my account on startup:
+#+begin_src conf
+# /usr/share/lightdm/lightdm.conf.d/99_custom.conf
+[Seat:*]
+greeter-hide-users=false
+#+end_src
+*** system groups
+#+begin_src sh
+groups=(
+ adm # Access /var/log journals.
+ dialout # Sync my phone.
+)
+for g in ${groups[@]}
+do
+ sudo adduser ${USER} ${g}
+done
+#+end_src
+* Live reactions (Buster)
+** groundwork
+Using instructions from <https://wiki.debian.org/Firmware>.
+*** Get netinst image from <https://www.debian.org/CD/netinst/>
+*** Get firmware archive from <https://cdimage.debian.org/cdimage/unofficial/non-free/firmware/stable/current/>
+So that the installer can use the wireless network card. Extract all
+.deb files to a top-level =firmware= folder on a USB key.
+*** Shrink the MS partition
+Had to "optimize the disk", otherwise some free space remained
+unavailable.
+** installer
+Everything went smoothly:
+- if the USB key holding the firmware isn't plugged in, the installer
+ requests it, otherwise it finds the firmware automatically;
+- Secure Boot supported transparently;
+- dual-booting too.
+** package repositories
+Non-free repositories automatically added during the installation,
+because of the WiFi firmware I presume.
+** kernel issues
+*** i915/glk_dmc_ver1_04.bin
+kern.log:
+#+begin_quote
+i915 0000:00:02.0: firmware: failed to load i915/glk_dmc_ver1_04.bin (-2)
+#+end_quote
+apt install firmware-misc-nonfree seems to quiet that down.
+*** i2c_hid_get_input: incomplete report
+kern.log:
+#+begin_quote
+i2c_hid i2c-MSFT0001:00: i2c_hid_get_input: incomplete report (14/65535)
+#+end_quote
+About one message for every half-second spent touching the touchpad.
+
+"Solved" with:
+#+begin_src sh
+$ apt install -t buster-backports \
+ linux-image-amd64 \
+ firmware-iwlwifi \
+ firmware-misc-nonfree
+#+end_src