feat: add nixos configuration
This commit is contained in:
parent
f0ed8873f6
commit
52b53c8069
14 changed files with 272 additions and 2 deletions
18
nixos/modules/desktop.nix
Normal file
18
nixos/modules/desktop.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
|
||||
services.displayManager.sessionPackages = [ pkgs.hyprland ];
|
||||
|
||||
programs.throne.enable = true;
|
||||
programs.throne.tunMode.enable = true;
|
||||
}
|
||||
23
nixos/modules/hardware.nix
Normal file
23
nixos/modules/hardware.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
|
||||
hardware.nvidia = {
|
||||
modesetting.enable = true;
|
||||
open = true;
|
||||
nvidiaSettings = true;
|
||||
};
|
||||
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
};
|
||||
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
pulse.enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
};
|
||||
}
|
||||
10
nixos/modules/packages/default.nix
Normal file
10
nixos/modules/packages/default.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./desktop.nix
|
||||
./development.nix
|
||||
./shell.nix
|
||||
./utilities.nix
|
||||
];
|
||||
}
|
||||
16
nixos/modules/packages/desktop.nix
Normal file
16
nixos/modules/packages/desktop.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
adwaita-icon-theme
|
||||
firefox
|
||||
grim
|
||||
hyprpaper
|
||||
kitty
|
||||
mako
|
||||
slurp
|
||||
waybar
|
||||
wl-clipboard
|
||||
wofi
|
||||
];
|
||||
}
|
||||
29
nixos/modules/packages/development.nix
Normal file
29
nixos/modules/packages/development.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{ codexPkgs, pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
clang
|
||||
cmake
|
||||
codexPkgs.codex
|
||||
gcc
|
||||
git
|
||||
gitui
|
||||
meson
|
||||
neovim
|
||||
ninja
|
||||
tree-sitter
|
||||
vim
|
||||
];
|
||||
|
||||
systemd.user.services.codex-background-server = {
|
||||
description = "Codex background app server";
|
||||
wantedBy = [ "default.target" ];
|
||||
unitConfig.ConditionUser = "hhhh";
|
||||
serviceConfig = {
|
||||
ExecStart = "/run/current-system/sw/bin/codex app-server --listen unix://";
|
||||
WorkingDirectory = "%h";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 3;
|
||||
};
|
||||
};
|
||||
}
|
||||
17
nixos/modules/packages/shell.nix
Normal file
17
nixos/modules/packages/shell.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
atuin
|
||||
blesh
|
||||
direnv
|
||||
eza
|
||||
fd
|
||||
fzf
|
||||
ripgrep
|
||||
starship
|
||||
zoxide
|
||||
];
|
||||
|
||||
environment.etc."blesh/ble.sh".source = "${pkgs.blesh}/share/blesh/ble.sh";
|
||||
}
|
||||
11
nixos/modules/packages/utilities.nix
Normal file
11
nixos/modules/packages/utilities.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
curl
|
||||
tree
|
||||
unzip
|
||||
wget
|
||||
zip
|
||||
];
|
||||
}
|
||||
18
nixos/modules/system.nix
Normal file
18
nixos/modules/system.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
security.polkit.enable = true;
|
||||
services.openssh.enable = true;
|
||||
}
|
||||
12
nixos/modules/users.nix
Normal file
12
nixos/modules/users.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
users.users.hhhh = {
|
||||
isNormalUser = true;
|
||||
description = "main";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue