summaryrefslogtreecommitdiff
path: root/nodes/core.yml
blob: 6a9cccb5f1c4d87768cf3952688b36e439e47961 (plain)
  1. # minimal system on LIME2 box
  2. # Targets: Debian 9 (Stretch) or newer
  3. # Depends: boxer-data (>= 10.5.14)
  4. classes:
  5.   - Console.setup
  6.   - Admin.apt.auto
  7.   - Admin.etc.functions
  8.   - Admin.tools
  9.   - Service.ssh
  10.   - Hardware.motherboard.olimex.lime2
  11.   - Hardware.harden
  12.   - Framework.pkg.apt.autoremove-suggests
  13.   - Framework.pkg.apt.avoid-removals
  14.   - Framework.pkg.apt.proxy.reset
  15.   - Framework.pkg.apt.source.reset
  16. parameters:
  17.   doc:
  18.     gateway:
  19.       pkg:
  20.         - include network management service NetworkManager
  21.       tweak:
  22.         - reset root account rcfiles from skeleton
  23.         - limit video buffers (freeing memory for general use)
  24.         - use HDMI (not serial portas initial boot console
  25.         - (re)set ethernet devices to use dhcpand mDNS
  26.         - enable Domain name (DNSservice systemd-resolved
  27.         - use Cloudflare (not Googlefallback DNS resolvers
  28.         - enable multicast DNS
  29.         - enable Network Time (NTPservice systemd-timesyncd
  30.         - use static IPs as fallback with NTP to avoid DNSSEC deadlock
  31.   pkg:
  32.     - iproute2
  33.     - iw
  34.     - wpasupplicant
  35.     - modemmanager
  36.     - sudo
  37.     - whiptail
  38.   pkg-avoid:
  39.     - apparmor
  40.     - shared-mime-info
  41.     - xauth
  42.   tweak:
  43.     - >
  44.       files=".bash_logout .bashrc .profile";\
  45.        for file in $files; do \
  46.         cp -f "/target/etc/skel/$file" "/target/root/$file";\
  47.        done;\
  48.        echo '' >> /target/root/.profile;\
  49.        echo 'mesg n || true' >> /target/root/.profile
  50.     - >
  51.       _setappendvar /target/etc/default/flash-kernel \
  52.        LINUX_KERNEL_CMDLINE_DEFAULTS \
  53.        '"sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16"'
  54.     - >
  55.       file=/target/etc/flash-kernel/bootscript/bootscr.sunxi;\
  56.        _backup "$file";\
  57.        sed -i -r -e '2asetenv console tty0\''n' "$file"
  58.     - >
  59.       file=/target/etc/systemd/network/90-dhcp.network;\
  60.        _backup "$file";\
  61.        echo '[Match]' > "$file";\
  62.        echo 'Name=ethenwl*' >> "$file";\
  63.        echo '' >> "$file";\
  64.        echo '[Network]' >> "$file";\
  65.        echo 'DHCP=yes' >> "$file"
  66.     - systemctl enable systemd-networkd
  67.     - >
  68.       dir=/target/etc/systemd/resolved.conf.d;\
  69.        mkdir -p "$dir";\
  70.         file="$dir/local.conf";\
  71.         echo '[Resolve]' > "$file";\
  72.         echo 'FallbackDNS=1.1.1.1 1.0.0.1 2606:4700:4700::1111,2606:4700:4700::1001' >> "$file";\
  73.         echo 'MulticastDNS=yes' >> "$file"
  74.     - systemctl enable systemd-resolved
  75.     - >
  76.       ln -sfT ../run/systemd/resolve/stub-resolv.conf \
  77.        /target/etc/resolv.conf
  78.     - >
  79.       dir=/target/etc/systemd/timesyncd.conf.d;\
  80.        mkdir -p "$dir";\
  81.         file="$dir/local.conf";\
  82.         echo '[Time]' > "$file";\
  83.         echo '# include static IPs (once expanded from former) to avoid DNSSEC deadlock' >> "$file";\
  84.         echo 'FallbackNTP=2.debian.pool.ntp.org 195.137.195.251 158.248.189.11 193.104.228.123 195.137.195.252 2001:ac8:37::40 2001:67c:28c8:12::123 2a00:1b70:1200:1::123 2001:67c:564::12' >> "$file"
  85.     - systemctl enable systemd-timesyncd