Compare commits
15 Commits
be1f305207
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
53768f944e
|
|||
|
463ae390de
|
|||
|
bbb1edf8c3
|
|||
|
6bd40ea2f8
|
|||
|
002a3da231
|
|||
|
fc25c630dd
|
|||
|
62b5c50bfb
|
|||
|
6726127aed
|
|||
|
3571635616
|
|||
|
c2afc4d5ac
|
|||
|
9abb5ea152
|
|||
|
c8641c369b
|
|||
|
f202924393
|
|||
|
a8dcdeef92
|
|||
|
2f806f21e5
|
111
flake.lock
generated
111
flake.lock
generated
@@ -1,15 +1,34 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"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": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749154018,
|
"lastModified": 1756679287,
|
||||||
"narHash": "sha256-gjN3j7joRvT3a8Zgcylnd4NFsnXeDBumqiu4HmY1RIg=",
|
"narHash": "sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB+gTQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "7aae0ee71a17b19708b93b3ed448a1a0952bf111",
|
"rev": "07fc025fe10487dd80f2ec694f1cd790e752d0e8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -21,11 +40,11 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750431636,
|
"lastModified": 1757103352,
|
||||||
"narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=",
|
"narHash": "sha256-PtT7ix43ss8PONJ1VJw3f6t2yAoGH+q462Sn8lrmWmk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712",
|
"rev": "11b2a10c7be726321bb854403fdeec391e798bf0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -36,57 +55,69 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749024892,
|
"lastModified": 1760105160,
|
||||||
"narHash": "sha256-OGcDEz60TXQC+gVz5sdtgGJdKVYr6rwdzQKuZAJQpCA=",
|
"narHash": "sha256-oYYalpFIVeDolg/zpkPkKk8mBuvnj/lUE3/K7OuTOwk=",
|
||||||
"owner": "NixOS",
|
"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",
|
"repo": "nixpkgs",
|
||||||
"rev": "8f1b52b04f2cb6e5ead50bd28d76528a2f0380ef",
|
"rev": "5d91ff97e777cd2bfb8cb108907e49abcea939f4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "transcaffeine",
|
||||||
"ref": "nixos-25.05",
|
"ref": "nexus/3.81.1",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"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": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751271578,
|
"lastModified": 1760252326,
|
||||||
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
"narHash": "sha256-5v32B25kSE++E+KtP4DO687r/AlWL9qOlOjtYyfcDSw=",
|
||||||
"owner": "NixOS",
|
"rev": "66e5020bfe0af40ffa127426f8405edbdadbb40b",
|
||||||
"repo": "nixpkgs",
|
"type": "tarball",
|
||||||
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
|
"url": "https://releases.nixos.org/nixos/unstable-small/nixos-25.11pre876242.66e5020bfe0a/nixexprs.tar.xz"
|
||||||
"type": "github"
|
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"type": "tarball",
|
||||||
"ref": "nixos-unstable",
|
"url": "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz"
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1750259320,
|
|
||||||
"narHash": "sha256-H8J4H2XCIMEJ5g6fZ179QfQvsc2dUqhqfBjC8RAHNRY=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "9ba04bda9249d5d5e5238303c9755de5a49a79c5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-25.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"dotfiles": "dotfiles",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-forked": "nixpkgs-forked",
|
||||||
|
"nixpkgs-local": "nixpkgs-local",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
17
flake.nix
17
flake.nix
@@ -1,9 +1,20 @@
|
|||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
nixpkgs.url = "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz";
|
||||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz";
|
||||||
home-manager.url = "github:nix-community/home-manager/release-25.05";
|
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";
|
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, ... }: {
|
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }: {
|
||||||
|
|||||||
@@ -20,7 +20,6 @@
|
|||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_6_13;
|
|
||||||
boot.kernelParams = [
|
boot.kernelParams = [
|
||||||
# disable panel self refresh for i915
|
# disable panel self refresh for i915
|
||||||
#"i915.enable_psr=0"
|
#"i915.enable_psr=0"
|
||||||
|
|||||||
@@ -13,19 +13,30 @@
|
|||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems = {
|
||||||
{ device = "/dev/disk/by-uuid/34d0b26e-8d69-4388-bf94-67e44669cdd8";
|
"/" = {
|
||||||
|
device = "/dev/disk/by-uuid/34d0b26e-8d69-4388-bf94-67e44669cdd8";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
"/boot" = {
|
||||||
fileSystems."/boot" =
|
device = "/dev/disk/by-uuid/3B4B-0489";
|
||||||
{ device = "/dev/disk/by-uuid/3B4B-0489";
|
|
||||||
fsType = "vfat";
|
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 =
|
swapDevices = [
|
||||||
[ { device = "/dev/disk/by-uuid/22e2d822-7f26-4246-a28e-b10a116f2818"; }
|
{
|
||||||
];
|
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";
|
boot.initrd.luks.devices."coffee".device = "/dev/disk/by-uuid/e24d653d-df2d-472b-97c3-653ee3169b1c";
|
||||||
|
|
||||||
|
|||||||
@@ -13,14 +13,6 @@
|
|||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Europe/Amsterdam";
|
time.timeZone = "Europe/Amsterdam";
|
||||||
|
|
||||||
# Select internationalisation properties.
|
|
||||||
# i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
# console = {
|
|
||||||
# font = "Lat2-Terminus16";
|
|
||||||
# keyMap = "us";
|
|
||||||
# useXkbConfig = true; # use xkb.options in tty.
|
|
||||||
# };
|
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
users.mutableUsers = false;
|
users.mutableUsers = false;
|
||||||
users.users.root.hashedPassword = "$y$j9T$i4Yx7PqpLH9bPaNb4SVLm/$dv2gVHCHiRZv.Y00rbNx4QeIExunnfHp57WEnh8qLF1";
|
users.users.root.hashedPassword = "$y$j9T$i4Yx7PqpLH9bPaNb4SVLm/$dv2gVHCHiRZv.Y00rbNx4QeIExunnfHp57WEnh8qLF1";
|
||||||
@@ -32,7 +24,25 @@
|
|||||||
tree
|
tree
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
users.users.bob = {
|
||||||
|
isNormalUser = true;
|
||||||
|
createHome = false;
|
||||||
|
group = "builders";
|
||||||
|
description = "Bob the builder";
|
||||||
|
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPMChr3iWCl4ahoVsm/UyUQut9p0QIfqTsncsDkgBoRU carbon"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
users.groups.builders = {};
|
||||||
|
|
||||||
|
nix.settings.trusted-users = [ "remotebuild" ];
|
||||||
|
|
||||||
|
services.nscd = {
|
||||||
|
enableNsncd = true;
|
||||||
|
workerThreads = 2;
|
||||||
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -42,4 +42,21 @@
|
|||||||
usbutils
|
usbutils
|
||||||
pciutils
|
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
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,4 +2,5 @@
|
|||||||
imports = [ inputs.home-manager.nixosModules.home-manager ];
|
imports = [ inputs.home-manager.nixosModules.home-manager ];
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||||
}
|
}
|
||||||
|
|||||||
26
users/transcaffeine/home-manager/darkman.nix
Normal file
26
users/transcaffeine/home-manager/darkman.nix
Normal 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}";
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -1,19 +1,12 @@
|
|||||||
{ lib, pkgs, ... }: {
|
{ lib, pkgs, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
|
./darkman.nix
|
||||||
./git.nix
|
./git.nix
|
||||||
./gnupg.nix
|
./gnupg.nix
|
||||||
];
|
];
|
||||||
home.stateVersion = "24.11";
|
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;
|
home.preferXdgDirectories = true;
|
||||||
programs.firefox = import ./firefox.nix { inherit lib; };
|
programs.firefox = import ./firefox.nix { inherit lib; };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,7 @@
|
|||||||
{ lib, config, ... }:
|
{ inputs, lib, config, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
repo = (builtins.fetchGit {
|
dotfileRepo = inputs.dotfiles;
|
||||||
url = "https://git.finally.coffee/transcaffeine/dotfiles.git";
|
|
||||||
ref = "main";
|
|
||||||
shallow = true;
|
|
||||||
});
|
|
||||||
utils = import ../../../utils { inherit lib; };
|
utils = import ../../../utils { inherit lib; };
|
||||||
in {
|
in {
|
||||||
programs.gpg = let
|
programs.gpg = let
|
||||||
@@ -16,7 +12,7 @@ in {
|
|||||||
}) (
|
}) (
|
||||||
builtins.filter (value: value != "") (
|
builtins.filter (value: value != "") (
|
||||||
lib.splitString "\n" (
|
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 != "") (
|
builtins.filter (v: v != "") (
|
||||||
lib.splitString "\n" (
|
lib.splitString "\n" (
|
||||||
lib.readFile (repo.outPath + "/config/gnupg/gpg-agent.conf")
|
lib.readFile (dotfileRepo.outPath + "/config/gnupg/gpg-agent.conf")
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user