Compare commits

..

13 Commits

Author SHA1 Message Date
53768f944e chore(users/transcaffeine): use xdg folders (xdg.enable = true) 2025-10-14 18:48:40 +02:00
463ae390de chore(affogato): extra partitions for /home and /nix/store 2025-10-14 18:48:01 +02:00
bbb1edf8c3 update(flake/dotfiles): use newest version which includes kde-theme-switching 2025-10-14 18:47:12 +02:00
6bd40ea2f8 update(flake): switch nixpkgs-unstable input to flake-compatible channel tarballs 2025-10-12 11:45:07 +02:00
002a3da231 update(flake): nixpkgs-25.05, switch to flake-compatible channel tarballs 2025-10-12 11:43:33 +02:00
fc25c630dd chore(flake): remove unlocked input 'dotfiles-local' preventing flake locking 2025-10-12 11:41:56 +02:00
62b5c50bfb feat(users/transcaffeine): configure darkman using home-manager from dotfiles 2025-09-07 15:08:40 +02:00
6726127aed chore(users/transcaffeine): replace impure fetchgit with raw flake input 2025-09-07 13:45:30 +02:00
3571635616 feat(profiles/home-manager): supply special arg 'inputs' to home-manager 2025-09-07 13:34:25 +02:00
c2afc4d5ac update(flake): add dotfiles repo as raw input 2025-09-07 13:33:43 +02:00
9abb5ea152 update(flake): nixpkgs inputs (local, fork, unstable) 2025-09-07 11:15:17 +02:00
c8641c369b update: flake inputs 2025-09-06 17:28:40 +02:00
f202924393 chore(profiles/base): replace default bash prompt (PS1) to not contain a newline 2025-09-06 17:12:26 +02:00
8 changed files with 154 additions and 70 deletions

111
flake.lock generated
View File

@@ -1,15 +1,34 @@
{
"nodes": {
"dotfiles": {
"flake": false,
"locked": {
"lastModified": 1757262504,
"narHash": "sha256-8Hxs9m+vu/DwZtorQOFCGTld0Wlz+QKLFPjLX7J/JDU=",
"ref": "main",
"rev": "7c9567c880f414054fc427d8a2bb0c3a048104ee",
"revCount": 14,
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles.git"
},
"original": {
"ref": "main",
"type": "git",
"url": "https://git.finally.coffee/transcaffeine/dotfiles.git"
}
},
"home-manager": {
"inputs": {
"nixpkgs": "nixpkgs"
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1753592768,
"narHash": "sha256-oV695RvbAE4+R9pcsT9shmp6zE/+IZe6evHWX63f2Qg=",
"lastModified": 1756679287,
"narHash": "sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB+gTQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "fc3add429f21450359369af74c2375cb34a2d204",
"rev": "07fc025fe10487dd80f2ec694f1cd790e752d0e8",
"type": "github"
},
"original": {
@@ -21,11 +40,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1754564048,
"narHash": "sha256-dz303vGuzWjzOPOaYkS9xSW+B93PSAJxvBd6CambXVA=",
"lastModified": 1757103352,
"narHash": "sha256-PtT7ix43ss8PONJ1VJw3f6t2yAoGH+q462Sn8lrmWmk=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113",
"rev": "11b2a10c7be726321bb854403fdeec391e798bf0",
"type": "github"
},
"original": {
@@ -36,57 +55,69 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1753345091,
"narHash": "sha256-CdX2Rtvp5I8HGu9swBmYuq+ILwRxpXdJwlpg8jvN4tU=",
"owner": "NixOS",
"lastModified": 1760105160,
"narHash": "sha256-oYYalpFIVeDolg/zpkPkKk8mBuvnj/lUE3/K7OuTOwk=",
"rev": "5da4a26309e796daa7ffca72df93dbe53b8164c7",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/25.05/nixos-25.05.810995.5da4a26309e7/nixexprs.tar.xz"
},
"original": {
"type": "tarball",
"url": "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz"
}
},
"nixpkgs-forked": {
"locked": {
"lastModified": 1751998018,
"narHash": "sha256-JHVI60B3/cN3a0JDfslramsO056ig5wMQTGmgO9eLWQ=",
"owner": "transcaffeine",
"repo": "nixpkgs",
"rev": "3ff0e34b1383648053bba8ed03f201d3466f90c9",
"rev": "5d91ff97e777cd2bfb8cb108907e49abcea939f4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.05",
"owner": "transcaffeine",
"ref": "nexus/3.81.1",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-local": {
"locked": {
"lastModified": 1757168979,
"narHash": "sha256-abp5DZtyu8idvMbPbEpBfdsxmhnNo/ud8hZ0KsbvAqs=",
"ref": "refs/heads/cinny/4.9.1",
"rev": "fc2627665df4f815f2409effcaf7bb0f427e303c",
"revCount": 855244,
"type": "git",
"url": "file:/home/transcaffeine/git/transcaffeine/nixpkgs"
},
"original": {
"type": "git",
"url": "file:/home/transcaffeine/git/transcaffeine/nixpkgs"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1755186698,
"narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c",
"type": "github"
"lastModified": 1760252326,
"narHash": "sha256-5v32B25kSE++E+KtP4DO687r/AlWL9qOlOjtYyfcDSw=",
"rev": "66e5020bfe0af40ffa127426f8405edbdadbb40b",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable-small/nixos-25.11pre876242.66e5020bfe0a/nixexprs.tar.xz"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1755078291,
"narHash": "sha256-Hu/gTDoi4uy6TAKISPHQusSMy8U6xUbLSDjKBYdhDIY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3385ca0cd7e14c1a1eb80401fe011705ff012323",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
"type": "tarball",
"url": "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz"
}
},
"root": {
"inputs": {
"dotfiles": "dotfiles",
"home-manager": "home-manager",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs",
"nixpkgs-forked": "nixpkgs-forked",
"nixpkgs-local": "nixpkgs-local",
"nixpkgs-unstable": "nixpkgs-unstable"
}
}

View File

@@ -1,11 +1,20 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
# nixpkgs-unstable.url = "github:transcaffeine/nixpkgs/nexus/3.81.1";
# nixpkgs-unstable.url = "git+file:/home/transcaffeine/git/transcaffeine/nixpkgs";
home-manager.url = "github:nix-community/home-manager/release-25.05";
nixpkgs.url = "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz";
nixpkgs-unstable.url = "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz";
nixpkgs-forked.url = "github:transcaffeine/nixpkgs/nexus/3.81.1";
nixpkgs-local = {
url = "git+file:/home/transcaffeine/git/transcaffeine/nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware.url = "github:NixOS/nixos-hardware";
dotfiles = {
url = "git+https://git.finally.coffee/transcaffeine/dotfiles.git?ref=main";
flake = false;
};
};
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }: {

View File

@@ -13,19 +13,30 @@
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/34d0b26e-8d69-4388-bf94-67e44669cdd8";
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/34d0b26e-8d69-4388-bf94-67e44669cdd8";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/3B4B-0489";
"/boot" = {
device = "/dev/disk/by-uuid/3B4B-0489";
fsType = "vfat";
};
"/home" = {
device = "/dev/disk/by-uuid/a836d70d-ee4d-4973-b3c0-2888d0a60095";
fsType = "btrfs";
};
"/nix/store" = {
device = "/dev/disk/by-uuid/720dd78e-7070-4d5f-a550-cd03bdde93bd";
fsType = "xfs";
};
};
swapDevices =
[ { device = "/dev/disk/by-uuid/22e2d822-7f26-4246-a28e-b10a116f2818"; }
];
swapDevices = [
{
device = "/dev/disk/by-uuid/22e2d822-7f26-4246-a28e-b10a116f2818";
}
];
boot.initrd.luks.devices."coffee".device = "/dev/disk/by-uuid/e24d653d-df2d-472b-97c3-653ee3169b1c";

View File

@@ -42,4 +42,21 @@
usbutils
pciutils
];
programs.bash.promptInit = ''
# Provide a nice prompt if the terminal supports it.
if [ "$TERM" != "dumb" ] || [ -n "$INSIDE_EMACS" ]; then
PROMPT_COLOR="38;5;253m"
PATH_PROMPT_COLOR="38;5;199m"
((UID)) && PROMPT_COLOR="1;32m"
if [ -n "$INSIDE_EMACS" ]; then
# Emacs term mode doesn't support xterm title escape sequence (\e]0;)
PS1="[\[\033[$PROMPT_COLOR\]\u\033[0m@\H:\033[1m\033[$PATH_PROMPT_COLOR\w\a\]\[\033[0m\]]\$ "
else
PS1="[\[\033[$PROMPT_COLOR\]\u\033[0m@\H:\033[1m\033[$PATH_PROMPT_COLOR\w\a\]\[\033[0m\]]\$ "
fi
if test "$TERM" = "xterm"; then
PS1="\[\033]2;\h:\u:\w\007\]$PS1"
fi
fi
'';
}

