CI / flake (push) Skipped
CI / flake (pull_request) Successful in 4m21s
The docs-site build syncs this repo's README.md and docs/ into the site tree; nothing else is copied. All prose apart from the README therefore lived outside the sync and never appeared on https://docs.lyrapup.pet/nixfiles/, and the one page that did publish carried 18 link targets that resolved to nothing. Moves: home/README.md -> docs/shell.md home/KEYBINDINGS.md -> docs/keybindings.md hosts/<Name>/README.md -> docs/hosts/<name>.md docs/.pages and docs/hosts/.pages give the awesome-pages plugin an explicit order; new pages are picked up by the trailing '...' without an edit. Links are rewritten so a single URL is correct in both Gitea and the published site: absolute Gitea source URLs for .nix files and directories, relative links between pages under docs/, and absolute docs.lyrapup.pet URLs from the root README, which the build republishes at a different depth from the rest of the tree. In-code comments that pointed at a moved README are updated to the new path. The README gains a Documentation section covering the sync contract and the linking rules, and CLAUDE.md carries the short version so future edits do not reintroduce unsynced pages or dead links. Verified by reproducing the docs-site assembly locally against its pinned toolchain (mkdocs 1.6.1, mkdocs-material 9.7.7, awesome-pages 2.10.1): pages render at the URLs used above and in the declared order.
56 lines
2.4 KiB
Nix
56 lines
2.4 KiB
Nix
# ThinkPad T400 (NixOS). Shared laptop options live in ../../modules/laptop.nix;
|
|
# only host-specific settings are here. Install notes (boot variants, GPU,
|
|
# partitions): see ../../docs/hosts/t400.md.
|
|
{ config, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
# Boot: import exactly ONE, matching the firmware currently flashed.
|
|
# Stock Lenovo BIOS and coreboot+SeaBIOS both use boot-bios.nix.
|
|
./boot-bios.nix
|
|
# ./boot-coreboot-grub.nix # coreboot with the GRUB payload (config-only GRUB)
|
|
# ./boot-coreboot-uefi.nix # coreboot with the Tianocore/edk2 UEFI payload
|
|
# # (systemd-boot; carries its own ESP mount)
|
|
];
|
|
|
|
networking.hostName = "T400-NixOS";
|
|
|
|
console.font = "Lat2-Terminus16";
|
|
|
|
# Low-RAM host (4 GiB max): a compressed RAM swap reduces disk paging.
|
|
zramSwap.enable = true;
|
|
|
|
# sshd (daemon, port 22, key-only policy) comes from ../../modules/ssh.nix;
|
|
# the firewall itself is enabled in laptop.nix with a default-deny policy.
|
|
|
|
# Intel Core 2 (Penryn) microcode. Redistributable firmware (enabled in
|
|
# workstation.nix) supplies the iwlwifi blobs (Intel WiFi Link 5100/5300) and
|
|
# the radeon firmware needed by the discrete GPU below.
|
|
hardware.cpu.intel.updateMicrocode = true;
|
|
|
|
# Battery longevity: cap charging to 75-80%. tlp itself comes from the
|
|
# nixos-hardware lenovo-thinkpad profile; tp_smapi supplies the threshold
|
|
# sysfs on this 2008-era ThinkPad (kernel-native natacpi is too new for it).
|
|
boot.kernelModules = [ "tp_smapi" ];
|
|
boot.extraModulePackages = [ config.boot.kernelPackages.tp_smapi ];
|
|
services.tlp.settings = {
|
|
START_CHARGE_THRESH_BAT0 = 75;
|
|
STOP_CHARGE_THRESH_BAT0 = 80;
|
|
};
|
|
|
|
# This T400 has the optional discrete GPU fitted: an ATI Mobility Radeon HD
|
|
# 3470 (RV620), driven by the open `radeon` KMS driver. Load it in the initrd
|
|
# for early modesetting (clean Sway/Wayland start); firmware comes from
|
|
# enableRedistributableFirmware above.
|
|
#
|
|
# The T400 has switchable graphics (this discrete GPU + the Intel GMA
|
|
# 4500MHD). Select "Discrete" in the firmware's graphics setting so only the
|
|
# ATI is live; if you instead run "Integrated", the Intel i915 driver takes
|
|
# over with no extra config and `radeon` simply stays idle.
|
|
boot.initrd.kernelModules = [ "radeon" ];
|
|
|
|
# See `man configuration.nix` / the stateVersion docs before changing.
|
|
system.stateVersion = "26.05";
|
|
}
|