major refactor and reorg
This commit is contained in:
parent
f43b32286c
commit
e91cca9aeb
13 changed files with 614 additions and 591 deletions
72
flake.lock
generated
72
flake.lock
generated
|
@ -129,6 +129,25 @@
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"emacs-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1738686104,
|
||||||
|
"narHash": "sha256-PfG/bm33axdRPsi3nMB5ioOvq1xdJpdw+iptZVJVmE4=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "emacs-overlay",
|
||||||
|
"rev": "52f13caa3c3570bc59582578593b8fafd40f8aaa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "emacs-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fenix": {
|
"fenix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -489,16 +508,15 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736373539,
|
"lastModified": 1738667255,
|
||||||
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
"narHash": "sha256-sMMQb9NydZqQ/MvvtPp+Ny0W9P0Jk0moU7SrTBlO5Vo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
"rev": "7abcf59a365430b36f84eaa452a466b11e469e33",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-24.11",
|
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -950,7 +968,7 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725758175,
|
"lastModified": 1725758175,
|
||||||
|
@ -1042,23 +1060,39 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1738546358,
|
"lastModified": 1738574474,
|
||||||
"narHash": "sha256-nLivjIygCiqLp5QcL7l56Tca/elVqM9FG1hGd9ZSsrg=",
|
"narHash": "sha256-rvyfF49e/k6vkrRTV4ILrWd92W+nmBDfRYZgctOyolQ=",
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c6e957d81b96751a3d5967a0fd73694f303cc914",
|
"rev": "fecfeb86328381268e29e998ddd3ebc70bbd7f7c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-24.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1738546358,
|
||||||
|
"narHash": "sha256-nLivjIygCiqLp5QcL7l56Tca/elVqM9FG1hGd9ZSsrg=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c6e957d81b96751a3d5967a0fd73694f303cc914",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725103162,
|
"lastModified": 1725103162,
|
||||||
"narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
|
"narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
|
||||||
|
@ -1074,18 +1108,18 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1738574474,
|
"lastModified": 1738546358,
|
||||||
"narHash": "sha256-rvyfF49e/k6vkrRTV4ILrWd92W+nmBDfRYZgctOyolQ=",
|
"narHash": "sha256-nLivjIygCiqLp5QcL7l56Tca/elVqM9FG1hGd9ZSsrg=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "fecfeb86328381268e29e998ddd3ebc70bbd7f7c",
|
"rev": "c6e957d81b96751a3d5967a0fd73694f303cc914",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -1184,6 +1218,7 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"affinity-nix": "affinity-nix",
|
"affinity-nix": "affinity-nix",
|
||||||
|
"emacs-overlay": "emacs-overlay",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hypridle": "hypridle",
|
"hypridle": "hypridle",
|
||||||
"hyprlock": "hyprlock",
|
"hyprlock": "hyprlock",
|
||||||
|
@ -1194,8 +1229,7 @@
|
||||||
"niri": "niri",
|
"niri": "niri",
|
||||||
"nix-flatpak": "nix-flatpak",
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
|
||||||
"paperwm": "paperwm",
|
"paperwm": "paperwm",
|
||||||
"shikane": "shikane",
|
"shikane": "shikane",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
|
|
66
flake.nix
66
flake.nix
|
@ -3,11 +3,10 @@
|
||||||
inputs = {
|
inputs = {
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||||
|
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -32,6 +31,8 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
emacs-overlay.url = "github:nix-community/emacs-overlay";
|
||||||
|
|
||||||
kmonad = {
|
kmonad = {
|
||||||
url = "github:kmonad/kmonad?dir=nix";
|
url = "github:kmonad/kmonad?dir=nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
@ -88,20 +89,67 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {nixpkgs, home-manager, self, ... } @ inputs: {
|
outputs = {nixpkgs, home-manager, self, ... } @ inputs:
|
||||||
|
let
|
||||||
|
inherit (nixpkgs.lib) nixosSystem genAttrs replaceStrings;
|
||||||
|
inherit (nixpkgs.lib.filesystem) packagesFromDirectoryRecursive listFilesRecursive;
|
||||||
|
|
||||||
|
forAllSystems =
|
||||||
|
function:
|
||||||
|
genAttrs [
|
||||||
|
"x86_64-linux"
|
||||||
|
] (system: function nixpkgs.legacyPackages.${system});
|
||||||
|
|
||||||
|
nameOf = path: replaceStrings [ ".nix" ] [ "" ] (baseNameOf (toString path));
|
||||||
|
|
||||||
|
in
|
||||||
|
{
|
||||||
|
packages = forAllSystems (
|
||||||
|
pkgs:
|
||||||
|
packagesFromDirectoryRecursive {
|
||||||
|
inherit (pkgs) callPackage;
|
||||||
|
|
||||||
|
directory = ./packages;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
nixosModules = genAttrs (map nameOf (listFilesRecursive ./modules/system)) (
|
||||||
|
name: import ./modules/system/${name}.nix
|
||||||
|
);
|
||||||
|
|
||||||
|
homeModules = genAttrs (map nameOf (listFilesRecursive ./modules/home)) (name: import ./modules/home/${name}.nix);
|
||||||
|
|
||||||
|
overlays = genAttrs (map nameOf (listFilesRecursive ./overlays)) (
|
||||||
|
name: import ./overlays/${name}.nix
|
||||||
|
);
|
||||||
|
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
eddie = nixpkgs.lib.nixosSystem {
|
eddie = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit self inputs;
|
inherit inputs;
|
||||||
|
nix-config = self;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
inputs.sops-nix.nixosModules.sops
|
|
||||||
inputs.nix-flatpak.nixosModules.nix-flatpak
|
|
||||||
inputs.kmonad.nixosModules.default
|
inputs.kmonad.nixosModules.default
|
||||||
inputs.musnix.nixosModules.musnix
|
inputs.musnix.nixosModules.musnix
|
||||||
home-manager.nixosModules.home-manager
|
./hosts/eddie/configuration.nix
|
||||||
./hosts/eddie
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
homeConfigurations = {
|
||||||
|
"emenel" = home-manager.lib.homeManagerConfiguration {
|
||||||
|
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
nix-config = self;
|
||||||
|
};
|
||||||
|
|
||||||
|
modules = [
|
||||||
|
inputs.nix-flatpak.homeManagerModules.nix-flatpak
|
||||||
|
inputs.stylix.homeManagerModules.stylix
|
||||||
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
./homes/emenel/default.nix
|
./homes/emenel/default.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,20 +1,44 @@
|
||||||
{ config, lib, pkgs, inputs, outputs, ... }:
|
{ nix-config, config, lib, pkgs, inputs, ... }:
|
||||||
{
|
{
|
||||||
|
nixpkgs = {
|
||||||
home-manager.backupFileExtension = "backup";
|
config = {
|
||||||
home-manager.extraSpecialArgs = { inherit inputs variables; };
|
allowUnfree = true;
|
||||||
|
};
|
||||||
home-manager.users.emenel = {
|
overlays = builtins.attrValues nix-config.overlays
|
||||||
|
++ [ inputs.emacs-overlay.overlays.default ];
|
||||||
|
};
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = lib.mkMerge [
|
||||||
|
[
|
||||||
inputs.affinity-nix.packages.x86_64-linux.photo
|
inputs.affinity-nix.packages.x86_64-linux.photo
|
||||||
inputs.affinity-nix.packages.x86_64-linux.publisher
|
inputs.affinity-nix.packages.x86_64-linux.publisher
|
||||||
inputs.affinity-nix.packages.x86_64-linux.designer
|
inputs.affinity-nix.packages.x86_64-linux.designer
|
||||||
inputs.shikane.packages.x86_64-linux.default
|
inputs.shikane.packages.x86_64-linux.default
|
||||||
guix
|
|
||||||
unstable.thonny
|
|
||||||
inputs.isd.packages.x86_64-linux.default
|
inputs.isd.packages.x86_64-linux.default
|
||||||
|
inputs.hyprpicker.packages.x86_64-linux.default
|
||||||
|
]
|
||||||
|
|
||||||
|
(with nix-config.packages.x86_64-linux; [
|
||||||
|
bitwig-beta
|
||||||
|
mioctl
|
||||||
|
tal.bassline
|
||||||
|
tal.j8
|
||||||
|
tal.u-no-lx
|
||||||
|
amplocker
|
||||||
|
chair-audio.snare
|
||||||
|
chair-audio.cymb
|
||||||
|
the-usual-suspects.vavra
|
||||||
|
the-usual-suspects.nodal-red
|
||||||
|
the-usual-suspects.xenia
|
||||||
|
the-usual-suspects.ostirus
|
||||||
|
the-usual-suspects.osirus
|
||||||
|
])
|
||||||
|
|
||||||
|
(with pkgs; [
|
||||||
|
guix
|
||||||
|
thonny
|
||||||
|
|
||||||
wayback
|
wayback
|
||||||
just
|
just
|
||||||
yt-dlp
|
yt-dlp
|
||||||
|
@ -63,7 +87,7 @@
|
||||||
gst_all_1.gstreamer
|
gst_all_1.gstreamer
|
||||||
alsa-oss
|
alsa-oss
|
||||||
powertop
|
powertop
|
||||||
unstable.hypridle
|
hypridle
|
||||||
age
|
age
|
||||||
sops
|
sops
|
||||||
|
|
||||||
|
@ -116,7 +140,7 @@
|
||||||
openssl.out
|
openssl.out
|
||||||
nixfmt-rfc-style
|
nixfmt-rfc-style
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
unstable.clipse
|
clipse
|
||||||
maim
|
maim
|
||||||
php
|
php
|
||||||
rustup
|
rustup
|
||||||
|
@ -200,11 +224,11 @@
|
||||||
gnome-keyring
|
gnome-keyring
|
||||||
ulauncher
|
ulauncher
|
||||||
wl-mirror
|
wl-mirror
|
||||||
unstable.nwg-look
|
nwg-look
|
||||||
soundconverter
|
soundconverter
|
||||||
gtop
|
# gtop
|
||||||
wmctrl
|
wmctrl
|
||||||
colloid-gtk-theme
|
# colloid-gtk-theme
|
||||||
colloid-icon-theme
|
colloid-icon-theme
|
||||||
whitesur-gtk-theme
|
whitesur-gtk-theme
|
||||||
whitesur-cursors
|
whitesur-cursors
|
||||||
|
@ -234,7 +258,7 @@
|
||||||
|
|
||||||
chayang
|
chayang
|
||||||
sway-launcher-desktop
|
sway-launcher-desktop
|
||||||
unstable.swayosd
|
swayosd
|
||||||
spice
|
spice
|
||||||
spice-gtk
|
spice-gtk
|
||||||
spice-protocol
|
spice-protocol
|
||||||
|
@ -248,10 +272,10 @@
|
||||||
impression
|
impression
|
||||||
zoom-us
|
zoom-us
|
||||||
nyxt
|
nyxt
|
||||||
unstable.ungoogled-chromium
|
ungoogled-chromium
|
||||||
obsidian
|
obsidian
|
||||||
vlc
|
vlc
|
||||||
unstable.polychromatic
|
polychromatic
|
||||||
discord
|
discord
|
||||||
slack
|
slack
|
||||||
signal-desktop
|
signal-desktop
|
||||||
|
@ -260,18 +284,17 @@
|
||||||
onlyoffice-desktopeditors
|
onlyoffice-desktopeditors
|
||||||
libreoffice
|
libreoffice
|
||||||
hyphenDicts.en_US
|
hyphenDicts.en_US
|
||||||
unstable.plexamp
|
plexamp
|
||||||
rmpc
|
rmpc
|
||||||
resources
|
resources
|
||||||
carla
|
carla
|
||||||
switcheroo
|
switcheroo
|
||||||
tenacity
|
tenacity
|
||||||
supercollider-with-plugins
|
supercollider-with-plugins
|
||||||
bitwig-studio-beta
|
|
||||||
blender
|
blender
|
||||||
davinci-resolve-studio
|
davinci-resolve-studio
|
||||||
steam
|
steam
|
||||||
unstable.processing
|
processing
|
||||||
zotero
|
zotero
|
||||||
jre
|
jre
|
||||||
tesseract
|
tesseract
|
||||||
|
@ -301,13 +324,11 @@
|
||||||
ardour
|
ardour
|
||||||
dockfmt
|
dockfmt
|
||||||
impala
|
impala
|
||||||
unstable.playerctl
|
playerctl
|
||||||
mioctl
|
|
||||||
oculante
|
oculante
|
||||||
unstable.door-knocker
|
door-knocker
|
||||||
inputs.hyprpicker.packages.x86_64-linux.default
|
|
||||||
farge
|
farge
|
||||||
unstable.halloy
|
halloy
|
||||||
paleta
|
paleta
|
||||||
tree-sitter
|
tree-sitter
|
||||||
(tree-sitter.withPlugins (_: tree-sitter.allGrammars))
|
(tree-sitter.withPlugins (_: tree-sitter.allGrammars))
|
||||||
|
@ -334,18 +355,6 @@
|
||||||
helio-workstation
|
helio-workstation
|
||||||
stochas
|
stochas
|
||||||
|
|
||||||
tal-bassline
|
|
||||||
tal-j8
|
|
||||||
tal-u-no-lx
|
|
||||||
amplocker
|
|
||||||
chair-snare
|
|
||||||
chair-cymb
|
|
||||||
tus-vavra
|
|
||||||
tus-nodal-red
|
|
||||||
tus-xenia
|
|
||||||
tus-ostirus
|
|
||||||
tus-osirus
|
|
||||||
|
|
||||||
# Fonts
|
# Fonts
|
||||||
fira-code
|
fira-code
|
||||||
fira
|
fira
|
||||||
|
@ -356,11 +365,11 @@
|
||||||
spleen
|
spleen
|
||||||
fira-code-symbols
|
fira-code-symbols
|
||||||
powerline-fonts
|
powerline-fonts
|
||||||
nerdfonts
|
|
||||||
noto-fonts-color-emoji
|
noto-fonts-color-emoji
|
||||||
noto-fonts
|
noto-fonts
|
||||||
noto-fonts-cjk-sans
|
noto-fonts-cjk-sans
|
||||||
noto-fonts-emoji
|
noto-fonts-emoji
|
||||||
|
])
|
||||||
];
|
];
|
||||||
|
|
||||||
username = "emenel";
|
username = "emenel";
|
||||||
|
@ -395,16 +404,20 @@
|
||||||
package = pkgs.bibata-cursors;
|
package = pkgs.bibata-cursors;
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.fontconfig = {
|
fonts = {
|
||||||
|
fontconfig = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
# packages = [
|
||||||
|
# pkgs.nerdfonts.jetbrains-mono
|
||||||
|
# ];
|
||||||
|
};
|
||||||
|
|
||||||
sops = {
|
sops = {
|
||||||
age.keyFile = "/home/emenel/.config/sops/age/keys.txt"; # must have no password!
|
age.keyFile = "/home/emenel/.config/sops/age/keys.txt"; # must have no password!
|
||||||
|
|
||||||
defaultSopsFile = ./secrets.yaml;
|
defaultSopsFile = ./secrets.yaml;
|
||||||
defaultSymlinkPath = "/run/user/1000/secrets";
|
|
||||||
defaultSecretsMountPoint = "/run/user/1000/secrets.d";
|
|
||||||
|
|
||||||
secrets = {
|
secrets = {
|
||||||
bw_client_id = {
|
bw_client_id = {
|
||||||
|
@ -426,13 +439,13 @@
|
||||||
home-manager.enable = true;
|
home-manager.enable = true;
|
||||||
mpv = {
|
mpv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = (pkgs.unstable.mpv-unwrapped.wrapper {
|
package = (pkgs.mpv-unwrapped.wrapper {
|
||||||
scripts = with pkgs.unstable.mpvScripts; [
|
scripts = with pkgs.mpvScripts; [
|
||||||
thumbfast
|
thumbfast
|
||||||
modernz
|
modernz
|
||||||
];
|
];
|
||||||
|
|
||||||
mpv = pkgs.unstable.mpv-unwrapped.override {
|
mpv = pkgs.mpv-unwrapped.override {
|
||||||
waylandSupport = true;
|
waylandSupport = true;
|
||||||
ffmpeg = pkgs.ffmpeg-full;
|
ffmpeg = pkgs.ffmpeg-full;
|
||||||
};
|
};
|
||||||
|
@ -583,7 +596,7 @@
|
||||||
|
|
||||||
waybar = {
|
waybar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.unstable.waybar;
|
package = pkgs.waybar;
|
||||||
# systemd = {
|
# systemd = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
# # target = "graphical-session.target";
|
# # target = "graphical-session.target";
|
||||||
|
@ -591,14 +604,14 @@
|
||||||
};
|
};
|
||||||
eww = {
|
eww = {
|
||||||
enable = true;
|
enable = true;
|
||||||
configDir = ../dotfiles/dot_config/eww;
|
configDir = ./dotfiles/dot_config/eww;
|
||||||
};
|
};
|
||||||
lazygit.enable = true;
|
lazygit.enable = true;
|
||||||
jq.enable = true;
|
jq.enable = true;
|
||||||
firefox.enable = true;
|
firefox.enable = true;
|
||||||
rbw = {
|
rbw = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.rbw-latest;
|
package = nix-config.packages.x86_64-linux.rbw.rbw;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -637,19 +650,19 @@
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
renoise = pkgs.renoise.override {
|
renoise = pkgs.renoise.override {
|
||||||
releasePath = ../binary-installers/rns_344_linux_x86_64.tar.gz;
|
releasePath = ../../assets/binary-installers/rns_344_linux_x86_64.tar.gz;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
playerctld = {
|
playerctld = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.unstable.playerctl;
|
package = pkgs.playerctl;
|
||||||
};
|
};
|
||||||
mako = {
|
mako = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
flatpak.enable = true;
|
# flatpak.enable = true;
|
||||||
syncthing = {
|
syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# tray.enable = true;
|
# tray.enable = true;
|
||||||
|
@ -724,68 +737,67 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# moving files!
|
# moving files!
|
||||||
xdg.configFile."mako".source = ../dotfiles/dot_config/mako;
|
xdg.configFile."mako".source = ./dotfiles/dot_config/mako;
|
||||||
xdg.configFile."hypr".source = ../dotfiles/dot_config/hypr;
|
xdg.configFile."hypr".source = ./dotfiles/dot_config/hypr;
|
||||||
xdg.configFile."halloy/config.toml".source = ../dotfiles/dot_config/halloy/config.toml;
|
xdg.configFile."halloy/config.toml".source = ./dotfiles/dot_config/halloy/config.toml;
|
||||||
xdg.configFile."waybar".source = ../dotfiles/dot_config/waybar;
|
xdg.configFile."waybar".source = ./dotfiles/dot_config/waybar;
|
||||||
xdg.configFile."just/justfile".source = ../dotfiles/dot_config/just/justfile;
|
xdg.configFile."just/justfile".source = ./dotfiles/dot_config/just/justfile;
|
||||||
xdg.configFile."starship.toml".source = ../dotfiles/dot_config/starship.toml;
|
xdg.configFile."starship.toml".source = ./dotfiles/dot_config/starship.toml;
|
||||||
xdg.configFile."ghostty".source = ../dotfiles/dot_config/ghostty;
|
xdg.configFile."ghostty".source = ./dotfiles/dot_config/ghostty;
|
||||||
xdg.configFile."wezterm".source = ../dotfiles/dot_config/wezterm;
|
xdg.configFile."wezterm".source = ./dotfiles/dot_config/wezterm;
|
||||||
xdg.configFile."git".source = ../dotfiles/dot_config/git;
|
xdg.configFile."git".source = ./dotfiles/dot_config/git;
|
||||||
xdg.configFile."rbw".source = ../dotfiles/dot_config/rbw;
|
xdg.configFile."rbw".source = ./dotfiles/dot_config/rbw;
|
||||||
xdg.configFile."niri/config.kdl".source = ../dotfiles/dot_config/niri/config.kdl;
|
xdg.configFile."niri/config.kdl".source = ./dotfiles/dot_config/niri/config.kdl;
|
||||||
xdg.configFile."shikane".source = ../dotfiles/dot_config/shikane;
|
xdg.configFile."shikane".source = ./dotfiles/dot_config/shikane;
|
||||||
home.file.".ssh/config".source = ../dotfiles/dot_ssh/config;
|
home.file.".ssh/config".source = ./dotfiles/dot_ssh/config;
|
||||||
home.file.".npmrc".source = ../dotfiles/dot_npmrc;
|
home.file.".npmrc".source = ./dotfiles/dot_npmrc;
|
||||||
home.file.".vst3/yabridge/yabridge.toml".source = ../dotfiles/dot_vst3/yabridge.toml;
|
home.file.".vst3/yabridge/yabridge.toml".source = ./dotfiles/dot_vst3/yabridge.toml;
|
||||||
home.file.".sbclrc".source = ../dotfiles/dot_sbclrc;
|
home.file.".sbclrc".source = ./dotfiles/dot_sbclrc;
|
||||||
home.file.".signature".source = ../dotfiles/dot_signature;
|
home.file.".signature".source = ./dotfiles/dot_signature;
|
||||||
home.file.".config/fish/functions" = {
|
home.file.".config/fish/functions" = {
|
||||||
source = ../dotfiles/dot_config/fish/functions;
|
source = ./dotfiles/dot_config/fish/functions;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
home.file.".config/fish/completions" = {
|
home.file.".config/fish/completions" = {
|
||||||
source = ../dotfiles/dot_config/fish/completions;
|
source = ./dotfiles/dot_config/fish/completions;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
xdg.configFile."yazi" = {
|
xdg.configFile."yazi" = {
|
||||||
source = ../dotfiles/dot_config/yazi;
|
source = ./dotfiles/dot_config/yazi;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.configFile."emacs".enable = false;
|
xdg.configFile."emacs".enable = false;
|
||||||
|
|
||||||
home.file.".msmtprc".source = ../dotfiles/dot_msmtprc;
|
home.file.".msmtprc".source = ./dotfiles/dot_msmtprc;
|
||||||
home.file.".mbsyncrc".source = ../dotfiles/dot_mbsyncrc;
|
home.file.".mbsyncrc".source = ./dotfiles/dot_mbsyncrc;
|
||||||
xdg.configFile."isyncrc".enable = false;
|
xdg.configFile."isyncrc".enable = false;
|
||||||
|
|
||||||
home.file.".local/bin" = {
|
home.file.".local/bin" = {
|
||||||
source = ../dotfiles/dot_local/bin;
|
source = ./dotfiles/dot_local/bin;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file.".local/share/flf".source = ../dotfiles/dot_local/share/flf;
|
home.file.".local/share/flf".source = ./dotfiles/dot_local/share/flf;
|
||||||
|
|
||||||
home.file.".local/share/The Usual Suspects/Vavra" = {
|
home.file.".local/share/The Usual Suspects/Vavra" = {
|
||||||
recursive = true;
|
recursive = true;
|
||||||
source = ../packages/the-usual-suspects/vavra;
|
source = ../../packages/the-usual-suspects/vavra;
|
||||||
};
|
};
|
||||||
home.file.".local/share/The Usual Suspects/Xenia" = {
|
home.file.".local/share/The Usual Suspects/Xenia" = {
|
||||||
recursive = true;
|
recursive = true;
|
||||||
source = ../packages/the-usual-suspects/xenia;
|
source = ../../packages/the-usual-suspects/xenia;
|
||||||
};
|
};
|
||||||
home.file.".local/share/The Usual Suspects/Osirus" = {
|
home.file.".local/share/The Usual Suspects/Osirus" = {
|
||||||
recursive = true;
|
recursive = true;
|
||||||
source = ../packages/the-usual-suspects/osirus;
|
source = ../../packages/the-usual-suspects/osirus;
|
||||||
};
|
};
|
||||||
home.file.".local/share/The Usual Suspects/OsTIrus" = {
|
home.file.".local/share/The Usual Suspects/OsTIrus" = {
|
||||||
recursive = true;
|
recursive = true;
|
||||||
source = ../packages/the-usual-suspects/ostirus;
|
source = ../../packages/the-usual-suspects/ostirus;
|
||||||
};
|
};
|
||||||
home.file.".local/share/The Usual Suspects/NodalRed2x" = {
|
home.file.".local/share/The Usual Suspects/NodalRed2x" = {
|
||||||
recursive = true;
|
recursive = true;
|
||||||
source = ../packages/the-usual-suspects/nodal-red;
|
source = ../../packages/the-usual-suspects/nodal-red;
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,23 +2,31 @@
|
||||||
# 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, pkgs, lib, inputs, musnix, outputs, ... }:
|
{ nix-config, config, pkgs, lib, inputs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
# imports =
|
imports =
|
||||||
# [ # Include the results of the hardware scan.
|
[ # Include the results of the hardware scan.
|
||||||
# ./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
# ./razer-speaker-fix.nix
|
./razer-speaker-fix.nix
|
||||||
# ];
|
];
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
config = {
|
config = {
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
overlays = builtins.attrValues nix-config.overlays
|
||||||
|
++ [ inputs.emacs-overlay.overlays.default
|
||||||
|
inputs.niri.overlays.default
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# environment.etc."nix/inputs/nixpkgs".source = "${nixpkgs}";
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
|
# registry.nixpkgs.flake = nixpkgs;
|
||||||
|
channel.enable = false;
|
||||||
settings = {
|
settings = {
|
||||||
experimental-features = [ "nix-command" "flakes" ];
|
experimental-features = [ "nix-command" "flakes" ];
|
||||||
substituters = [ "https://nix-community.cachix.org" ];
|
substituters = [ "https://nix-community.cachix.org" ];
|
||||||
|
@ -63,7 +71,7 @@
|
||||||
systemd-boot.configurationLimit = 8;
|
systemd-boot.configurationLimit = 8;
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
};
|
};
|
||||||
kernelPackages = pkgs.unstable.linuxPackages_latest;
|
kernelPackages = pkgs.linuxPackages_latest;
|
||||||
initrd.systemd.enable = true;
|
initrd.systemd.enable = true;
|
||||||
initrd.kernelModules = [ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" "snd-virmidi" ];
|
initrd.kernelModules = [ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" "snd-virmidi" ];
|
||||||
kernelParams = [ "nvidia_drm.fbdev=1" "nvidia_drm.modeset=1" ];
|
kernelParams = [ "nvidia_drm.fbdev=1" "nvidia_drm.modeset=1" ];
|
||||||
|
@ -224,7 +232,7 @@
|
||||||
# wireless = {
|
# wireless = {
|
||||||
# iwd = {
|
# iwd = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
# package = pkgs.unstable.iwd;
|
# package = pkgs.iwd;
|
||||||
# settings = {
|
# settings = {
|
||||||
# IPv6 = {
|
# IPv6 = {
|
||||||
# enabled = true;
|
# enabled = true;
|
||||||
|
@ -275,7 +283,7 @@
|
||||||
extraArgs = "--keep-since 4d --keep 3";
|
extraArgs = "--keep-since 4d --keep 3";
|
||||||
};
|
};
|
||||||
flake = "/home/emenel/source/nixos-config";
|
flake = "/home/emenel/source/nixos-config";
|
||||||
package = pkgs.unstable.nh;
|
package = pkgs.nh;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
@ -311,7 +319,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
hardware.pulseaudio.enable = false;
|
services.pulseaudio.enable = false;
|
||||||
|
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -435,12 +443,12 @@
|
||||||
keyboards = {
|
keyboards = {
|
||||||
sinc = {
|
sinc = {
|
||||||
device = "/dev/input/by-id/usb-Keebio_Sinc_Rev._4-event-kbd";
|
device = "/dev/input/by-id/usb-Keebio_Sinc_Rev._4-event-kbd";
|
||||||
config = builtins.readFile ../../dotfiles/dot_config/kmonad/sinc.kbd;
|
config = builtins.readFile ../../homes/emenel/dotfiles/dot_config/kmonad/sinc.kbd;
|
||||||
};
|
};
|
||||||
razer = {
|
razer = {
|
||||||
extraGroups = [ "openrazer" ];
|
extraGroups = [ "openrazer" ];
|
||||||
device = "/dev/input/by-id/usb-Razer_Razer_Blade-if01-event-kbd";
|
device = "/dev/input/by-id/usb-Razer_Razer_Blade-if01-event-kbd";
|
||||||
config = builtins.readFile ../../dotfiles/dot_config/kmonad/razer.kbd;
|
config = builtins.readFile ../../homes/emenel/dotfiles/dot_config/kmonad/razer.kbd;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -515,7 +523,7 @@
|
||||||
|
|
||||||
services.power-profiles-daemon = {
|
services.power-profiles-daemon = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.unstable.power-profiles-daemon;
|
package = pkgs.power-profiles-daemon;
|
||||||
};
|
};
|
||||||
|
|
||||||
# enable the OpenSSH daemon.
|
# enable the OpenSSH daemon.
|
||||||
|
|
5
modules/system/niri.nix
Normal file
5
modules/system/niri.nix
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
programs.niri = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,8 +0,0 @@
|
||||||
{ inputs, config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
programs.niri = {
|
|
||||||
enable = true;
|
|
||||||
package = inputs.niri.packages.x86_64-linux.niri;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,63 +0,0 @@
|
||||||
# This file defines overlays
|
|
||||||
{inputs, ...}: {
|
|
||||||
# This one brings our custom packages from the 'pkgs' directory
|
|
||||||
additions = final: _prev: import ../packages final.pkgs;
|
|
||||||
|
|
||||||
modifications = final: prev: {
|
|
||||||
|
|
||||||
networkmanager = prev.pkgs.unstable.networkmanager;
|
|
||||||
|
|
||||||
ulauncher = prev.ulauncher.overrideAttrs (old: {
|
|
||||||
propagatedBuildInputs = with prev.python3Packages;
|
|
||||||
old.propagatedBuildInputs
|
|
||||||
++ [
|
|
||||||
thefuzz
|
|
||||||
tornado
|
|
||||||
];
|
|
||||||
});
|
|
||||||
|
|
||||||
gnome47Extensions.paperwm = inputs.paperwm.packages.x86_64-linux.default;
|
|
||||||
|
|
||||||
wineWowPackages.stagingFull = prev.wineWowPackages.stagingFull.overrideAttrs (old: {
|
|
||||||
patches = old.patches ++ [ ./wine-6006.patch ];
|
|
||||||
waylandSupport = true;
|
|
||||||
fontconfigSupport = true;
|
|
||||||
vulkanSupport = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
raylib = prev.raylib.overrideDerivation (previous: {
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "raysan5";
|
|
||||||
repo = "raylib";
|
|
||||||
hash = "sha256-PHYdAEhittShd1UhASdhmq0nGHEEVZEUGcjCUUJZl9g=";
|
|
||||||
rev = "c9c830cb971d7aa744fe3c7444b768ccd5176c4c";
|
|
||||||
};
|
|
||||||
patches = [""];
|
|
||||||
});
|
|
||||||
|
|
||||||
openrazer-daemon = prev.openrazer-daemon.overrideDerivation (previous: {
|
|
||||||
# name = "openrazer-daemon";
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "openrazer";
|
|
||||||
version = "latest";
|
|
||||||
repo = "openrazer";
|
|
||||||
hash = "sha256-GqmFpVNuPRNM95pJsihsk/d3s61t4Lw+qaukKip9BAM=";
|
|
||||||
rev = "5e677b178be7da08fb72d7cd0791bf68a129fcc5";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
emacs-overlay = (import (builtins.fetchTarball {
|
|
||||||
url = "https://github.com/nix-community/emacs-overlay/archive/master.tar.gz";
|
|
||||||
sha256 = "0jlddbg2x6g6gi9aimd6ycxl86ndxd9lg3mz0xmyq174qmqij218";
|
|
||||||
}));
|
|
||||||
|
|
||||||
# When applied, the unstable nixpkgs set (declared in the flake inputs) will
|
|
||||||
# be accessible through 'pkgs.unstable'
|
|
||||||
unstable-packages = final: _prev: {
|
|
||||||
unstable = import inputs.nixpkgs-unstable {
|
|
||||||
system = final.system;
|
|
||||||
config.allowUnfree = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
8
overlays/wineWow.nix
Normal file
8
overlays/wineWow.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
final: prev: {
|
||||||
|
wineWowPackages.stagingFull = prev.wineWowPackages.stagingFull.overrideAttrs (old: {
|
||||||
|
patches = old.patches ++ [ ../patches/wine-6006.patch ];
|
||||||
|
waylandSupport = true;
|
||||||
|
fontconfigSupport = true;
|
||||||
|
vulkanSupport = true;
|
||||||
|
});
|
||||||
|
}
|
|
@ -3,7 +3,7 @@
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "Excite Cymbal Pro";
|
pname = "Excite Cymbal Pro";
|
||||||
version = "latest";
|
version = "latest";
|
||||||
src = ../../binary-installers/excite_cymbal_pro-v1.0.1.zip;
|
src = ../../assets/binary-installers/excite_cymbal_pro-v1.0.1.zip;
|
||||||
nativeBuildInputs = [ makeWrapper unzip autoPatchelfHook ];
|
nativeBuildInputs = [ makeWrapper unzip autoPatchelfHook ];
|
||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
freetype
|
freetype
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "Excite Snare Pro";
|
pname = "Excite Snare Pro";
|
||||||
version = "latest";
|
version = "latest";
|
||||||
src = ../../binary-installers/excite_snare_drum_PRO_1.1.10.zip;
|
src = ../../assets/binary-installers/excite_snare_drum_PRO_1.1.10.zip;
|
||||||
nativeBuildInputs = [ makeWrapper unzip autoPatchelfHook ];
|
nativeBuildInputs = [ makeWrapper unzip autoPatchelfHook ];
|
||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
freetype
|
freetype
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
# Custom packages, that can be defined similarly to ones from nixpkgs
|
|
||||||
# You can build them using 'nix build .#example'
|
|
||||||
pkgs: {
|
|
||||||
tal-bassline = pkgs.callPackage ./tal/bassline.nix {};
|
|
||||||
tal-j8 = pkgs.callPackage ./tal/j8.nix {};
|
|
||||||
tal-u-no-lx = pkgs.callPackage ./tal/u-no-lx.nix {};
|
|
||||||
amplocker = pkgs.callPackage ./amplocker/package.nix {};
|
|
||||||
chair-snare = pkgs.callPackage ./chair-audio/snare.nix {};
|
|
||||||
chair-cymb = pkgs.callPackage ./chair-audio/cymb.nix {};
|
|
||||||
tus-vavra = pkgs.callPackage ./the-usual-suspects/vavra/vavra.nix {};
|
|
||||||
tus-nodal-red = pkgs.callPackage ./the-usual-suspects/nodal-red/nodal-red.nix {};
|
|
||||||
tus-xenia = pkgs.callPackage ./the-usual-suspects/xenia/xenia.nix {};
|
|
||||||
tus-ostirus = pkgs.callPackage ./the-usual-suspects/ostirus/ostirus.nix {};
|
|
||||||
tus-osirus = pkgs.callPackage ./the-usual-suspects/osirus/osirus.nix {};
|
|
||||||
paulxstretch = pkgs.callPackage ./paulxstretch/paulxstretch.nix {};
|
|
||||||
mioctl = pkgs.callPackage ./mioctl/mioctl.nix {};
|
|
||||||
|
|
||||||
bitwig-studio-beta = pkgs.callPackage ./bitwig-beta/bitwig-studio-beta.nix {};
|
|
||||||
|
|
||||||
rbw-latest = pkgs.callPackage ./rbw/rbw.nix {};
|
|
||||||
}
|
|
Loading…
Add table
Add a link
Reference in a new issue