dendritic: first succesfull rebuild

This commit is contained in:
2026-05-24 11:38:11 +02:00
parent 30e8029a6b
commit edc8d51491
5 changed files with 72 additions and 175 deletions
+1
View File
@@ -24,6 +24,7 @@
import-tree.url = "github:vic/import-tree"; # imports ./modules recursively
};
outputs = inputs @ { flake-parts, ... }:
#outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} (inputs.import-tree ./modules);
flake-parts.lib.mkFlake { inherit inputs; }
({
flake = let
+50 -48
View File
@@ -6,8 +6,14 @@
};
modules = with self.nixosModules; [
#inputs.home-manager.nixosModules.home-manager
inputs.home-manager.nixosModules.default
#inputs.home-manager.nixosModules.default
# keep this alphabetically organised
home-manager-laptop
laptop
{ nixpkgs.pkgs = self.pkgs; }
anki
audioAndMedia
autoCleanup-laptop
@@ -25,12 +31,10 @@ inputs.home-manager.nixosModules.default
games
hardware-configuration-laptop
hardwareUtils-laptop
home-manager-laptop
hyprland
IO
kdrive
latex
laptop
ly
mullvad
networking
@@ -42,21 +46,53 @@ inputs.home-manager.nixosModules.default
udev
user
];};
flake.homeConfigurations.tomasr = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
flake.nixosModules.laptop = { ... }: {
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.11"; # Did you read the comment?
/*#home-manager.users.tomasr = self.home.Configurations.tomasr;
#home-manager.nixosModule.home-manager.users.tomasr = self.homeConfigurations.tomasr;
home-manager.users.tomasr = {
imports = [
self.homeModules.tomasr
];
};*/
};
flake.nixosModules.home-manager-laptop = { pkgs, ... }: {
imports = [
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
];
# Warning. Git is used in case I break everything up. It already saved me once
environment.systemPackages = [ pkgs.git ];
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
# system = "x86_64-linux";
#specialArgs = {
# inherit (self) pkgs pkgs-unstable;
#};
extraSpecialArgs = {
pkgs-unstable =
import inputs.nixpkgs-unstable {
system = "x86_64-linux";
#inherit (self) pkgs-unstable;
pkgs-unstable = self.pkgs-unstable;
inherit self;
};
};
modules = with self.homeModules; [
users.users.tomasr = {
isNormalUser = true;
#shell = pkgs.zsh;
};
home-manager.users.tomasr = self.homeModules.tomasrModule;
};
# we shouldn't use homeConfigurations as it makes a standalone home-manager config
flake.homeModules.tomasrModule = { ... }: {
imports = with self.homeModules; [
inputs.caelestia-shell.homeManagerModules.default
anki
caelestia
cursor
eza
fastfetch
@@ -74,46 +110,12 @@ inputs.home-manager.nixosModules.default
sbb-tui
ssh
thunderbird
tomasr
#tomasr
vivify
zoxide
zsh
zsh-laptop
];
};
flake.nixosModules.laptop = { ... }: {
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.11"; # Did you read the comment?
#home-manager.users.tomasr = self.home.Configurations.tomasr;
#home-manager.nixosModule.home-manager.users.tomasr = self.homeConfigurations.tomasr;
home-manager.users.tomasr = {
imports = [
self.homeModules.tomasr
];
};
};
flake.nixosModules.home-manager-laptop = { pkgs, ... }: {
imports = [
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
];
# Warning. Git is used in case I break everything up. It already saved me once
environment.systemPackages = [ pkgs.git ];
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
};
flake.homeModules.tomasr = { ... }: {
imports = [
inputs.caelestia-shell.homeManagerModules.default
];
home.username = "tomasr";
home.homeDirectory = "/home/tomasr";
-120
View File
@@ -1,120 +0,0 @@
}[[{ inputs, self, ...}: {
flake.nixosConfigurations.laptop = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit (self) pkgs pkgs-unstable;
};
modules = with self.nixosModules; [
# keep this alphabetically organised
anki
audioAndMedia
autoCleanup-laptop
autoUpdate-laptop
battery-laptop
bluetooth
bootloader-laptop
browsers
caelestia
development
documentation
disk
disk-laptop
fonts
games
hardware-configuration-laptop
hardwareUtils-laptop
home-manager-laptop
hyprland
IO
kdrive
latex
laptop
ly
mullvad
networking
notifications
office
#ollama
otherUtils
printer
udev
user
];
flake.homeConfiguration.tomasr = inputs.home-manager.lib.homeManagerConfiguration {
system = "x86_64-linux";
specialArgs = {
inherit (self) pkgs pkgs-unstable;
};
modules = with self.homeModules; [
anki
cursor
eza
fastfetch
git
gtk
hyprland
hyprland-laptop
kitty
librewolf
mullvad
neovim
oh-my-zsh
ripgrep
rofi
sbb-tui
ssh
thunderbird
tomasr
vivify
zoxide
zsh
zsh-laptop
];
};
flake.nixosModules.laptop = { ... }: {
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.11"; # Did you read the comment?
home-manager.users.tomasr = self.homeModules.tomasr;
};
flake.nixosModules.home-manager-laptop = { ... }: {
imports = [
inputs.home-manager.nixosModules.default # import official home-manager NixOS module
];
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
};
flake.homeModules.tomasr = { ... }: {
imports = [
inputs.caelestia-shell.homeManagerModules.default
];
home.username = "tomasr";
home.homeDirectory = "/home/tomasr";
home.sessionVariables = {
EDITOR = "neovim";
TERMINAL = "kitty";
};
# Required for Home Manager
home.stateVersion = "25.11"; # match your Home Manager release
# This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes.
#
# You should not change this value, even if you update Home Manager. If you do
# want to update the value, then make sure to first check the Home Manager
# release notes.
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
};
}
+10
View File
@@ -5,3 +5,13 @@ For example, to use a newer package version that is still not in nixpkgs-unstabl
Some rules about package naming:
* If it is a custom derivation of a package, end with `ManuallyDerived`
* If it is a script, start with `custom-`. The executable, package name (and file name if it is the only thing in this nix file) must be equal.
If perSystem needs `pkgs-unstable` pass it manually with
```
{ self, ... }: {
perSystem = { pkgs, ...}:
let
pkgs-unstable = self.pkgs-unstable;
in
```
+6 -2
View File
@@ -1,5 +1,9 @@
{ ... }: {
perSystem = { pkgs, pkgs-unstable, ...}: {
{ self, ... }: {
perSystem = { pkgs, ...}:
let
pkgs-unstable = self.pkgs-unstable;
in
{ # perSystem doesnt like pkgs-unstable we must input it globally
packages.dejaManuallyDerived = pkgs-unstable.buildGoModule (finalAttrs: {
pname = "deja";
version = "0.2.6";