some modularizing and refactoring
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
{
|
{pkgs, ...}: {
|
||||||
nixos = {
|
nixos = {
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
@@ -17,15 +17,15 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
gaming = {
|
gaming = {
|
||||||
# steam = {
|
steam = {
|
||||||
# enable = true;
|
enable = true;
|
||||||
# };
|
};
|
||||||
# gamescope = {
|
gamescope = {
|
||||||
# enable = true;
|
enable = true;
|
||||||
# };
|
};
|
||||||
# lutris = {
|
lutris = {
|
||||||
# enable = true;
|
enable = true;
|
||||||
# };
|
};
|
||||||
gamemode = {
|
gamemode = {
|
||||||
enable = true;
|
enable = true;
|
||||||
optimizeGpu = {
|
optimizeGpu = {
|
||||||
@@ -173,12 +173,23 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
system = {
|
system = {
|
||||||
|
devpkgs = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
locale = {
|
locale = {
|
||||||
enable = true;
|
enable = true;
|
||||||
timeZone = "Europe/Stockholm";
|
timeZone = "Europe/Stockholm";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
extraLocale = "sv_SE.UTF-8";
|
extraLocale = "sv_SE.UTF-8";
|
||||||
};
|
};
|
||||||
|
xdg = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
extraPortals = [pkgs.xdg-desktop-portal-gtk];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
utils = {
|
utils = {
|
||||||
android = {
|
android = {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{pkgs, ...}: {
|
||||||
nixos = {
|
nixos = {
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
@@ -148,19 +148,30 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
system = {
|
system = {
|
||||||
|
devpkgs = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
locale = {
|
locale = {
|
||||||
enable = true;
|
enable = true;
|
||||||
timeZone = "Europe/Stockholm";
|
timeZone = "Europe/Stockholm";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
extraLocale = "sv_SE.UTF-8";
|
extraLocale = "sv_SE.UTF-8";
|
||||||
};
|
};
|
||||||
|
xdg = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
extraPortals = [pkgs.xdg-desktop-portal-gtk];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
utils = {
|
utils = {
|
||||||
android = {
|
android = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
anyrun = {
|
anyrun = {
|
||||||
enable = true;
|
enable = false;
|
||||||
};
|
};
|
||||||
brightnessctl = {
|
brightnessctl = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -19,10 +19,6 @@
|
|||||||
|
|
||||||
# shorten paths
|
# shorten paths
|
||||||
inherit (inputs.nixpkgs.lib) nixosSystem;
|
inherit (inputs.nixpkgs.lib) nixosSystem;
|
||||||
mod = "${systemConfig}";
|
|
||||||
|
|
||||||
# get the basic config to build on top of
|
|
||||||
inherit (import "${systemConfig}") shared;
|
|
||||||
|
|
||||||
# get these into the module system
|
# get these into the module system
|
||||||
specialArgs = {inherit inputs self userConfig systemConfig hostConfig cnstConfig toothpickConfig umodPath smodPath;};
|
specialArgs = {inherit inputs self userConfig systemConfig hostConfig cnstConfig toothpickConfig umodPath smodPath;};
|
||||||
@@ -30,57 +26,51 @@
|
|||||||
cnix = nixosSystem {
|
cnix = nixosSystem {
|
||||||
inherit specialArgs;
|
inherit specialArgs;
|
||||||
|
|
||||||
modules =
|
modules = [
|
||||||
shared
|
./cnix
|
||||||
++ [
|
"${self}/nix"
|
||||||
./cnix
|
{
|
||||||
"${mod}/dev"
|
home-manager = {
|
||||||
{
|
users.cnst.imports = homeImports."cnst@cnix";
|
||||||
home-manager = {
|
extraSpecialArgs = specialArgs;
|
||||||
users.cnst.imports = homeImports."cnst@cnix";
|
};
|
||||||
extraSpecialArgs = specialArgs;
|
}
|
||||||
};
|
self.nixosModules.nixos
|
||||||
}
|
inputs.chaotic.nixosModules.default
|
||||||
self.nixosModules.nixos
|
inputs.agenix.nixosModules.default
|
||||||
inputs.chaotic.nixosModules.default
|
];
|
||||||
inputs.agenix.nixosModules.default
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
toothpc = nixosSystem {
|
toothpc = nixosSystem {
|
||||||
inherit specialArgs;
|
inherit specialArgs;
|
||||||
modules =
|
modules = [
|
||||||
shared
|
./toothpc
|
||||||
++ [
|
"${self}/nix"
|
||||||
./toothpc
|
{
|
||||||
"${mod}/dev"
|
home-manager = {
|
||||||
{
|
users.toothpick.imports = homeImports."toothpick@toothpc";
|
||||||
home-manager = {
|
extraSpecialArgs = specialArgs;
|
||||||
users.toothpick.imports = homeImports."toothpick@toothpc";
|
};
|
||||||
extraSpecialArgs = specialArgs;
|
}
|
||||||
};
|
self.nixosModules.nixos
|
||||||
}
|
inputs.chaotic.nixosModules.default
|
||||||
self.nixosModules.nixos
|
inputs.agenix.nixosModules.default
|
||||||
inputs.chaotic.nixosModules.default
|
];
|
||||||
inputs.agenix.nixosModules.default
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
cnixpad = nixosSystem {
|
cnixpad = nixosSystem {
|
||||||
inherit specialArgs;
|
inherit specialArgs;
|
||||||
modules =
|
modules = [
|
||||||
shared
|
./cnixpad
|
||||||
++ [
|
"${self}/nix"
|
||||||
./cnixpad
|
{
|
||||||
"${mod}/dev"
|
home-manager = {
|
||||||
{
|
users.cnst.imports = homeImports."cnst@cnixpad";
|
||||||
home-manager = {
|
extraSpecialArgs = specialArgs;
|
||||||
users.cnst.imports = homeImports."cnst@cnixpad";
|
};
|
||||||
extraSpecialArgs = specialArgs;
|
}
|
||||||
};
|
self.nixosModules.nixos
|
||||||
}
|
inputs.chaotic.nixosModules.default
|
||||||
self.nixosModules.nixos
|
inputs.agenix.nixosModules.default
|
||||||
inputs.chaotic.nixosModules.default
|
];
|
||||||
inputs.agenix.nixosModules.default
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{pkgs, ...}: {
|
||||||
nixos = {
|
nixos = {
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
@@ -165,12 +165,23 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
system = {
|
system = {
|
||||||
|
devpkgs = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
locale = {
|
locale = {
|
||||||
enable = true;
|
enable = true;
|
||||||
timeZone = "Europe/Stockholm";
|
timeZone = "Europe/Stockholm";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
extraLocale = "sv_SE.UTF-8";
|
extraLocale = "sv_SE.UTF-8";
|
||||||
};
|
};
|
||||||
|
xdg = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
extraPortals = [pkgs.xdg-desktop-portal-gtk];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
utils = {
|
utils = {
|
||||||
android = {
|
android = {
|
||||||
|
|||||||
@@ -12,9 +12,9 @@
|
|||||||
./home/devtools/neovim
|
./home/devtools/neovim
|
||||||
./home/devtools/vscode
|
./home/devtools/vscode
|
||||||
|
|
||||||
./home/gaming/steam
|
# ./home/gaming/steam
|
||||||
./home/gaming/mangohud
|
# ./home/gaming/mangohud
|
||||||
./home/gaming/lutris
|
# ./home/gaming/lutris
|
||||||
|
|
||||||
./home/cli/alacritty
|
./home/cli/alacritty
|
||||||
./home/cli/bash
|
./home/cli/bash
|
||||||
@@ -102,7 +102,10 @@
|
|||||||
./nixos/services/system/zram
|
./nixos/services/system/zram
|
||||||
./nixos/services/system/kanata
|
./nixos/services/system/kanata
|
||||||
|
|
||||||
|
./nixos/system/devpkgs
|
||||||
|
./nixos/system/fonts
|
||||||
./nixos/system/locale
|
./nixos/system/locale
|
||||||
|
./nixos/system/xdg
|
||||||
|
|
||||||
./nixos/utils/android
|
./nixos/utils/android
|
||||||
./nixos/utils/anyrun
|
./nixos/utils/anyrun
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ in {
|
|||||||
nixos.gui.hyprland.enable = mkEnableOption "Enables hyprland";
|
nixos.gui.hyprland.enable = mkEnableOption "Enables hyprland";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
security.pam.services.hyprlock.text = "auth include login";
|
||||||
programs.hyprland = {
|
programs.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ in {
|
|||||||
nixos.services.system.pipewire.enable = mkEnableOption "Enables pipewire";
|
nixos.services.system.pipewire.enable = mkEnableOption "Enables pipewire";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
security.rtkit.enable = true;
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
50
modules/nixos/system/devpkgs/default.nix
Normal file
50
modules/nixos/system/devpkgs/default.nix
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.nixos.system.devpkgs;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
nixos.system.devpkgs = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Enable various packages for development";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
# Language servers, utilities, and tools
|
||||||
|
gcc
|
||||||
|
rust-analyzer
|
||||||
|
lua-language-server
|
||||||
|
nixd
|
||||||
|
php
|
||||||
|
# php84Packages.php-cs-fixer
|
||||||
|
phpactor
|
||||||
|
python312Packages.python-lsp-server
|
||||||
|
bash-language-server
|
||||||
|
nil
|
||||||
|
nodePackages.vscode-langservers-extracted
|
||||||
|
clang-tools
|
||||||
|
marksman
|
||||||
|
pyright
|
||||||
|
nodePackages_latest.intelephense
|
||||||
|
|
||||||
|
# Formatters
|
||||||
|
alejandra
|
||||||
|
stylua
|
||||||
|
nodePackages_latest.fixjson
|
||||||
|
nodePackages_latest.sql-formatter
|
||||||
|
prettierd
|
||||||
|
shfmt
|
||||||
|
luaformatter
|
||||||
|
black
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
49
modules/nixos/system/fonts/default.nix
Normal file
49
modules/nixos/system/fonts/default.nix
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.nixos.system.fonts;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
nixos.system.fonts = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = "Enable various font packages";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk
|
||||||
|
noto-fonts-emoji
|
||||||
|
liberation_ttf
|
||||||
|
fira-code-symbols
|
||||||
|
font-awesome
|
||||||
|
recursive
|
||||||
|
input-fonts
|
||||||
|
(pkgs.nerdfonts.override {
|
||||||
|
fonts = [
|
||||||
|
"JetBrainsMono"
|
||||||
|
"FiraCode"
|
||||||
|
"FiraMono"
|
||||||
|
"Iosevka"
|
||||||
|
"3270"
|
||||||
|
"DroidSansMono"
|
||||||
|
"SourceCodePro"
|
||||||
|
"UbuntuMono"
|
||||||
|
"Overpass"
|
||||||
|
"Monoid"
|
||||||
|
"Mononoki"
|
||||||
|
"Hack"
|
||||||
|
"IBMPlexMono"
|
||||||
|
];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib) mkIf mkOption mkDefault;
|
inherit (lib) mkIf mkOption mkDefault types;
|
||||||
cfg = config.nixos.system.locale;
|
cfg = config.nixos.system.locale;
|
||||||
defaultCategories = [
|
defaultCategories = [
|
||||||
"LC_ADDRESS"
|
"LC_ADDRESS"
|
||||||
@@ -20,22 +20,22 @@ in {
|
|||||||
options = {
|
options = {
|
||||||
nixos.system.locale = {
|
nixos.system.locale = {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = lib.types.bool;
|
type = types.bool;
|
||||||
default = true;
|
default = true;
|
||||||
description = "Enable locale configuration.";
|
description = "Enable locale configuration.";
|
||||||
};
|
};
|
||||||
timeZone = mkOption {
|
timeZone = mkOption {
|
||||||
type = lib.types.str;
|
type = types.str;
|
||||||
default = null;
|
default = null;
|
||||||
description = "The system time zone (e.g., \"Europe/Stockholm\").";
|
description = "The system time zone (e.g., \"Europe/Stockholm\").";
|
||||||
};
|
};
|
||||||
defaultLocale = mkOption {
|
defaultLocale = mkOption {
|
||||||
type = lib.types.str;
|
type = types.str;
|
||||||
default = null;
|
default = null;
|
||||||
description = "The default locale for the system (e.g., \"en_US.UTF-8\").";
|
description = "The default locale for the system (e.g., \"en_US.UTF-8\").";
|
||||||
};
|
};
|
||||||
extraLocale = mkOption {
|
extraLocale = mkOption {
|
||||||
type = lib.types.str;
|
type = types.str;
|
||||||
default = null;
|
default = null;
|
||||||
description = ''
|
description = ''
|
||||||
The locale to use for specific LC_* categories.
|
The locale to use for specific LC_* categories.
|
||||||
@@ -44,7 +44,7 @@ in {
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
categories = mkOption {
|
categories = mkOption {
|
||||||
type = lib.types.listOf lib.types.str;
|
type = types.listOf types.str;
|
||||||
default = defaultCategories;
|
default = defaultCategories;
|
||||||
description = ''
|
description = ''
|
||||||
List of LC_* categories to override with `locale.extraLocale`.
|
List of LC_* categories to override with `locale.extraLocale`.
|
||||||
|
|||||||
37
modules/nixos/system/xdg/default.nix
Normal file
37
modules/nixos/system/xdg/default.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf mkOption mkEnableOption types;
|
||||||
|
cfg = config.nixos.system.xdg;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
nixos.system.xdg = {
|
||||||
|
enable = mkEnableOption "Enable XDG portal.";
|
||||||
|
xdgOpenUsePortal = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = "Use xdg-open via the portal.";
|
||||||
|
};
|
||||||
|
extraPortals = mkOption {
|
||||||
|
type = types.listOf types.package;
|
||||||
|
default = [pkgs.xdg-desktop-portal-gtk];
|
||||||
|
description = "List of extra portals to include.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = cfg.xdgOpenUsePortal;
|
||||||
|
config = {
|
||||||
|
common.default = ["gtk"];
|
||||||
|
hyprland.default = ["gtk" "hyprland"];
|
||||||
|
};
|
||||||
|
extraPortals = cfg.extraPortals;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -46,11 +46,5 @@
|
|||||||
|
|
||||||
trusted-users = ["root" "@wheel"];
|
trusted-users = ["root" "@wheel"];
|
||||||
};
|
};
|
||||||
# gc = {
|
|
||||||
# automatic = true;
|
|
||||||
# dates = "weekly";
|
|
||||||
# # Keep the last 3 generations
|
|
||||||
# options = "--delete-older-than 30d";
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -1,28 +1,25 @@
|
|||||||
{
|
{
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
substituters = [
|
substituters = [
|
||||||
# high priority since it's almost always used
|
|
||||||
"https://cache.nixos.org?priority=10"
|
"https://cache.nixos.org?priority=10"
|
||||||
|
|
||||||
"https://anyrun.cachix.org"
|
|
||||||
"https://fufexan.cachix.org"
|
"https://fufexan.cachix.org"
|
||||||
"https://helix.cachix.org"
|
"https://helix.cachix.org"
|
||||||
"https://hyprland.cachix.org"
|
"https://hyprland.cachix.org"
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
"https://nix-gaming.cachix.org"
|
"https://nix-gaming.cachix.org"
|
||||||
"https://yazi.cachix.org"
|
"https://yazi.cachix.org"
|
||||||
|
"https://chaotic-nyx.cachix.org"
|
||||||
];
|
];
|
||||||
|
|
||||||
trusted-public-keys = [
|
trusted-public-keys = [
|
||||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
|
|
||||||
"anyrun.cachix.org-1:pqBobmOjI7nKlsUMV25u9QHa9btJK65/C8vnO3p346s="
|
|
||||||
"fufexan.cachix.org-1:LwCDjCJNJQf5XD2BV+yamQIMZfcKWR9ISIFy5curUsY="
|
"fufexan.cachix.org-1:LwCDjCJNJQf5XD2BV+yamQIMZfcKWR9ISIFy5curUsY="
|
||||||
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
|
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
|
||||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
"nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4="
|
"nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4="
|
||||||
"yazi.cachix.org-1:Dcdz63NZKfvUCbDGngQDAZq6kOroIrFoyO064uvLh8k="
|
"yazi.cachix.org-1:Dcdz63NZKfvUCbDGngQDAZq6kOroIrFoyO064uvLh8k="
|
||||||
|
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
```
|
|
||||||
system
|
|
||||||
├── boot
|
|
||||||
│ └── lanzaboote
|
|
||||||
├── dev
|
|
||||||
├── etc
|
|
||||||
├── modules
|
|
||||||
│ ├── gaming
|
|
||||||
│ ├── gui
|
|
||||||
│ ├── hardware
|
|
||||||
│ ├── studio
|
|
||||||
│ ├── sysd
|
|
||||||
│ │ ├── network
|
|
||||||
│ │ ├── security
|
|
||||||
│ │ ├── session
|
|
||||||
│ │ └── system
|
|
||||||
│ └── utils
|
|
||||||
└── nix
|
|
||||||
└── utils
|
|
||||||
```
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
let
|
|
||||||
shared = [
|
|
||||||
./etc
|
|
||||||
./nix
|
|
||||||
];
|
|
||||||
in {
|
|
||||||
inherit shared;
|
|
||||||
}
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Language servers, other utilities and tools
|
|
||||||
gcc
|
|
||||||
rust-analyzer
|
|
||||||
lua-language-server
|
|
||||||
nixd
|
|
||||||
php
|
|
||||||
# php84Packages.php-cs-fixer
|
|
||||||
phpactor
|
|
||||||
python312Packages.python-lsp-server
|
|
||||||
bash-language-server
|
|
||||||
nil
|
|
||||||
nodePackages.vscode-langservers-extracted
|
|
||||||
clang-tools
|
|
||||||
marksman
|
|
||||||
pyright
|
|
||||||
nodePackages_latest.intelephense
|
|
||||||
|
|
||||||
# Formatters
|
|
||||||
alejandra
|
|
||||||
stylua
|
|
||||||
nodePackages_latest.fixjson
|
|
||||||
nodePackages_latest.sql-formatter
|
|
||||||
prettierd
|
|
||||||
shfmt
|
|
||||||
luaformatter
|
|
||||||
black
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
imports = [
|
|
||||||
# shared imports
|
|
||||||
./fonts
|
|
||||||
./security
|
|
||||||
./xdg
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
fonts.packages = with pkgs; [
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-cjk
|
|
||||||
noto-fonts-emoji
|
|
||||||
liberation_ttf
|
|
||||||
fira-code-symbols
|
|
||||||
font-awesome
|
|
||||||
recursive
|
|
||||||
input-fonts
|
|
||||||
(nerdfonts.override {
|
|
||||||
fonts = [
|
|
||||||
"JetBrainsMono"
|
|
||||||
"FiraCode"
|
|
||||||
"FiraMono"
|
|
||||||
"Iosevka"
|
|
||||||
"3270"
|
|
||||||
"DroidSansMono"
|
|
||||||
"SourceCodePro"
|
|
||||||
"UbuntuMono"
|
|
||||||
"Overpass"
|
|
||||||
"Monoid"
|
|
||||||
"Mononoki"
|
|
||||||
"Hack"
|
|
||||||
"IBMPlexMono"
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
time.timeZone = "Europe/Stockholm";
|
|
||||||
|
|
||||||
i18n = {
|
|
||||||
defaultLocale = "en_US.UTF-8";
|
|
||||||
|
|
||||||
extraLocaleSettings = {
|
|
||||||
LC_ADDRESS = "sv_SE.UTF-8";
|
|
||||||
LC_IDENTIFICATION = "sv_SE.UTF-8";
|
|
||||||
LC_MEASUREMENT = "sv_SE.UTF-8";
|
|
||||||
LC_MONETARY = "sv_SE.UTF-8";
|
|
||||||
LC_NAME = "sv_SE.UTF-8";
|
|
||||||
LC_NUMERIC = "sv_SE.UTF-8";
|
|
||||||
LC_PAPER = "sv_SE.UTF-8";
|
|
||||||
LC_TELEPHONE = "sv_SE.UTF-8";
|
|
||||||
LC_TIME = "sv_SE.UTF-8";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
security = {
|
|
||||||
rtkit.enable = true;
|
|
||||||
pam.services.hyprlock.text = "auth include login";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
xdgOpenUsePortal = true;
|
|
||||||
config = {
|
|
||||||
common.default = ["gtk"];
|
|
||||||
hyprland.default = ["gtk" "hyprland"];
|
|
||||||
};
|
|
||||||
|
|
||||||
extraPortals = [
|
|
||||||
pkgs.xdg-desktop-portal-gtk
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -46,17 +46,17 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
gaming = {
|
# gaming = {
|
||||||
steam = {
|
# steam = {
|
||||||
enable = true;
|
# enable = true;
|
||||||
};
|
# };
|
||||||
mangohud = {
|
# mangohud = {
|
||||||
enable = true;
|
# enable = true;
|
||||||
};
|
# };
|
||||||
lutris = {
|
# lutris = {
|
||||||
enable = true;
|
# enable = true;
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
cli = {
|
cli = {
|
||||||
alacritty = {
|
alacritty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user