summaryrefslogtreecommitdiff
path: root/nodes/desktop.yml
blob: b7ed6838a886d2e62568ed98f2a8b3c02da1aa66 (plain)
  1. # minimal desktop on LIME2 box
  2. # Targets: Debian 9 (Stretch) or newer
  3. # Depends: boxer-data (>= 10.5.14)
  4. classes:
  5.   - Console
  6.   - Console.mouse
  7.   - Console.editor.vim
  8.   - Admin.etc.functions
  9.   - Admin
  10.   - Admin.apt.auto
  11.   - Admin.apt.auto.upgrade
  12.   - Admin.apt.auto.all
  13.   - Desktop
  14.   - Desktop.chat
  15.   - Desktop.terminal.lxde
  16.   - Service.scheduler.systemd
  17.   - Hardware.motherboard.olimex.lime2
  18.   - Hardware.harden
  19.   - Framework.localization.limit
  20.   - Framework.media.gstreamer.avoid
  21.   - Framework.pkg.apt.autoremove-suggests
  22.   - Framework.pkg.apt.avoid-removals
  23.   - Framework.pkg.apt.aptitude.advance-on-action
  24.   - Framework.pkg.apt.aptitude.list-suite
  25.   - Framework.pkg.apt.proxy.reset
  26.   - Framework.pkg.apt.source.reset
  27. parameters:
  28.   doc:
  29.     gateway:
  30.       pkg:
  31.         - include network management service NetworkManager
  32.         - include Network Time (NTPservice Chrony
  33.         - include bandwidth-saving remote shell service MoSH
  34.         - include Pidgin plugin for Matrix protocol
  35.         - include chat client Gajim
  36.         - include font Terminus
  37.         - include font Hack
  38.         - include font Notohinted families
  39.         - include emoji font SymbolA
  40.       tweak:
  41.         - limit video buffers (freeing memory for general use)
  42.         - use HDMI (not serial portas initial boot console
  43.         - (re)set ethernet devices to use dhcpand mDNS
  44.         - enable Domain name (DNSservice systemd-resolved
  45.         - use Cloudflare (not Googlefallback DNS resolvers
  46.         - enable multicast DNS
  47.         - use static IPs as fallback with NTP to avoid DNSSEC deadlock
  48.         - tell urxvt to use 24pt fontsTerminus 32pt or indic Noto Sans
  49.         - tell urxvt to omit scrollbar
  50.         - adapt default settings for console file manager Midnight Commander
  51.   pkg:
  52.     - chrony
  53.     - iproute2
  54.     - iw
  55.     - wpasupplicant
  56.     - modemmanager
  57.     - wifi-radar
  58.     - mosh
  59.     - debconf-utils
  60.     - iftop
  61.     - locales
  62.     - sudo
  63.     - gajim
  64.     - purple-matrix
  65.     - xfonts-terminus
  66.     - fonts-hack-otf
  67.     - fonts-noto-hinted
  68.     - fonts-symbola
  69.     - rxvt-unicode
  70.   tweak:
  71.     - >
  72.       _setappendvar /target/etc/default/flash-kernel \
  73.        LINUX_KERNEL_CMDLINE_DEFAULTS \
  74.        '"sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16"'
  75.     - >
  76.       file=/target/etc/flash-kernel/bootscript/bootscr.sunxi;\
  77.        _backup "$file";\
  78.        sed -i -r -e '2asetenv console tty0\''n' "$file"
  79.     - >
  80.       file=/target/etc/systemd/network/90-dhcp.network;\
  81.        _backup "$file";\
  82.        echo '[Match]' > "$file";\
  83.        echo 'Name=ethenwl*' >> "$file";\
  84.        echo '' >> "$file";\
  85.        echo '[Network]' >> "$file";\
  86.        echo 'DHCP=yes' >> "$file";\
  87.        echo 'IPv6PrivacyExtensions=' >> "$file"
  88.     - systemctl enable systemd-networkd
  89.     - >
  90.       dir=/target/etc/systemd/resolved.conf.d;\
  91.        mkdir -p "$dir";\
  92.         file="$dir/local.conf";\
  93.         echo '[Resolve]' > "$file";\
  94.         echo 'FallbackDNS=1.1.1.1 1.0.0.1 2606:4700:4700::1111,2606:4700:4700::1001' >> "$file";\
  95.         echo 'MulticastDNS=yes' >> "$file"
  96.     - systemctl enable systemd-resolved
  97.     - >
  98.       ln -sfT ../run/systemd/resolve/stub-resolv.conf \
  99.        /target/etc/resolv.conf
  100.     - >
  101.       file=/target/etc/chrony/chrony.conf;\
  102.        _backup "$file";\
  103.        echo 'pool 2.debian.pool.ntp.org iburst' > "$file";\
  104.        echo '# include static IPs (once expanded from above) to avoid DNSSEC deadlock' >> "$file";\
  105.        echo 'server 195.137.195.251 iburst' >> "$file";\
  106.        echo 'server 158.248.189.11 iburst' >> "$file";\
  107.        echo 'server 193.104.228.123 iburst' >> "$file";\
  108.        echo 'server 195.137.195.252 iburst' >> "$file";\
  109.        echo 'server 2001:ac8:37::40 iburst' >> "$file";\
  110.        echo 'server 2001:67c:28c8:12::123 iburst' >> "$file";\
  111.        echo 'server 2a00:1b70:1200:1::123 iburst' >> "$file";\
  112.        echo 'server 2001:67c:564::12 iburst' >> "$file"
  113.     - >
  114.       _setappendline /target/etc/X11/Xresources/local-font-terminus \
  115.        'Rxvt*font: terminus-32,xft:Noto Sans Devanagari:pixelsize=32:Noto Sans Malayalam:pixelsize=32:Noto Sans Kannada:pixelsize=32:'
  116.     - >
  117.       _setappendline /target/etc/X11/Xresources/local-font-terminus \
  118.        'Rxvt*boldFont: terminus-bold-32,xft:Noto Sans Devanagari:bold:pixelsize=32:Noto Sans Malayalam:bold:pixelsize=32:Noto Sans Kannada:bold:pixelsize=32:'
  119.     - >
  120.       _setappendline /target/etc/X11/Xresources/local-font-terminus \
  121.        'Rxvt*italicFont: xft:Hack:italic:pixelsize=32,xft:Noto Sans Devanagari:italic:pixelsize=32:Noto Sans Malayalam:italic:pixelsize=32:Noto Sans Kannada:italic:pixelsize=32:'
  122.     - >
  123.       _setappendline /target/etc/X11/Xresources/local-font-terminus \
  124.        'Rxvt*boldItalicFont: xft:Hack:bold:italic:pixelsize=32,xft:Noto Sans Devanagari:bold:italic:pixelsize=32:Noto Sans Malayalam:bold:italic:pixelsize=32:Noto Sans Kannada:bold:italic:pixelsize=32:'
  125.     - >
  126.       _setappendline /target/etc/X11/Xresources/local-tweaks \
  127.        'Rxvt*scrollBar: False'
  128.     - >
  129.       file=/target/etc/mc/mc.ini;\
  130.        _backup "$file";\
  131.        echo '[Midnight-Commander]' "$file";\
  132.        echo 'auto_save_setup=false' >> "$file";\
  133.        echo 'use_internal_view=true' >> "$file";\
  134.        echo 'use_internal_edit=true' >> "$file";\
  135.        echo 'num_history_items_recorded=200' >> "$file";\
  136.        echo 'editor_option_save_mode=false' >> "$file";\
  137.        echo 'editor_show_right_margin=false' >> "$file";\
  138.        echo 'skin=dark' >> "$file";\
  139.        echo '' >> "$file";\
  140.        echo '[Panels]' >> "$file";\
  141.        echo 'navigate_with_arrows=true' >> "$file";\
  142.        echo '' >> "$file";\
  143.        echo '[Layout]' >> "$file";\
  144.        echo 'message_visible=false' >> "$file";\
  145.        echo 'menubar_visible=false' >> "$file"