style: align comments with the project conventions
Apply a codebase-wide comment audit against the comment conventions: split banned semicolons and multi-sentence lines into one sentence per line, cut cross-file and history narration, trim file-top headers to a single purpose line, and drop verbosity that did not earn its place. Prose docs (CLAUDE.md, install.md) get the same one-sentence-per-line and no-semicolon treatment.
This commit is contained in:
@@ -35,8 +35,7 @@ in
|
||||
Snippets = false;
|
||||
};
|
||||
|
||||
# An ad and content blocker, the operator's password manager, and a
|
||||
# video sponsor-skipper. All three are self-contained web extensions.
|
||||
# An ad blocker, a password manager, and a video sponsor-skipper.
|
||||
ExtensionSettings = {
|
||||
"uBlock0@raymondhill.net" = forceInstalled "ublock-origin";
|
||||
"78272b6fa58f4a1abaac99321d503a20@proton.me" = forceInstalled "proton-pass";
|
||||
@@ -65,16 +64,15 @@ in
|
||||
};
|
||||
|
||||
settings = {
|
||||
# Scale the UI and page by a fixed factor. Left at auto (-1),
|
||||
# Firefox reads the panel's 1.5x and inflates its whole chrome on
|
||||
# this display while point-sized apps stay put; a shade under that
|
||||
# brings it into line without dropping to true 1:1, which reads too
|
||||
# small at this DPI.
|
||||
# Scale the UI and page by a fixed factor.
|
||||
# Left at auto (-1), Firefox reads the panel's 1.5x and inflates its
|
||||
# whole chrome while point-sized apps stay put.
|
||||
# A shade under that brings it into line without dropping to true
|
||||
# 1:1, which reads too small at this DPI.
|
||||
"layout.css.devPixelsPerPx" = "1.25";
|
||||
|
||||
# Auto-enable the sideloaded Firefox Color add-on that carries the
|
||||
# Nord chrome theme, which Firefox otherwise leaves disabled.
|
||||
# The functional extensions come through policy and are unaffected.
|
||||
# Auto-enable the sideloaded Firefox Color add-on carrying the Nord
|
||||
# chrome theme, which Firefox otherwise leaves disabled.
|
||||
"extensions.autoDisableScopes" = 0;
|
||||
|
||||
# Sponsored surfaces the policies above do not reach.
|
||||
@@ -103,9 +101,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
# Nord chrome from the shared Stylix scheme, against the one profile.
|
||||
# colorTheme recolours the toolbar and tabs, which the target does not do
|
||||
# on its own, through the Stylix-managed Firefox Color add-on.
|
||||
# Nord chrome for the one profile, applied through the Stylix-managed
|
||||
# Firefox Color add-on that colorTheme enables.
|
||||
stylix.targets.firefox = {
|
||||
enable = true;
|
||||
profileNames = [ "default" ];
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
# Idle management: hypridle locks on idle, powers the displays off, and locks
|
||||
# before every suspend, so an unattended session always lands at hyprlock.
|
||||
# hypridle: idle-triggered locking and display power management.
|
||||
let
|
||||
cfg = config.modules.desktop.hyprland.hypridle;
|
||||
user = config.user.name;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
# The Hyprland compositor, sourced from nixpkgs.
|
||||
# The Hyprland compositor.
|
||||
let
|
||||
cfg = config.modules.desktop.hyprland;
|
||||
user = config.user.name;
|
||||
@@ -63,12 +63,13 @@ in
|
||||
"$mod" = "SUPER";
|
||||
"$terminal" = "alacritty";
|
||||
|
||||
# Hand the cursor theme to the compositor directly. UWSM launches the
|
||||
# session without the shell profile that carries the pointer-cursor
|
||||
# variables, so without this Hyprland never sees a theme and falls back
|
||||
# to its built-in cursor. Bibata ships XCursor only; the hyprcursor
|
||||
# variables name the same theme, which Hyprland resolves through its
|
||||
# XCursor fallback.
|
||||
# Hand the cursor theme to the compositor directly.
|
||||
# UWSM launches the session without the shell profile that carries the
|
||||
# pointer-cursor variables, so without this Hyprland never sees a theme
|
||||
# and falls back to its built-in cursor.
|
||||
# Bibata ships XCursor only.
|
||||
# The hyprcursor variables name the same theme, which Hyprland resolves
|
||||
# through its XCursor fallback.
|
||||
env = lib.optionals (cursor != null) [
|
||||
"XCURSOR_THEME,${cursor.name}"
|
||||
"XCURSOR_SIZE,${toString cursor.size}"
|
||||
@@ -81,7 +82,7 @@ in
|
||||
# Caps is a second Escape.
|
||||
# Shift+Caps still toggles a real CapsLock.
|
||||
kb_options = "caps:escape_shifted_capslock";
|
||||
# Snappy: a short delay before repeat begins, then a fast repeat rate.
|
||||
# Snappy key repeat.
|
||||
repeat_delay = 250;
|
||||
repeat_rate = 45;
|
||||
accel_profile = "flat";
|
||||
@@ -156,8 +157,9 @@ in
|
||||
++ workspaceBinds;
|
||||
|
||||
# Volume and brightness keys repeat while held, each raising a popup
|
||||
# through the OSD client. Volume is capped at 100 percent; the client
|
||||
# floors brightness so a full hold cannot black the screen out.
|
||||
# through the OSD client.
|
||||
# Volume is capped at 100 percent.
|
||||
# The client floors brightness so a full hold cannot black the screen out.
|
||||
binde = [
|
||||
", XF86AudioRaiseVolume, exec, ${pkgs.swayosd}/bin/swayosd-client --output-volume raise --max-volume 100"
|
||||
", XF86AudioLowerVolume, exec, ${pkgs.swayosd}/bin/swayosd-client --output-volume lower"
|
||||
|
||||
@@ -4,13 +4,12 @@
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
# The lock screen: hyprlock, a session-lock client whose surface the compositor owns, so it survives a crash of the locker rather than exposing the session.
|
||||
# The lock screen: a hyprlock session-lock surface the compositor owns.
|
||||
let
|
||||
cfg = config.modules.desktop.hyprland.hyprlock;
|
||||
user = config.user.name;
|
||||
|
||||
# The hyprlock this module installs, so the keybind and the idle daemon lock
|
||||
# with one package and never split versions.
|
||||
# The hyprlock this module installs, used by the lock keybind below.
|
||||
hyprlock = "${config.home-manager.users.${user}.programs.hyprlock.package}/bin/hyprlock";
|
||||
in
|
||||
{
|
||||
@@ -30,7 +29,8 @@ in
|
||||
disable_loading_bar = true;
|
||||
};
|
||||
|
||||
# A centered password field; its colors are the Stylix target's.
|
||||
# A centered password field.
|
||||
# Its colors come from the Stylix hyprlock target.
|
||||
input-field = {
|
||||
size = "260, 52";
|
||||
rounding = 8;
|
||||
|
||||
@@ -16,14 +16,13 @@ in
|
||||
environment.systemPackages = [ pkgs.swayosd ];
|
||||
|
||||
# The udev rule chgrps each backlight's brightness node to `video` and adds
|
||||
# group write, so the server dims the panel without root. Membership below
|
||||
# grants the running session that access.
|
||||
# group write, so the server dims the panel without root.
|
||||
# Membership below grants the running session that access.
|
||||
services.udev.packages = [ pkgs.swayosd ];
|
||||
users.users.${user}.extraGroups = [ "video" ];
|
||||
|
||||
# The server draws the popups, so it runs for the whole graphical session.
|
||||
# Bound to the target uwsm activates, like the bar, rather than an
|
||||
# exec-once in the compositor config.
|
||||
# It binds to the target uwsm activates.
|
||||
home-manager.users.${user}.systemd.user.services.swayosd = {
|
||||
Unit = {
|
||||
Description = "SwayOSD on-screen display server";
|
||||
|
||||
@@ -10,8 +10,9 @@ in
|
||||
config = lib.mkIf cfg.enable {
|
||||
# The backend packages arrive with the compositor, so only the routing is set
|
||||
# here.
|
||||
# GTK is the default backend, and the three compositor-native requests go to
|
||||
# Hyprland.
|
||||
# Screen sharing, screenshots, and global shortcuts need the compositor's
|
||||
# own backend.
|
||||
# Everything else uses GTK.
|
||||
xdg.portal.config.common = {
|
||||
default = [ "gtk" ];
|
||||
"org.freedesktop.impl.portal.ScreenCast" = [ "hyprland" ];
|
||||
|
||||
@@ -15,9 +15,8 @@ let
|
||||
wl-copy = "${pkgs.wl-clipboard}/bin/wl-copy";
|
||||
xdgUserDir = "${pkgs.xdg-user-dirs}/bin/xdg-user-dir";
|
||||
|
||||
# satty is the annotation step, and its copy action is set to save as well,
|
||||
# so a single keystroke through it lands the shot in both the clipboard and a
|
||||
# file.
|
||||
# satty's copy action also saves, so one keystroke lands the shot in both the
|
||||
# clipboard and a file.
|
||||
capture =
|
||||
target:
|
||||
pkgs.writeShellScript "screenshot-${target}" ''
|
||||
@@ -46,8 +45,8 @@ in
|
||||
];
|
||||
|
||||
# Print with plain/Shift/Ctrl for region/window/full.
|
||||
# Super+L, the spec's chosen key, is already the hjkl focus and movement
|
||||
# bind, so screenshots take the Print key instead.
|
||||
# Super+L is already the hjkl focus and movement bind, so screenshots take
|
||||
# the Print key instead.
|
||||
wayland.windowManager.hyprland.settings.bind = [
|
||||
", Print, exec, ${capture "area"}"
|
||||
"SHIFT, Print, exec, ${capture "active"}"
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
# Alacritty as the desktop terminal, a lightweight GPU renderer that opens
|
||||
# fast on the laptop's integrated graphics.
|
||||
# Alacritty as the desktop terminal.
|
||||
let
|
||||
cfg = config.modules.desktop.terminal;
|
||||
user = config.user.name;
|
||||
|
||||
@@ -9,8 +9,7 @@ in
|
||||
options.modules.desktop.userdirs.enable = lib.mkEnableOption "XDG user directories";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
# enable writes ~/.config/user-dirs.dirs from the option defaults, which
|
||||
# xdg-user-dir then reads.
|
||||
# Write ~/.config/user-dirs.dirs from the option defaults.
|
||||
home-manager.users.${user}.xdg.userDirs.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user