mirror of
https://github.com/tomasriveral/nixos.git
synced 2026-08-12 02:28:37 +02:00
dendritic: first succesfull rebuild
This commit is contained in:
@@ -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
|
||||
@@ -39,9 +40,9 @@
|
||||
import nixpkgsInput {
|
||||
inherit system;
|
||||
config.allowUnfreePredicate = mkUnfreePredicate;
|
||||
};
|
||||
pkgs = mkPkgs inputs.nixpkgs;
|
||||
pkgs-unstable = mkPkgs inputs.nixpkgs-unstable;
|
||||
};
|
||||
pkgs = mkPkgs inputs.nixpkgs;
|
||||
pkgs-unstable = mkPkgs inputs.nixpkgs-unstable;
|
||||
in {
|
||||
inherit pkgs pkgs-unstable;
|
||||
};
|
||||
|
||||
+52
-50
@@ -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. It‘s 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?
|
||||
|
||||
# system = "x86_64-linux";
|
||||
#specialArgs = {
|
||||
# inherit (self) pkgs pkgs-unstable;
|
||||
#};
|
||||
extraSpecialArgs = {
|
||||
pkgs-unstable =
|
||||
import inputs.nixpkgs-unstable {
|
||||
system = "x86_64-linux";
|
||||
};
|
||||
/*#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;
|
||||
|
||||
extraSpecialArgs = {
|
||||
#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. It‘s 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";
|
||||
|
||||
|
||||
@@ -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. It‘s 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;
|
||||
};
|
||||
}
|
||||
@@ -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
|
||||
```
|
||||
|
||||
@@ -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";
|
||||
|
||||
Reference in New Issue
Block a user