Archived
Watch
1
0
Fork
You've already forked nixos
0

flake revamp 2

This commit is contained in:
asnev 2026-07-11 18:06:51 +07:00
commit 6a367190cc
Signed by: asnev
SSH key fingerprint: SHA256:8hagYq9hDUuS5clQ78FKhIoQDvg5crdkYMHX+3g7wB4
8 changed files with 184 additions and 233 deletions

18
flake.lock generated
View file

@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1783221248, "lastModified": 1783740085,
"narHash": "sha256-ESQnuNHEDChsB4IxoLRhscVahqkDWkTb+qdIz8euYt4=", "narHash": "sha256-qajyHfZY29G2oEQk+uHxmsJcRoBUBXP9maTpFlwP/dI=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "af2beae5f0fae0a4310cc0e6aef2572f56090353", "rev": "3cd22efe6471dc7365c822bd9ad73a21e55f38fb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -23,11 +23,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1783389287, "lastModified": 1783549019,
"narHash": "sha256-0xIy4dVLqq47rA+mRy0hXDfjhQd4E5PoIns/RmB7nR4=", "narHash": "sha256-0XnckG4ZhBmAsYa9mLuEIFowBG0fDGPLHduQGsbMS4A=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0ad6f47ea4fe188f4bc8f0380f93ae8523337c6c", "rev": "74cc63f702f7d60a557e152a57b40fb1fd0f72ac",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -39,11 +39,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1783224372, "lastModified": 1783522502,
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=", "narHash": "sha256-iffAls3iaNTyJC2faYcUXSI+Gp02cDjYl+MygxKl2GI=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d407951447dcd00442e97087bf374aad70c04cea", "rev": "0bb7ec54c8483066ec9d7720e780a5caa71f8612",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -22,13 +22,12 @@
./hosts/phostron/configuration.nix ./hosts/phostron/configuration.nix
./profiles/desktops/kde.nix ./profiles/desktops/kde.nix
./users/coyote/configuration.nix ./users/coyote/configuration.nix
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager
home-manager = { {
useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
useUserPackages = true; home-manager.useUserPackages = true;
extraSpecialArgs = {inherit inputs;}; home-manager.extraSpecialArgs = {inherit inputs;};
users.coyote.imports = [./users/coyote/home.nix]; home-manager.users.coyote = import ./users/coyote/home.nix;
};
} }
]; ];
}; };

View file

@ -4,23 +4,13 @@
system.stateVersion = "26.05"; # I hope you know what you're doing. :) system.stateVersion = "26.05"; # I hope you know what you're doing. :)
nixpkgs.hostPlatform = "x86_64-linux"; nixpkgs.hostPlatform = "x86_64-linux";
services.displayManager.sddm.settings = { services.displayManager.sddm.settings.Theme.Font = "Inter";
Theme = { services.displayManager.sddm.settings.Theme.CursorSize = 18;
Font = "Inter";
CursorSize = 18;
};
};
hardware = { hardware.bluetooth.enable = true;
bluetooth = { hardware.bluetooth.powerOnBoot = false;
enable = true;
powerOnBoot = false;
};
};
networking = { networking.hostName = "phostron";
hostName = "phostron"; networking.networkmanager.enable = true;
networkmanager.enable = true; networking.firewall.enable = true;
firewall.enable = true;
};
} }

View file

