format with alejandra

This commit is contained in:
Sean Kovacs 2025-12-24 11:29:41 -05:00
commit 28043aded9
Signed by: sckova
GPG key ID: 00F325187C68651A
35 changed files with 578 additions and 589 deletions

View file

@ -57,8 +57,7 @@
}; };
}; };
outputs = outputs = {
{
nixpkgs, nixpkgs,
nix-cachyos-kernel, nix-cachyos-kernel,
catppuccin, catppuccin,
@ -72,10 +71,8 @@
nixvim, nixvim,
apple-silicon, apple-silicon,
... ...
}: }: let
let mkNixosSystem = {
mkNixosSystem =
{
hostname, hostname,
system, system,
extraModules ? [], extraModules ? [],
@ -83,11 +80,13 @@
}: }:
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
inherit system; inherit system;
specialArgs = { specialArgs =
{
inherit catppuccin; inherit catppuccin;
} }
// extraSpecialArgs; // extraSpecialArgs;
modules = [ modules =
[
{ {
nixpkgs.overlays = [ nixpkgs.overlays = [
catppuccin-palette.overlays.default catppuccin-palette.overlays.default
@ -122,8 +121,7 @@
++ extraModules; ++ extraModules;
}; };
mkHomeConfig = mkHomeConfig = {
{
user, user,
hostname, hostname,
system, system,
@ -145,8 +143,7 @@
nixvim.homeModules.nixvim nixvim.homeModules.nixvim
]; ];
}; };
in in {
{
nixosConfigurations = { nixosConfigurations = {
peach = mkNixosSystem { peach = mkNixosSystem {
hostname = "peach"; hostname = "peach";

View file

@ -7,9 +7,7 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: }: {
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];

View file

@ -7,9 +7,7 @@
pkgs, pkgs,
modulesPath, modulesPath,
... ...
}: }: {
{
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];

View file

@ -1,9 +1,13 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = []; imports = [];
boot.initrd.availableKernelModules = ["ehci_pci" "xhci_pci" "usbhid" "sr_mod"]; boot.initrd.availableKernelModules = ["ehci_pci" "xhci_pci" "usbhid" "sr_mod"];

View file

@ -4,9 +4,7 @@
lib, lib,
types, types,
... ...
}: }: {
{
options = { options = {
catppuccinUpper = { catppuccinUpper = {
accent = lib.mkOption { accent = lib.mkOption {
@ -108,11 +106,9 @@
default = pkgs.noto-fonts-color-emoji; default = pkgs.noto-fonts-color-emoji;
}; };
}; };
cursor = cursor = let
let
attrName = config.catppuccin.flavor + config.catppuccinUpper.accent; attrName = config.catppuccin.flavor + config.catppuccinUpper.accent;
in in {
{
name = lib.mkOption { name = lib.mkOption {
type = lib.types.str; type = lib.types.str;
readOnly = true; readOnly = true;
@ -173,7 +169,7 @@
# gui applications # gui applications
input-leap input-leap
libreoffice-qt-fresh libreoffice-qt-fresh
nur.repos.forkprince.helium-nightly # nur.repos.forkprince.helium-nightly
bitwarden-desktop bitwarden-desktop
qbittorrent qbittorrent
@ -234,15 +230,24 @@
gtk = { gtk = {
enable = true; enable = true;
colorScheme = if config.userOptions.isDark then "dark" else "light"; colorScheme =
if config.userOptions.isDark
then "dark"
else "light";
theme = { theme = {
package = pkgs.kdePackages.breeze-gtk; package = pkgs.kdePackages.breeze-gtk;
name = if config.userOptions.isDark then "Breeze-Dark" else "Breeze"; name =
if config.userOptions.isDark
then "Breeze-Dark"
else "Breeze";
}; };
iconTheme = { iconTheme = {
name = if config.userOptions.isDark then "Colloid-Dark" else "Colloid-Light"; name =
if config.userOptions.isDark
then "Colloid-Dark"
else "Colloid-Light";
package = pkgs.colloid-icon-theme; package = pkgs.colloid-icon-theme;
}; };
@ -286,13 +291,11 @@
fixed = "\"${config.userOptions.fontMono.name},${toString config.userOptions.fontMono.size}\""; fixed = "\"${config.userOptions.fontMono.name},${toString config.userOptions.fontMono.size}\"";
general = "\"${config.userOptions.fontSans.name},${toString config.userOptions.fontSans.size}\""; general = "\"${config.userOptions.fontSans.name},${toString config.userOptions.fontSans.size}\"";
}; };
ColorScheme = ColorScheme = let
let
c = pkgs.catppuccin.bare.${config.catppuccin.flavor}; c = pkgs.catppuccin.bare.${config.catppuccin.flavor};
accent = c.${config.catppuccin.accent}; accent = c.${config.catppuccin.accent};
mkColors = roles: builtins.concatStringsSep ", " (map (r: "#ff${r}") roles); mkColors = roles: builtins.concatStringsSep ", " (map (r: "#ff${r}") roles);
in in {
{
active_colors = mkColors [ active_colors = mkColors [
c.text c.text
c.surface0 c.surface0

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
home.packages = with pkgs; [ home.packages = with pkgs; [
(prismlauncher.override { (prismlauncher.override {
jdks = [ jdks = [

View file

@ -1,5 +1,7 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
home.packages = with pkgs; [openmw]; home.packages = with pkgs; [openmw];
} }

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }: {
config,
let pkgs,
...
}: let
catppuccin-discord-src = pkgs.fetchFromGitHub { catppuccin-discord-src = pkgs.fetchFromGitHub {
owner = "catppuccin"; owner = "catppuccin";
repo = "discord"; repo = "discord";
@ -79,8 +81,7 @@ let
height = 1071; height = 1071;
}; };
}; };
in in {
{
home.packages = with pkgs; [vesktop]; home.packages = with pkgs; [vesktop];
home.file.".config/vesktop/settings.json" = { home.file.".config/vesktop/settings.json" = {

View file

@ -5,9 +5,7 @@
config, config,
lib, lib,
... ...
}: }: {
{
home.file.".mozilla/firefox/default/chrome/theme" = { home.file.".mozilla/firefox/default/chrome/theme" = {
source = ./chrome/theme; source = ./chrome/theme;
force = true; force = true;

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }: {
config,
let pkgs,
...
}: let
catppuccin-mpv = pkgs.fetchFromGitHub { catppuccin-mpv = pkgs.fetchFromGitHub {
owner = "catppuccin"; owner = "catppuccin";
repo = "mpv"; repo = "mpv";
@ -14,8 +16,7 @@ let
${catppuccin-mpv}/themes/${config.catppuccin.flavor}/${config.catppuccin.accent}.conf \ ${catppuccin-mpv}/themes/${config.catppuccin.flavor}/${config.catppuccin.accent}.conf \
> $out/mpv.conf > $out/mpv.conf
''; '';
in in {
{
home.packages = with pkgs; [ home.packages = with pkgs; [
(mpv.override { (mpv.override {
scripts = with mpvScripts; [ scripts = with mpvScripts; [

View file

@ -3,16 +3,13 @@
pkgs, pkgs,
spicetify-nix, spicetify-nix,
... ...
}: }: {
{
catppuccin = { catppuccin = {
accent = "blue"; accent = "blue";
flavor = "mocha"; flavor = "mocha";
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
# steam gtk theming # steam gtk theming
adwsteamgtk adwsteamgtk
@ -36,11 +33,9 @@
scale = 1.75; scale = 1.75;
}; };
programs.spicetify = programs.spicetify = let
let
spicePkgs = spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system}; spicePkgs = spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
in in {
{
enable = true; enable = true;
enabledExtensions = with spicePkgs.extensions; [ enabledExtensions = with spicePkgs.extensions; [

View file

@ -1,13 +1,14 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
catppuccin = { catppuccin = {
accent = "peach"; accent = "peach";
flavor = "mocha"; flavor = "mocha";
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
asahi-nvram asahi-nvram
asahi-bless asahi-bless
asahi-btsync asahi-btsync

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
catppuccin = { catppuccin = {
accent = "green"; accent = "green";
flavor = "mocha"; flavor = "mocha";

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
programs.ghostwriter = { programs.ghostwriter = {
enable = true; enable = true;
font = { font = {

View file

@ -3,9 +3,7 @@
pkgs, pkgs,
lib, lib,
... ...
}: }: {
{
systemd.user.sessionVariables = { systemd.user.sessionVariables = {
XCURSOR_THEME = config.userOptions.cursor.name; XCURSOR_THEME = config.userOptions.cursor.name;
XCURSOR_SIZE = toString config.userOptions.cursor.size; XCURSOR_SIZE = toString config.userOptions.cursor.size;

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }: {
config,
let pkgs,
...
}: let
catppuccin-btop = pkgs.fetchFromGitHub { catppuccin-btop = pkgs.fetchFromGitHub {
owner = "catppuccin"; owner = "catppuccin";
repo = "btop"; repo = "btop";
@ -15,8 +17,7 @@ let
cp ${catppuccin-btop}/themes/catppuccin_latte.theme $out/themes/ cp ${catppuccin-btop}/themes/catppuccin_latte.theme $out/themes/
cp ${catppuccin-btop}/themes/catppuccin_${config.catppuccin.flavor}.theme $out/themes/ cp ${catppuccin-btop}/themes/catppuccin_${config.catppuccin.flavor}.theme $out/themes/
''; '';
in in {
{
home.file.".config/btop" = { home.file.".config/btop" = {
source = mergedConfig; source = mergedConfig;
recursive = true; recursive = true;

View file

@ -1,5 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
home.packages = with pkgs; [kdePackages.qttools]; home.packages = with pkgs; [kdePackages.qttools];
programs.fish = { programs.fish = {

View file

@ -3,9 +3,7 @@
lib, lib,
pkgs, pkgs,
... ...
}: }: let
let
catppuccin-kitty = pkgs.fetchFromGitHub { catppuccin-kitty = pkgs.fetchFromGitHub {
owner = "catppuccin"; owner = "catppuccin";
repo = "kitty"; repo = "kitty";
@ -20,8 +18,7 @@ let
}/g' ${catppuccin-kitty}/themes/${config.catppuccin.flavor}.conf > \ }/g' ${catppuccin-kitty}/themes/${config.catppuccin.flavor}.conf > \
$out/${config.catppuccinUpper.flavor}${config.catppuccinUpper.accent}.conf $out/${config.catppuccinUpper.flavor}${config.catppuccinUpper.accent}.conf
''; '';
in in {
{
home.file.".config/kitty/themes" = { home.file.".config/kitty/themes" = {
source = mergedConfig; source = mergedConfig;
recursive = true; recursive = true;

View file

@ -1,6 +1,8 @@
{ pkgs, config, ... }:
{ {
pkgs,
config,
...
}: {
home.sessionVariables = { home.sessionVariables = {
EDITOR = "nvim"; EDITOR = "nvim";
}; };
@ -9,7 +11,7 @@
kdePackages.qtdeclarative kdePackages.qtdeclarative
prettier prettier
prettierd prettierd
nixfmt-rfc-style alejandra
stylua stylua
black black
]; ];
@ -96,7 +98,7 @@
formatters_by_ft = { formatters_by_ft = {
lua = ["stylua"]; lua = ["stylua"];
python = ["black"]; python = ["black"];
nix = [ "nixfmt" ]; nix = ["alejandra"];
javascript = ["prettier"]; javascript = ["prettier"];
css = ["prettier"]; css = ["prettier"];
json = ["prettier"]; json = ["prettier"];

View file

@ -1,14 +1,15 @@
{ config, pkgs, ... }: {
config,
let pkgs,
...
}: let
catppuccin-fuzzel = pkgs.fetchFromGitHub { catppuccin-fuzzel = pkgs.fetchFromGitHub {
owner = "catppuccin"; owner = "catppuccin";
repo = "fuzzel"; repo = "fuzzel";
rev = "0af0e26901b60ada4b20522df739f032797b07c3"; rev = "0af0e26901b60ada4b20522df739f032797b07c3";
sha256 = "sha256-XpItMGsYq4XvLT+7OJ9YRILfd/9RG1GMuO6J4hSGepg="; sha256 = "sha256-XpItMGsYq4XvLT+7OJ9YRILfd/9RG1GMuO6J4hSGepg=";
}; };
in in {
{
imports = [ imports = [
./niri.nix ./niri.nix
./noctalia.nix ./noctalia.nix

View file

@ -1,6 +1,8 @@
{ config, pkgs, ... }:
{ {
config,
pkgs,
...
}: {
programs.niri.package = pkgs.niri-unstable.overrideAttrs (old: { programs.niri.package = pkgs.niri-unstable.overrideAttrs (old: {
doCheck = false; doCheck = false;
}); });

View file

@ -3,9 +3,7 @@
config, config,
lib, lib,
... ...
}: }: let
let
# Get the actual color palettes # Get the actual color palettes
darkPalette = pkgs.catppuccin.${config.catppuccin.flavor}; darkPalette = pkgs.catppuccin.${config.catppuccin.flavor};
lightPalette = pkgs.catppuccin.latte; lightPalette = pkgs.catppuccin.latte;
@ -46,7 +44,9 @@ let
pname = "noctalia-shell-custom"; pname = "noctalia-shell-custom";
nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [pkgs.jq]; nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [pkgs.jq];
postPatch = (oldAttrs.postPatch or "") + '' postPatch =
(oldAttrs.postPatch or "")
+ ''
echo "Patching noctalia-shell with Cat-Custom theme..." echo "Patching noctalia-shell with Cat-Custom theme..."
echo " Dark: ${config.catppuccin.flavor} / Light: latte" echo " Dark: ${config.catppuccin.flavor} / Light: latte"
echo " Accent: ${config.catppuccin.accent}" echo " Accent: ${config.catppuccin.accent}"
@ -77,12 +77,13 @@ let
fi fi
''; '';
meta = oldAttrs.meta // { meta =
oldAttrs.meta
// {
description = "${oldAttrs.meta.description} (Cat-Custom: ${config.catppuccin.flavor}/${config.catppuccin.accent})"; description = "${oldAttrs.meta.description} (Cat-Custom: ${config.catppuccin.flavor}/${config.catppuccin.accent})";
}; };
}); });
in in {
{
programs.noctalia-shell = { programs.noctalia-shell = {
enable = true; enable = true;
package = customPackage; package = customPackage;

View file

@ -1,5 +1,8 @@
{ pkgs, config, ... }: {
let pkgs,
config,
...
}: let
bingWallpaperScript = pkgs.writeShellScript "bing-wallpaper" '' bingWallpaperScript = pkgs.writeShellScript "bing-wallpaper" ''
set -euo pipefail set -euo pipefail
@ -59,8 +62,7 @@ let
echo "Wallpaper downloaded and applied successfully." echo "Wallpaper downloaded and applied successfully."
''; '';
in in {
{
systemd.user.services.bing-wallpaper = { systemd.user.services.bing-wallpaper = {
Unit = { Unit = {
Description = "Download and set Bing wallpaper of the day"; Description = "Download and set Bing wallpaper of the day";

View file

@ -3,14 +3,10 @@
pkgs, pkgs,
lib, lib,
... ...
}: }: let
capitalize = str:
let
capitalize =
str:
(lib.toUpper (builtins.substring 0 1 str)) + (builtins.substring 1 (builtins.stringLength str) str); (lib.toUpper (builtins.substring 0 1 str)) + (builtins.substring 1 (builtins.stringLength str) str);
in in {
{
# home.sessionVariables = { # home.sessionVariables = {
# EDITOR = "code"; # EDITOR = "code";
# }; # };

View file

@ -1,9 +1,8 @@
final: prev: { final: prev: {
widevine-helium = widevine-helium =
if prev.stdenv.hostPlatform.system == "aarch64-linux" then if prev.stdenv.hostPlatform.system == "aarch64-linux"
prev.callPackage ./helium-browser/widevine-aarch64-linux.nix { } then prev.callPackage ./helium-browser/widevine-aarch64-linux.nix {}
else else null;
null;
# helium-browser = # helium-browser =
# prev.callPackage # prev.callPackage

View file

@ -5,9 +5,7 @@
copyDesktopItems, copyDesktopItems,
chromium, chromium,
writeShellScriptBin, writeShellScriptBin,
}: }: let
let
pname = "spotify-webapp"; pname = "spotify-webapp";
version = "1.0.0"; version = "1.0.0";
@ -25,7 +23,6 @@ let
--ozone-platform=wayland \ --ozone-platform=wayland \
"$@" "$@"
''; '';
in in
stdenv.mkDerivation { stdenv.mkDerivation {
inherit pname version; inherit pname version;

View file

@ -20,7 +20,6 @@
withPortAudio ? stdenv.hostPlatform.isDarwin, withPortAudio ? stdenv.hostPlatform.isDarwin,
withPulseAudio ? config.pulseaudio or stdenv.hostPlatform.isLinux, withPulseAudio ? config.pulseaudio or stdenv.hostPlatform.isLinux,
}: }:
rustPlatform.buildRustPackage (finalAttrs: { rustPlatform.buildRustPackage (finalAttrs: {
pname = "spotifyd"; pname = "spotifyd";
version = "0.4.2"; version = "0.4.2";

View file

@ -1,16 +1,13 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ {
config, config,
lib, lib,
pkgs, pkgs,
inputs, inputs,
... ...
}: }: {
{
nix.settings.experimental-features = [ nix.settings.experimental-features = [
"nix-command" "nix-command"
"flakes" "flakes"
@ -79,7 +76,6 @@
}; };
boot = { boot = {
plymouth = { plymouth = {
enable = true; enable = true;
}; };
@ -227,5 +223,4 @@
# Before changing this value read the documentation for this option # Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.05"; # Did you read the comment? system.stateVersion = "25.05"; # Did you read the comment?
} }

View file

@ -6,8 +6,7 @@
catppuccin, catppuccin,
nix-cachyos-kernel, nix-cachyos-kernel,
... ...
}: }: {
{
networking.hostName = "alien"; networking.hostName = "alien";
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [

View file

@ -4,8 +4,7 @@
lib, lib,
catppuccin, catppuccin,
... ...
}: }: {
{
networking.hostName = "peach"; networking.hostName = "peach";
boot.binfmt.emulatedSystems = [ boot.binfmt.emulatedSystems = [

View file

@ -4,8 +4,7 @@
lib, lib,
catppuccin, catppuccin,
... ...
}: }: {
{
networking.hostName = "vm-aarch64"; networking.hostName = "vm-aarch64";
boot.binfmt.emulatedSystems = [ boot.binfmt.emulatedSystems = [

View file

@ -1,6 +1,4 @@
{ pkgs, ... }: {pkgs, ...}: {
{
programs.bash = { programs.bash = {
interactiveShellInit = '' interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]

View file

@ -4,9 +4,7 @@
pkgs, pkgs,
lib, lib,
... ...
}: }: let
let
tailscaleWaitScript = pkgs.writeShellScript "tailscale-wait-for-ip" '' tailscaleWaitScript = pkgs.writeShellScript "tailscale-wait-for-ip" ''
echo "Waiting for tailscale0 to get an IP address..." echo "Waiting for tailscale0 to get an IP address..."
for i in {1..15}; do for i in {1..15}; do
@ -20,8 +18,7 @@ let
echo "Warning: tailscale0 did not get IP address within 15 seconds" echo "Warning: tailscale0 did not get IP address within 15 seconds"
exit 0 exit 0
''; '';
in in {
{
systemd.services.tailscaled = { systemd.services.tailscaled = {
serviceConfig = { serviceConfig = {
ExecStartPost = tailscaleWaitScript; ExecStartPost = tailscaleWaitScript;

View file

@ -3,15 +3,13 @@
lib, lib,
pkgs, pkgs,
... ...
}: }: {
{
nixpkgs.overlays = lib.mkIf (config.nixpkgs.hostPlatform.isLinux) [ nixpkgs.overlays = lib.mkIf (config.nixpkgs.hostPlatform.isLinux) [
(final: prev: { (final: prev: {
wrapFirefox = wrapFirefox = browser: opts: let
browser: opts: extraPrefs =
let (opts.extraPrefs or "")
extraPrefs = (opts.extraPrefs or "") + '' + ''
lockPref("media.gmp-widevinecdm.version", "system-installed"); lockPref("media.gmp-widevinecdm.version", "system-installed");
lockPref("media.gmp-widevinecdm.visible", true); lockPref("media.gmp-widevinecdm.visible", true);
lockPref("media.gmp-widevinecdm.enabled", true); lockPref("media.gmp-widevinecdm.enabled", true);
@ -23,7 +21,9 @@
widevineOutDir = "$out/gmp-widevinecdm/system-installed"; widevineOutDir = "$out/gmp-widevinecdm/system-installed";
in in
(prev.wrapFirefox browser (opts // {inherit extraPrefs;})).overrideAttrs (previousAttrs: { (prev.wrapFirefox browser (opts // {inherit extraPrefs;})).overrideAttrs (previousAttrs: {
buildCommand = previousAttrs.buildCommand + '' buildCommand =
previousAttrs.buildCommand
+ ''
mkdir -p "${widevineOutDir}" mkdir -p "${widevineOutDir}"
ln -s "${widevineCdmDir}/_platform_specific/linux_arm64/libwidevinecdm.so" "${widevineOutDir}/libwidevinecdm.so" ln -s "${widevineCdmDir}/_platform_specific/linux_arm64/libwidevinecdm.so" "${widevineOutDir}/libwidevinecdm.so"
ln -s "${widevineCdmDir}/manifest.json" "${widevineOutDir}/manifest.json" ln -s "${widevineCdmDir}/manifest.json" "${widevineOutDir}/manifest.json"