View File

@@ -2,4 +2,5 @@
imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; };
}

View File

@@ -0,0 +1,26 @@
{
inputs,
lib,
...
}:
let
genAttrs' = xs: f: lib.listToAttrs(lib.map f xs);
in {
services.darkman = {
enable = true;
settings = {
lat = 49.0800;
lng = 8.23300;
portal = true;
dbusserver = true;
};
};
home.file = genAttrs' [ "local/share/light-mode.d" "local/share/dark-mode.d" ] (
path:
lib.nameValuePair (".${path}") {
source = lib.concatStringsSep "/" [ inputs.dotfiles path ];
target = ".${path}";
}
);
}

View File

@@ -1,19 +1,12 @@
{ lib, pkgs, ... }: {
imports = [
./darkman.nix
./git.nix
./gnupg.nix
];
home.stateVersion = "24.11";
services.darkman = {
enable = true;
settings = {
lat = 49.0800;
lng = 8.23300;
portal = true;
dbusserver = true;
};
};
xdg.enable = true;
home.preferXdgDirectories = true;
programs.firefox = import ./firefox.nix { inherit lib; };
}

View File

@@ -1,11 +1,7 @@
{ lib, config, ... }:
{ inputs, lib, config, ... }:
let
repo = (builtins.fetchGit {
url = "https://git.finally.coffee/transcaffeine/dotfiles.git";
ref = "main";
shallow = true;
});
dotfileRepo = inputs.dotfiles;
utils = import ../../../utils { inherit lib; };
in {
programs.gpg = let
@@ -16,7 +12,7 @@ in {
}) (
builtins.filter (value: value != "") (
lib.splitString "\n" (
lib.readFile (repo.outPath + "/config/gnupg/gpg.conf")
lib.readFile (dotfileRepo + "/config/gnupg/gpg.conf")
)
)
)
@@ -36,7 +32,7 @@ in {
}) (
builtins.filter (v: v != "") (
lib.splitString "\n" (
lib.readFile (repo.outPath + "/config/gnupg/gpg-agent.conf")
lib.readFile (dotfileRepo.outPath + "/config/gnupg/gpg-agent.conf")
)
)
)