diff --git a/README.md b/README.md index 792bf34..79b1695 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,10 @@ sanitizer-assisted test runs, `perf`, FlameGraph, and systemd user scopes. ├── atuin/ # Atuin configuration ├── gitui/ # GitUI key bindings ├── kitty/ # Kitty settings and color themes +├── mako/ # Notification settings ├── nvim/ # Neovim configuration and plugin lockfile +├── waybar/ # Compact Hyprland status bar and power menu +├── wofi/ # Application launcher with icons └── wallpapers/ # Desktop wallpapers ``` @@ -86,11 +89,58 @@ Before using this configuration on another machine, regenerate or replace `nixos/hosts/nixos/hardware-configuration.nix` and adjust the host name, user, graphics driver, and `system.stateVersion` as appropriate. +## Screen locking + +The initial SDDM login screen uses a matching Qt 6 theme in `sddm/`, packaged +by `nixos/modules/login-theme.nix`. Its assets and ProFont are included in +the theme package so they are available before a user session starts. +It supports username/password entry, desktop session selection, and power +actions. Apply with `nixos-rebuild switch`; the theme appears at the next +login. Avoid restarting the display manager during an active session. + +Hyprlock uses `hypr/hyprlock.conf` and the existing wallpaper assets for a +blurred, two-column lock screen with ProFont, a clock, and live system status. +Press `Super+L` or choose **Lock** in the Waybar power menu. Hypridle handles +session lock requests and locks before suspend; no idle timeout is configured. +The NixOS Hyprlock module supplies its PAM authentication configuration. + +## Home Manager + +Home Manager is integrated into the NixOS flake and uses the same pinned +Nixpkgs input. The user configuration lives in `nixos/home/hhhh.nix`. +It manages `atuin`, `gitui`, `hypr`, `kitty`, `mako`, `nvim`, `waybar`, and +`wofi` under `~/.config`. + +These directories link to `~/Git/Custom-environment` through +`mkOutOfStoreSymlink`, so edits in the repository are available immediately. +Reload or restart the affected application to pick up configuration changes. +Keep the repository at this location, or adjust `repo` in the user module. + +Apply Home Manager changes together with the system configuration: + +```bash +sudo nixos-rebuild switch --flake .#nixos +``` + +On activation, conflicting configuration files or links are backed up with +the `.hm-backup` suffix; links already pointing to the same content can be +adopted without a backup. Existing backups are preserved; move an old +backup aside if it blocks activation. Keep `home.stateVersion` at the version +used when first enabling Home Manager. + ## Installation -Clone the repository, install the tools listed above using your system package -manager, and link the configuration files into their expected locations. For -example: +On NixOS, clone the repository into the location expected by Home Manager, +then apply the flake: + +```bash +git clone git@github.com:Claucdan/Custom-environment.git ~/Git/Custom-environment +cd ~/Git/Custom-environment +sudo nixos-rebuild switch --flake .#nixos +``` + +On other distributions, install the tools using your system package manager +and link the configuration directories manually: ```bash git clone git@github.com:Claucdan/Custom-environment.git @@ -98,8 +148,11 @@ cd Custom-environment ln -sfn "$PWD/nvim" "$HOME/.config/nvim" ln -sfn "$PWD/kitty" "$HOME/.config/kitty" +ln -sfn "$PWD/mako" "$HOME/.config/mako" ln -sfn "$PWD/atuin" "$HOME/.config/atuin" ln -sfn "$PWD/gitui" "$HOME/.config/gitui" +ln -sfn "$PWD/waybar" "$HOME/.config/waybar" +ln -sfn "$PWD/wofi" "$HOME/.config/wofi" ``` Review `.bashrc` before sourcing or linking it: some aliases, paths, and helper