@ -3,19 +3,14 @@
lib, lib,
pkgs, pkgs,
inputs, inputs,
...}: { ...
}: {
boot = { boot = {
loader.systemd-boot = { loader.systemd-boot.enable = true;
enable = true; loader.systemd-boot.configurationLimit = 10;
configurationLimit = 10; loader.efi.canTouchEfiVariables = true;
efi.canTouchEfiVariables = true; loader.timeout = 2;
}; kernelParams = ["quiet" "rd.udev.log_level=3" "rd.systemd.show_status=auto"];
timeout = 2;
kernelParams = [
"quiet"
"rd.udev.log_level=3"
"rd.systemd.show_status=auto"
];
initrd.verbose = false; initrd.verbose = false;
consoleLogLevel = 3; consoleLogLevel = 3;
kernelPackages = pkgs.linuxPackages; kernelPackages = pkgs.linuxPackages;
@ -41,14 +36,11 @@
security.rtkit.enable = true; security.rtkit.enable = true;
nix.settings = { nix.settings.experimental-features = ["nix-command" "flakes"];
experimental-features = ["nix-command" "flakes"]; nix.settings.auto-optimise-store = true;
auto-optimise-store = true;
};
nixpkgs = { nixpkgs.config.allowUnfree = true;
config.allowUnfree = true; nixpkgs.overlays = [
overlays = [
(final: prev: { (final: prev: {
unstable = import inputs.nixpkgs-unstable { unstable = import inputs.nixpkgs-unstable {
system = prev.stdenv.hostPlatform.system; system = prev.stdenv.hostPlatform.system;
@ -56,17 +48,12 @@
}; };
}) })
]; ];
};
environment = { environment.systemPackages = with pkgs; [
systemPackages = with pkgs; [
# Nix # Nix
nh nh
alejandra alejandra
# system devel comma
python3
gcc
clang
# system utils # system utils
firmware-updater firmware-updater
mtr mtr
@ -95,49 +82,30 @@
fzf fzf
eza eza
]; ];
shellAliases = { environment.shellAliases = {
l = "eza --long --all"; l = "eza --long --all";
ll = "eza --long"; ll = "eza --long";
ls = "eza --long"; ls = "eza --long";
}; };
};
programs = { programs = {
fish.enable = true; fish.enable = true;
atuin.enable = true;
atuin.settings.sync_address = "https://api.atuin.sh";
starship.enable = true; starship.enable = true;
atuin = { starship.transientPrompt.enable = true;
enable = true; starship.transientPrompt.left = "starship module character";
settings.sync_address = "https://api.atuin.sh";
}; obs-studio.enableVirtualCamera = true;
nix-ld = { ssh.startAgent = true;
enable = true;
libraries = with pkgs; [ nix-ld.enable = true;
fuse nix-ld.libraries = with pkgs; [fuse e2fsprogs];
e2fsprogs
];
};
tmux = {
enable = true;
clock24 = true;
baseIndex = 1;
shortcut = "a";
keyMode = "vi";
terminal = "screen-256color";
escapeTime = 0;
extraConfig = ''
set -g pane-base-index 1
set-window-option -g pane-base-index 1
set-option -g renumber-windows on
set-option -g status-right "\"#W\""
set -ga terminal-overrides ",*:RGB"
set -g mouse on
set -g set-clipboard on
'';
};
}; };
fonts = { fonts.packages = with pkgs; [
packages = with pkgs; [
# GUI fonts # GUI fonts
inter inter
corefonts corefonts
@ -156,11 +124,10 @@
# terminal fonts # terminal fonts
nerd-fonts.iosevka nerd-fonts.iosevka
]; ];
fontconfig = { fonts.fontconfig = {
antialias = true; antialias = true;
subpixel.rgba = "rgb"; subpixel.rgba = "rgb";
}; };
};
xdg.portal = { xdg.portal = {
enable = true; enable = true;

View file

@ -1,8 +0,0 @@
{
config,
lib,
pkgs,
inputs,
...
}: {
}

View file

@ -1,11 +1,8 @@
{pkgs, ...}: { {pkgs, ...}: {
services = { services.displayManager.sddm.enable = true;
displayManager.sddm.enable = true; services.desktopManager.plasma6.enable = true;
desktopManager.plasma6.enable = true;
};
environment = { environment.systemPackages = with pkgs.kdePackages; [
systemPackages = with pkgs.kdePackages; [
kate kate
bluez-qt bluez-qt
kalk kalk
@ -15,6 +12,5 @@
kmail kmail
ktorrent ktorrent
]; ];
plasma6.excludePackages = with pkgs.kdePackages; [discover]; environment.plasma6.excludePackages = with pkgs.kdePackages; [discover];
};
} }

View file

@ -6,15 +6,13 @@
USER_ID = 1000; USER_ID = 1000;
KEY_FILE = "id_ed25519"; KEY_FILE = "id_ed25519";
in { in {
users = { users.users.coyote = {
users.coyote = {
isNormalUser = true; isNormalUser = true;
description = "coyote"; description = "coyote";
extraGroups = ["wheel" "networkmanager"]; extraGroups = ["wheel" "networkmanager"];
uid = USER_ID; uid = USER_ID;
}; };
defaultUserShell = pkgs.unstable.fish; users.defaultUserShell = pkgs.unstable.fish;
};
environment.sessionVariables.SSH_AUTH_SOCK = "/run/user/${builtins.toString USER_ID}/ssh-agent"; environment.sessionVariables.SSH_AUTH_SOCK = "/run/user/${builtins.toString USER_ID}/ssh-agent";
@ -31,11 +29,4 @@ in {
RestartSec = 1; RestartSec = 1;
}; };
}; };
programs = {
obs-studio.enableVirtualCamera = true;
ssh.startAgent = true;
starship.transientPrompt.enable = true;
starship.transientPrompt.left = "starship module character";
};
} }

View file

@ -6,15 +6,14 @@
(name: builtins.match ".*\\.nix" name != null) (name: builtins.match ".*\\.nix" name != null)
(builtins.attrNames (builtins.readDir programsDir)) (builtins.attrNames (builtins.readDir programsDir))
); );
in programsImports; in
programsImports;
home = { home.stateVersion = "26.05"; # I hope you know what you're doing. :)
stateVersion = "26.05"; # I hope you know what you're doing. :) home.username = "coyote";
username = "coyote"; home.homeDirectory = "/home/coyote";
homeDirectory = "/home/coyote"; home.shell.enableShellIntegration = true;
shell.enableShellIntegration = true; home.packages = with pkgs; [
packages = with pkgs; [
# programs # programs
tdf tdf
# productivity # productivity
@ -44,9 +43,26 @@
# devel # devel
unstable.lazygit unstable.lazygit
]; ];
};
programs = { programs = {
tmux = {
enable = true;
clock24 = true;
baseIndex = 1;
shortcut = "a";
keyMode = "vi";
terminal = "screen-256color";
escapeTime = 0;
extraConfig = ''
set -g pane-base-index 1
set-window-option -g pane-base-index 1
set-option -g renumber-windows on
set-option -g status-right "\"#W\""
set -ga terminal-overrides ",*:RGB"
set -g mouse on
set -g set-clipboard on
'';
};
git = { git = {
enable = true; enable = true;
settings = { settings = {