mirror of
https://github.com/LinuxBeginnings/NixOS-Hyprland.git
synced 2026-01-11 15:01:01 -03:00
nix formatted with Alejandra
On branch main Your branch is up to date with 'origin/main'. Changes to be committed: modified: flake.nix modified: hosts/default/config.nix modified: hosts/default/hardware.nix modified: hosts/default/packages-fonts.nix modified: hosts/default/users.nix modified: hosts/default/variables.nix modified: hosts/jak-hl/config.nix modified: hosts/jak-hl/hardware.nix modified: hosts/jak-hl/packages-fonts.nix modified: hosts/jak-hl/users.nix modified: hosts/jak-hl/variables.nix modified: hosts/macbook/config.nix modified: hosts/macbook/hardware.nix modified: hosts/macbook/packages-fonts.nix modified: hosts/macbook/users.nix modified: hosts/macbook/variables.nix modified: hosts/nixos-test/config.nix modified: hosts/nixos-test/hardware.nix modified: hosts/nixos-test/packages-fonts.nix modified: hosts/nixos-test/users.nix modified: hosts/nixos-test/variables.nix modified: hosts/nixos/config.nix modified: hosts/nixos/hardware.nix modified: hosts/nixos/packages-fonts.nix modified: hosts/nixos/users.nix modified: hosts/nixos/variables.nix modified: modules/amd-drivers.nix modified: modules/fonts.nix modified: modules/home/cli/bat.nix modified: modules/home/cli/bottom.nix modified: modules/home/cli/btop.nix modified: modules/home/cli/eza.nix modified: modules/home/cli/fzf.nix modified: modules/home/cli/git.nix modified: modules/home/cli/htop.nix modified: modules/home/cli/tealdeer.nix modified: modules/home/default.nix modified: modules/home/editors/nixvim.nix modified: modules/home/overview.nix modified: modules/home/terminals/ghostty.nix modified: modules/home/terminals/tmux.nix modified: modules/intel-drivers.nix modified: modules/local-hardware-clock.nix modified: modules/ly.nix modified: modules/nh.nix modified: modules/nvidia-drivers.nix modified: modules/nvidia-prime-drivers.nix modified: modules/overlays.nix modified: modules/packages.nix modified: modules/portals.nix modified: modules/quickshell.nix modified: modules/theme.nix modified: modules/vm-guest-services.nix
This commit is contained in:
132
flake.nix
132
flake.nix
@@ -26,77 +26,73 @@
|
||||
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
outputs = inputs @ {
|
||||
self,
|
||||
nixpkgs,
|
||||
ags,
|
||||
alejandra,
|
||||
...
|
||||
}: let
|
||||
system = "x86_64-linux";
|
||||
host = "jak-hl";
|
||||
username = "dwilliams";
|
||||
|
||||
outputs =
|
||||
inputs@{ self
|
||||
, nixpkgs
|
||||
, ags
|
||||
, alejandra
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
host = "jak-hl";
|
||||
username = "dwilliams";
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
"${host}" = nixpkgs.lib.nixosSystem rec {
|
||||
specialArgs = {
|
||||
inherit system;
|
||||
inherit inputs;
|
||||
inherit username;
|
||||
inherit host;
|
||||
};
|
||||
modules = [
|
||||
./hosts/${host}/config.nix
|
||||
# inputs.distro-grub-themes.nixosModules.${system}.default
|
||||
./modules/overlays.nix # nixpkgs overlays (CMake policy fixes)
|
||||
./modules/quickshell.nix # quickshell module
|
||||
./modules/packages.nix # Software packages
|
||||
# Allow broken packages (temporary fix for broken CUDA in nixos-unstable)
|
||||
{ nixpkgs.config.allowBroken = true; }
|
||||
./modules/fonts.nix # Fonts packages
|
||||
./modules/portals.nix # portal
|
||||
./modules/theme.nix # Set dark theme
|
||||
./modules/ly.nix # ly greater with matrix animation
|
||||
./modules/nh.nix # nix helper
|
||||
inputs.catppuccin.nixosModules.catppuccin
|
||||
# Integrate Home Manager as a NixOS module
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "hm-bak";
|
||||
|
||||
# Ensure HM modules can access flake inputs (e.g., inputs.nixvim)
|
||||
home-manager.extraSpecialArgs = { inherit inputs system username host; };
|
||||
|
||||
home-manager.users.${username} = {
|
||||
home.username = username;
|
||||
home.homeDirectory = "/home/${username}";
|
||||
home.stateVersion = "24.05";
|
||||
|
||||
# Import your copied HM modules
|
||||
imports = [
|
||||
./modules/home/default.nix
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
# Code formatter
|
||||
formatter.x86_64-linux = alejandra.defaultPackage.x86_64-linux;
|
||||
};
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
"${host}" = nixpkgs.lib.nixosSystem rec {
|
||||
specialArgs = {
|
||||
inherit system;
|
||||
inherit inputs;
|
||||
inherit username;
|
||||
inherit host;
|
||||
};
|
||||
modules = [
|
||||
./hosts/${host}/config.nix
|
||||
# inputs.distro-grub-themes.nixosModules.${system}.default
|
||||
./modules/overlays.nix # nixpkgs overlays (CMake policy fixes)
|
||||
./modules/quickshell.nix # quickshell module
|
||||
./modules/packages.nix # Software packages
|
||||
# Allow broken packages (temporary fix for broken CUDA in nixos-unstable)
|
||||
{nixpkgs.config.allowBroken = true;}
|
||||
./modules/fonts.nix # Fonts packages
|
||||
./modules/portals.nix # portal
|
||||
./modules/theme.nix # Set dark theme
|
||||
./modules/ly.nix # ly greater with matrix animation
|
||||
./modules/nh.nix # nix helper
|
||||
inputs.catppuccin.nixosModules.catppuccin
|
||||
# Integrate Home Manager as a NixOS module
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "hm-bak";
|
||||
|
||||
# Ensure HM modules can access flake inputs (e.g., inputs.nixvim)
|
||||
home-manager.extraSpecialArgs = {inherit inputs system username host;};
|
||||
|
||||
home-manager.users.${username} = {
|
||||
home.username = username;
|
||||
home.homeDirectory = "/home/${username}";
|
||||
home.stateVersion = "24.05";
|
||||
|
||||
# Import your copied HM modules
|
||||
imports = [
|
||||
./modules/home/default.nix
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
# Code formatter
|
||||
formatter.x86_64-linux = alejandra.defaultPackage.x86_64-linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main default config
|
||||
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
}: let
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
@@ -52,7 +47,7 @@ in
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = [ ];
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
# Needed For Some Steam Games
|
||||
@@ -129,7 +124,7 @@ in
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "${host}";
|
||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
@@ -228,11 +223,10 @@ in
|
||||
# dataDir = "/home/${username}";
|
||||
# configDir = "/home/${username}/.config/syncthing";
|
||||
#};
|
||||
|
||||
};
|
||||
|
||||
systemd.services.flatpak-repo = {
|
||||
path = [ pkgs.flatpak ];
|
||||
path = [pkgs.flatpak];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
@@ -315,8 +309,8 @@ in
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
||||
@@ -1,43 +1,47 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/7acb21f5-c4a7-462a-91db-e1a3611f8525";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/7acb21f5-c4a7-462a-91db-e1a3611f8525";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/bin" =
|
||||
{ device = "/usr/bin";
|
||||
fsType = "none";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
fileSystems."/bin" = {
|
||||
device = "/usr/bin";
|
||||
fsType = "none";
|
||||
options = ["bind"];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/84B3-1BC0";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/84B3-1BC0";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
fileSystems."/mnt/nas" =
|
||||
{ device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
};
|
||||
fileSystems."/mnt/nas" = {
|
||||
device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/5c3ee7b1-89ff-4a74-b39f-fac8f15eef99"; }
|
||||
];
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/5c3ee7b1-89ff-4a74-b39f-fac8f15eef99";}
|
||||
];
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
}
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Packages for this host only
|
||||
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
|
||||
{pkgs, ...}: let
|
||||
python-packages = pkgs.python3.withPackages (
|
||||
ps: with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
ps:
|
||||
with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages =
|
||||
@@ -26,14 +21,11 @@ in
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
||||
steam = {
|
||||
enable = false;
|
||||
gamescopeSession.enable = false;
|
||||
remotePlay.openFirewall = false;
|
||||
dedicatedServer.openFirewall = false;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Users - NOTE: Packages defined on this will be on current user only
|
||||
|
||||
{ pkgs, username, ... }:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users = {
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in {
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
users."${username}" = {
|
||||
homeMode = "755";
|
||||
@@ -19,27 +19,27 @@ in
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"input"
|
||||
"video"
|
||||
"input"
|
||||
"audio"
|
||||
];
|
||||
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
defaultUserShell = pkgs.zsh;
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
environment.systemPackages = with pkgs; [ lsd fzf git ];
|
||||
programs = {
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [zsh];
|
||||
environment.systemPackages = with pkgs; [lsd fzf git];
|
||||
programs = {
|
||||
zsh = {
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
theme = "agnoster";
|
||||
plugins = [ "git" ];
|
||||
plugins = ["git"];
|
||||
};
|
||||
# Enable zsh plugins via NixOS module options
|
||||
autosuggestions.enable = true;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Variables
|
||||
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "JaKooLit";
|
||||
|
||||
@@ -1,18 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main default config
|
||||
|
||||
{ pkgs
|
||||
, host
|
||||
, username
|
||||
, options
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
|
||||
in
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
in {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
@@ -51,7 +47,7 @@ in
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = [ ];
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
loader.systemd-boot.enable = true;
|
||||
@@ -108,7 +104,7 @@ in
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "${host}";
|
||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
@@ -198,11 +194,10 @@ in
|
||||
#};
|
||||
|
||||
#ipp-usb.enable = true;
|
||||
|
||||
};
|
||||
|
||||
systemd.services.flatpak-repo = {
|
||||
path = [ pkgs.flatpak ];
|
||||
path = [pkgs.flatpak];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
@@ -285,8 +280,8 @@ in
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
||||
@@ -1,49 +1,45 @@
|
||||
{ lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
lib,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot = {
|
||||
initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
initrd.kernelModules = [ ];
|
||||
kernelModules = [ "kvm-intel" ];
|
||||
extraModulePackages = [ ];
|
||||
initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
initrd.kernelModules = [];
|
||||
kernelModules = ["kvm-intel"];
|
||||
extraModulePackages = [];
|
||||
};
|
||||
|
||||
fileSystems = {
|
||||
"/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/7acb21f5-c4a7-462a-91db-e1a3611f8525";
|
||||
fsType = "ext4";
|
||||
};
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/7acb21f5-c4a7-462a-91db-e1a3611f8525";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
"/bin" =
|
||||
{
|
||||
device = "/usr/bin";
|
||||
fsType = "none";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
"/bin" = {
|
||||
device = "/usr/bin";
|
||||
fsType = "none";
|
||||
options = ["bind"];
|
||||
};
|
||||
|
||||
"/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/84B3-1BC0";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/84B3-1BC0";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
"/mnt/nas" =
|
||||
{
|
||||
device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
options = [ "rw" "bg" "soft" "tcp" "_netdev" ];
|
||||
};
|
||||
"/mnt/nas" = {
|
||||
device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
options = ["rw" "bg" "soft" "tcp" "_netdev"];
|
||||
};
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[{ device = "/dev/disk/by-uuid/5c3ee7b1-89ff-4a74-b39f-fac8f15eef99"; }];
|
||||
swapDevices = [{device = "/dev/disk/by-uuid/5c3ee7b1-89ff-4a74-b39f-fac8f15eef99";}];
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
}
|
||||
|
||||
@@ -1,18 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Packages for this host only
|
||||
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
|
||||
{pkgs, ...}: let
|
||||
python-packages = pkgs.python3.withPackages (
|
||||
ps: with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
ps:
|
||||
with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages =
|
||||
@@ -25,14 +21,11 @@ in
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
||||
steam = {
|
||||
enable = false;
|
||||
gamescopeSession.enable = false;
|
||||
remotePlay.openFirewall = false;
|
||||
dedicatedServer.openFirewall = false;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Users - NOTE: Packages defined on this will be on current user only
|
||||
|
||||
{ pkgs, username, ... }:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users = {
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in {
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
users."${username}" = {
|
||||
homeMode = "755";
|
||||
@@ -19,27 +19,27 @@ in
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"input"
|
||||
"video"
|
||||
"input"
|
||||
"audio"
|
||||
];
|
||||
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
defaultUserShell = pkgs.zsh;
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
environment.systemPackages = with pkgs; [ lsd fzf git ];
|
||||
programs = {
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [zsh];
|
||||
environment.systemPackages = with pkgs; [lsd fzf git];
|
||||
programs = {
|
||||
zsh = {
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
theme = "agnoster";
|
||||
plugins = [ "git" ];
|
||||
plugins = ["git"];
|
||||
};
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Variables
|
||||
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "JaKooLit";
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main default config
|
||||
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
}: let
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
@@ -52,7 +47,7 @@ in
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = [ ];
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
# Needed For Some Steam Games
|
||||
@@ -129,7 +124,7 @@ in
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "${host}";
|
||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
@@ -228,13 +223,12 @@ in
|
||||
# dataDir = "/home/${username}";
|
||||
# configDir = "/home/${username}/.config/syncthing";
|
||||
#};
|
||||
|
||||
};
|
||||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
systemd.services.flatpak-repo = {
|
||||
path = [ pkgs.flatpak ];
|
||||
path = [pkgs.flatpak];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
@@ -317,8 +311,8 @@ in
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
||||
@@ -4,9 +4,7 @@
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
@@ -21,32 +19,32 @@
|
||||
"sr_mod"
|
||||
"sdhci_pci"
|
||||
];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/59c59bcf-7a09-4cae-b020-b885858279a7";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@" ];
|
||||
options = ["subvol=@"];
|
||||
};
|
||||
|
||||
fileSystems."/nix" = {
|
||||
device = "/dev/disk/by-uuid/59c59bcf-7a09-4cae-b020-b885858279a7";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@nix" ];
|
||||
options = ["subvol=@nix"];
|
||||
};
|
||||
|
||||
fileSystems."/.snapshots" = {
|
||||
device = "/dev/disk/by-uuid/59c59bcf-7a09-4cae-b020-b885858279a7";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@snapshots" ];
|
||||
options = ["subvol=@snapshots"];
|
||||
};
|
||||
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/59c59bcf-7a09-4cae-b020-b885858279a7";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@home" ];
|
||||
options = ["subvol=@home"];
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
@@ -63,7 +61,7 @@
|
||||
fsType = "nfs";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
swapDevices = [];
|
||||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Packages for this host only
|
||||
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
|
||||
{pkgs, ...}: let
|
||||
python-packages = pkgs.python3.withPackages (
|
||||
ps: with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
ps:
|
||||
with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages =
|
||||
@@ -30,14 +25,11 @@ in
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
||||
steam = {
|
||||
enable = false;
|
||||
gamescopeSession.enable = false;
|
||||
remotePlay.openFirewall = false;
|
||||
dedicatedServer.openFirewall = false;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Users - NOTE: Packages defined on this will be on current user only
|
||||
|
||||
{ pkgs, username, ... }:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users = {
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in {
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
users."${username}" = {
|
||||
homeMode = "755";
|
||||
@@ -19,27 +19,27 @@ in
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"input"
|
||||
"video"
|
||||
"input"
|
||||
"audio"
|
||||
];
|
||||
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
defaultUserShell = pkgs.zsh;
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
environment.systemPackages = with pkgs; [ lsd fzf git ];
|
||||
programs = {
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [zsh];
|
||||
environment.systemPackages = with pkgs; [lsd fzf git];
|
||||
programs = {
|
||||
zsh = {
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
theme = "agnoster";
|
||||
plugins = [ "git" ];
|
||||
plugins = ["git"];
|
||||
};
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Variables
|
||||
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "JaKooLit";
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main default config
|
||||
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
}: let
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
@@ -52,7 +47,7 @@ in
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = [ ];
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
# Needed For Some Steam Games
|
||||
@@ -129,7 +124,7 @@ in
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "${host}";
|
||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
@@ -228,11 +223,10 @@ in
|
||||
# dataDir = "/home/${username}";
|
||||
# configDir = "/home/${username}/.config/syncthing";
|
||||
#};
|
||||
|
||||
};
|
||||
|
||||
systemd.services.flatpak-repo = {
|
||||
path = [ pkgs.flatpak ];
|
||||
path = [pkgs.flatpak];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
@@ -315,8 +309,8 @@ in
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
||||
@@ -1,38 +1,42 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/e5fc1006-4d0b-41db-8c43-22b3cb8110c6";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/e5fc1006-4d0b-41db-8c43-22b3cb8110c6";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/9287-3738";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/9287-3738";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
fileSystems."/mnt/nas" =
|
||||
{ device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
options = [ "rw" "bg" "soft" "tcp" "_netdev" ];
|
||||
};
|
||||
fileSystems."/mnt/nas" = {
|
||||
device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
options = ["rw" "bg" "soft" "tcp" "_netdev"];
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/a6e9dd8b-6767-44f4-84fa-30d02d90d087"; }
|
||||
];
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/a6e9dd8b-6767-44f4-84fa-30d02d90d087";}
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
||||
@@ -1,18 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Packages for this host only
|
||||
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
|
||||
{pkgs, ...}: let
|
||||
python-packages = pkgs.python3.withPackages (
|
||||
ps: with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
ps:
|
||||
with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages =
|
||||
@@ -25,14 +21,11 @@ in
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
||||
steam = {
|
||||
enable = false;
|
||||
gamescopeSession.enable = false;
|
||||
remotePlay.openFirewall = false;
|
||||
dedicatedServer.openFirewall = false;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Users - NOTE: Packages defined on this will be on current user only
|
||||
|
||||
{ pkgs, username, ... }:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users = {
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in {
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
users."${username}" = {
|
||||
homeMode = "755";
|
||||
@@ -19,27 +19,27 @@ in
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"input"
|
||||
"video"
|
||||
"input"
|
||||
"audio"
|
||||
];
|
||||
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
defaultUserShell = pkgs.zsh;
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
environment.systemPackages = with pkgs; [ lsd fzf git ];
|
||||
programs = {
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [zsh];
|
||||
environment.systemPackages = with pkgs; [lsd fzf git];
|
||||
programs = {
|
||||
zsh = {
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
theme = "agnoster";
|
||||
plugins = [ "git" ];
|
||||
plugins = ["git"];
|
||||
};
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Variables
|
||||
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "JaKooLit";
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main default config
|
||||
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
}: let
|
||||
inherit (import ./variables.nix) keyboardLayout;
|
||||
|
||||
in
|
||||
{
|
||||
in {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
@@ -52,7 +47,7 @@ in
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = [ ];
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
# Needed For Some Steam Games
|
||||
@@ -129,7 +124,7 @@ in
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "${host}";
|
||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
@@ -229,13 +224,12 @@ in
|
||||
# dataDir = "/home/${username}";
|
||||
# configDir = "/home/${username}/.config/syncthing";
|
||||
#};
|
||||
|
||||
};
|
||||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
systemd.services.flatpak-repo = {
|
||||
path = [ pkgs.flatpak ];
|
||||
path = [pkgs.flatpak];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
@@ -318,8 +312,8 @@ in
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
||||
@@ -1,37 +1,41 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/e5fc1006-4d0b-41db-8c43-22b3cb8110c6";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/e5fc1006-4d0b-41db-8c43-22b3cb8110c6";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/9287-3738";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/9287-3738";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
fileSystems."/mnt/nas" =
|
||||
{ device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
};
|
||||
fileSystems."/mnt/nas" = {
|
||||
device = "192.168.40.11:/volume1/DiskStation54TB";
|
||||
fsType = "nfs";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/a6e9dd8b-6767-44f4-84fa-30d02d90d087"; }
|
||||
];
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/a6e9dd8b-6767-44f4-84fa-30d02d90d087";}
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Packages and Fonts config including the "programs" options
|
||||
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
|
||||
{pkgs, ...}: let
|
||||
python-packages = pkgs.python3.withPackages (
|
||||
ps: with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
ps:
|
||||
with ps; [
|
||||
requests
|
||||
pyquery # needed for hyprland-dots Weather script
|
||||
]
|
||||
);
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages =
|
||||
@@ -30,14 +25,11 @@ in
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
||||
steam = {
|
||||
enable = false;
|
||||
gamescopeSession.enable = false;
|
||||
remotePlay.openFirewall = false;
|
||||
dedicatedServer.openFirewall = false;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Users - NOTE: Packages defined on this will be on current user only
|
||||
|
||||
{ pkgs, username, ... }:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users = {
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}: let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in {
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
users."${username}" = {
|
||||
homeMode = "755";
|
||||
@@ -19,41 +19,41 @@ in
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
"video"
|
||||
"input"
|
||||
"video"
|
||||
"input"
|
||||
"audio"
|
||||
];
|
||||
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
# define user packages here
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
defaultUserShell = pkgs.zsh;
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [ zsh ];
|
||||
environment.systemPackages = with pkgs; [ lsd fzf git ];
|
||||
|
||||
};
|
||||
|
||||
environment.shells = with pkgs; [zsh];
|
||||
environment.systemPackages = with pkgs; [lsd fzf git];
|
||||
|
||||
programs = {
|
||||
# Zsh configuration
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
# Zsh configuration
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
ohMyZsh = {
|
||||
enable = true;
|
||||
plugins = ["git"];
|
||||
theme = "agnoster";
|
||||
};
|
||||
|
||||
theme = "agnoster";
|
||||
};
|
||||
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
|
||||
promptInit = ''
|
||||
fastfetch -c $HOME/.config/fastfetch/config-compact.jsonc
|
||||
|
||||
#pokemon colorscripts like. Make sure to install krabby package
|
||||
#krabby random --no-mega --no-gmax --no-regional --no-title -s;
|
||||
#krabby random --no-mega --no-gmax --no-regional --no-title -s;
|
||||
|
||||
# Set-up icons for files/directories in terminal using lsd
|
||||
alias ls='lsd'
|
||||
@@ -67,7 +67,7 @@ in
|
||||
HISTSIZE=10000;
|
||||
SAVEHIST=10000;
|
||||
setopt appendhistory;
|
||||
'';
|
||||
};
|
||||
};
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Variables
|
||||
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "JaKooLit";
|
||||
|
||||
@@ -1,25 +1,27 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.drivers.amdgpu;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.drivers.amdgpu;
|
||||
in {
|
||||
options.drivers.amdgpu = {
|
||||
enable = mkEnableOption "Enable AMD Drivers";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ];
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
|
||||
systemd.tmpfiles.rules = ["L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"];
|
||||
services.xserver.videoDrivers = ["amdgpu"];
|
||||
|
||||
# OpenGL
|
||||
hardware.graphics = {
|
||||
extraPackages = with pkgs; [
|
||||
libva
|
||||
libva-utils
|
||||
];
|
||||
libva-utils
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
{pkgs, ...}: {
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
dejavu_fonts
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ pkgs
|
||||
, lib
|
||||
, ...
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.bat = {
|
||||
enable = true;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }: {
|
||||
{...}: {
|
||||
programs.bottom = {
|
||||
enable = true;
|
||||
settings = {
|
||||
@@ -7,13 +7,13 @@
|
||||
cpu = {
|
||||
all_entry_color = "#f5e0dc";
|
||||
avg_entry_color = "#eba0ac";
|
||||
cpu_core_colors = [ "#f38ba8" "#fab387" "#f9e2af" "#a6e3a1" "#74c7ec" "#cba6f7" ];
|
||||
cpu_core_colors = ["#f38ba8" "#fab387" "#f9e2af" "#a6e3a1" "#74c7ec" "#cba6f7"];
|
||||
};
|
||||
memory = {
|
||||
ram_color = "#a6e3a1";
|
||||
cache_color = "#f38ba8";
|
||||
swap_color = "#fab387";
|
||||
gpu_colors = [ "#74c7ec" "#cba6f7" "#f38ba8" "#fab387" "#f9e2af" "#a6e3a1" ];
|
||||
gpu_colors = ["#74c7ec" "#cba6f7" "#f38ba8" "#fab387" "#f9e2af" "#a6e3a1"];
|
||||
arc_color = "#89dceb";
|
||||
};
|
||||
network = {
|
||||
@@ -28,19 +28,22 @@
|
||||
low_battery_color = "#f38ba8";
|
||||
};
|
||||
tables = {
|
||||
headers = { color = "#f5e0dc"; };
|
||||
headers = {color = "#f5e0dc";};
|
||||
};
|
||||
graphs = {
|
||||
graph_color = "#a6adc8";
|
||||
legend_text = { color = "#a6adc8"; };
|
||||
legend_text = {color = "#a6adc8";};
|
||||
};
|
||||
widgets = {
|
||||
border_color = "#585b70";
|
||||
selected_border_color = "#f5c2e7";
|
||||
widget_title = { color = "#f2cdcd"; };
|
||||
text = { color = "#cdd6f4"; };
|
||||
selected_text = { color = "#11111b"; bg_color = "#cba6f7"; };
|
||||
disabled_text = { color = "#1e1e2e"; };
|
||||
widget_title = {color = "#f2cdcd";};
|
||||
text = {color = "#cdd6f4";};
|
||||
selected_text = {
|
||||
color = "#11111b";
|
||||
bg_color = "#cba6f7";
|
||||
};
|
||||
disabled_text = {color = "#1e1e2e";};
|
||||
};
|
||||
};
|
||||
flags.group_processes = true;
|
||||
@@ -48,14 +51,14 @@
|
||||
{
|
||||
ratio = 2;
|
||||
child = [
|
||||
{ type = "cpu"; }
|
||||
{ type = "temp"; }
|
||||
{type = "cpu";}
|
||||
{type = "temp";}
|
||||
];
|
||||
}
|
||||
{
|
||||
ratio = 2;
|
||||
child = [
|
||||
{ type = "network"; }
|
||||
{type = "network";}
|
||||
];
|
||||
}
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }: {
|
||||
{pkgs, ...}: {
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
package = pkgs.btop.override {
|
||||
@@ -19,5 +19,4 @@
|
||||
io_graph_combined = false;
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# Eza is a ls replacement
|
||||
|
||||
{
|
||||
programs.eza = {
|
||||
enable = true;
|
||||
|
||||
@@ -1,15 +1,10 @@
|
||||
# Fzf is a general-purpose command-line fuzzy finder.
|
||||
{
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
{lib, ...}: let
|
||||
# Static Catppuccin Mocha accents (no Stylix dependency)
|
||||
accent = "#89b4fa";
|
||||
foreground = "#cdd6f4";
|
||||
muted = "#6c7086";
|
||||
in
|
||||
{
|
||||
in {
|
||||
programs.fzf = {
|
||||
enable = true;
|
||||
enableZshIntegration = false;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{ lib, ... }:
|
||||
{
|
||||
{lib, ...}: {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, ... }: {
|
||||
{config, ...}: {
|
||||
programs.htop = {
|
||||
enable = true;
|
||||
settings =
|
||||
@@ -25,18 +25,18 @@
|
||||
highlight_threads = 1;
|
||||
}
|
||||
// (with config.lib.htop;
|
||||
leftMeters [
|
||||
(bar "AllCPUs2")
|
||||
(bar "Memory")
|
||||
(bar "Swap")
|
||||
(text "Zram")
|
||||
])
|
||||
leftMeters [
|
||||
(bar "AllCPUs2")
|
||||
(bar "Memory")
|
||||
(bar "Swap")
|
||||
(text "Zram")
|
||||
])
|
||||
// (with config.lib.htop;
|
||||
rightMeters [
|
||||
(text "Tasks")
|
||||
(text "LoadAverage")
|
||||
(text "Uptime")
|
||||
(text "Systemd")
|
||||
]);
|
||||
rightMeters [
|
||||
(text "Tasks")
|
||||
(text "LoadAverage")
|
||||
(text "Uptime")
|
||||
(text "Systemd")
|
||||
]);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }: {
|
||||
{...}: {
|
||||
programs.tealdeer = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
{...}: {
|
||||
imports = [
|
||||
./terminals/tmux.nix
|
||||
./terminals/ghostty.nix
|
||||
@@ -16,6 +14,4 @@
|
||||
./yazi
|
||||
./overview.nix
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,16 +1,15 @@
|
||||
{ inputs
|
||||
, config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
# Use Stylix palette if present; otherwise fall back to Catppuccin Mocha background
|
||||
notifyBg = lib.attrByPath [ "lib" "stylix" "colors" "base01" ] "1e1e2e" config;
|
||||
in
|
||||
{
|
||||
inputs,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
# Use Stylix palette if present; otherwise fall back to Catppuccin Mocha background
|
||||
notifyBg = lib.attrByPath ["lib" "stylix" "colors" "base01"] "1e1e2e" config;
|
||||
in {
|
||||
# Bring in Nixvim's Home Manager module so programs.nixvim options exist
|
||||
imports = [ inputs.nixvim.homeModules.nixvim ];
|
||||
imports = [inputs.nixvim.homeModules.nixvim];
|
||||
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
@@ -38,7 +37,7 @@ in
|
||||
updatetime = 200;
|
||||
cursorline = true;
|
||||
spell = true;
|
||||
spelllang = [ "en" ];
|
||||
spelllang = ["en"];
|
||||
# Send all yanks/deletes to the system clipboard (Wayland/X11)
|
||||
clipboard = "unnamedplus";
|
||||
};
|
||||
@@ -58,7 +57,7 @@ in
|
||||
lualine = {
|
||||
enable = true;
|
||||
settings = {
|
||||
options = { theme = "catppuccin"; };
|
||||
options = {theme = "catppuccin";};
|
||||
};
|
||||
};
|
||||
bufferline.enable = true;
|
||||
@@ -111,7 +110,7 @@ in
|
||||
fast_wrap = {
|
||||
enable = true;
|
||||
map = "<M-e>"; # Alt+e to fast-wrap
|
||||
chars = [ "{" "[" "(" "\"" "'" "`" ];
|
||||
chars = ["{" "[" "(" "\"" "'" "`"];
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -119,7 +118,7 @@ in
|
||||
# Terminal
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
settings = { direction = "float"; };
|
||||
settings = {direction = "float";};
|
||||
};
|
||||
|
||||
# Diagnostics UI
|
||||
@@ -173,16 +172,16 @@ in
|
||||
enable = true;
|
||||
settings = {
|
||||
formatters_by_ft = {
|
||||
nix = [ "nixpkgs_fmt" ];
|
||||
lua = [ "stylua" ];
|
||||
javascript = [ "prettierd" ];
|
||||
typescript = [ "prettierd" ];
|
||||
javascriptreact = [ "prettierd" ];
|
||||
typescriptreact = [ "prettierd" ];
|
||||
css = [ "prettierd" ];
|
||||
html = [ "prettierd" ];
|
||||
markdown = [ "prettierd" ];
|
||||
sh = [ "shfmt" ];
|
||||
nix = ["nixpkgs_fmt"];
|
||||
lua = ["stylua"];
|
||||
javascript = ["prettierd"];
|
||||
typescript = ["prettierd"];
|
||||
javascriptreact = ["prettierd"];
|
||||
typescriptreact = ["prettierd"];
|
||||
css = ["prettierd"];
|
||||
html = ["prettierd"];
|
||||
markdown = ["prettierd"];
|
||||
sh = ["shfmt"];
|
||||
};
|
||||
format_on_save = {
|
||||
lsp_fallback = true;
|
||||
@@ -196,7 +195,7 @@ in
|
||||
# Insert-mode escape
|
||||
{
|
||||
key = "jk";
|
||||
mode = [ "i" ];
|
||||
mode = ["i"];
|
||||
action = "<ESC>";
|
||||
options.desc = "Exit insert mode";
|
||||
}
|
||||
@@ -204,13 +203,13 @@ in
|
||||
# Telescope
|
||||
{
|
||||
key = "<leader>ff";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>Telescope find_files<cr>";
|
||||
options.desc = "Search files by name";
|
||||
}
|
||||
{
|
||||
key = "<leader>lg";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>Telescope live_grep<cr>";
|
||||
options.desc = "Search files by contents";
|
||||
}
|
||||
@@ -218,7 +217,7 @@ in
|
||||
# File tree (Neo-tree)
|
||||
{
|
||||
key = "<leader>fe";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>Neotree toggle<cr>";
|
||||
options.desc = "File browser toggle";
|
||||
}
|
||||
@@ -226,7 +225,7 @@ in
|
||||
# Terminal
|
||||
{
|
||||
key = "<leader>t";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>ToggleTerm<CR>";
|
||||
options.desc = "Toggle terminal";
|
||||
}
|
||||
@@ -234,13 +233,13 @@ in
|
||||
# Comment line (Doom Emacs style)
|
||||
{
|
||||
key = "<leader>.";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>lua require('Comment.api').toggle.linewise.current()<CR>";
|
||||
options.desc = "Comment line";
|
||||
}
|
||||
{
|
||||
key = "<leader>.";
|
||||
mode = [ "v" ];
|
||||
mode = ["v"];
|
||||
action = "<esc><cmd>lua require('Comment.api').toggle.linewise(vim.fn.visualmode())<CR>";
|
||||
options.desc = "Comment selection";
|
||||
}
|
||||
@@ -248,25 +247,25 @@ in
|
||||
# Diagnostics
|
||||
{
|
||||
key = "<leader>dj";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>lua vim.diagnostic.goto_next()<CR>";
|
||||
options.desc = "Go to next diagnostic";
|
||||
}
|
||||
{
|
||||
key = "<leader>dk";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>lua vim.diagnostic.goto_prev()<CR>";
|
||||
options.desc = "Go to previous diagnostic";
|
||||
}
|
||||
{
|
||||
key = "<leader>dl";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>lua vim.diagnostic.open_float()<CR>";
|
||||
options.desc = "Show diagnostic details";
|
||||
}
|
||||
{
|
||||
key = "<leader>dt";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = "<cmd>Trouble diagnostics toggle<cr>";
|
||||
options.desc = "Toggle diagnostics list";
|
||||
}
|
||||
@@ -274,14 +273,14 @@ in
|
||||
# Disable accidental F1 across modes
|
||||
{
|
||||
key = "<F1>";
|
||||
mode = [ "n" "i" "v" "x" "s" "o" "t" "c" ];
|
||||
mode = ["n" "i" "v" "x" "s" "o" "t" "c"];
|
||||
action = "<Nop>";
|
||||
options.desc = "Disable accidental F1 help";
|
||||
}
|
||||
# Help mappings
|
||||
{
|
||||
key = "<leader>h";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = ":help<Space>";
|
||||
options = {
|
||||
desc = "Open :help prompt";
|
||||
@@ -290,7 +289,7 @@ in
|
||||
}
|
||||
{
|
||||
key = "<leader>H";
|
||||
mode = [ "n" ];
|
||||
mode = ["n"];
|
||||
action = ":help <C-r><C-w><CR>";
|
||||
options.desc = "Help for word under cursor";
|
||||
}
|
||||
|
||||
@@ -1,25 +1,27 @@
|
||||
{ config, lib, ... }:
|
||||
let
|
||||
overviewSource = ./overview;
|
||||
in
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
overviewSource = ./overview;
|
||||
in {
|
||||
# Quickshell-overview is a Qt6 QML app for Hyprland workspace overview
|
||||
# Toggled via: SUPER + TAB (added to Hyprland config separately)
|
||||
# Started via: exec-once = qs -c overview (added to Hyprland config separately)
|
||||
|
||||
# Seed the Quickshell overview code into ~/.config/quickshell/overview
|
||||
# Copy (not symlink) so QML module resolution works and users can edit files
|
||||
home.activation.seedOverviewCode = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||
home.activation.seedOverviewCode = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||
set -eu
|
||||
DEST="$HOME/.config/quickshell/overview"
|
||||
SRC="${overviewSource}"
|
||||
|
||||
|
||||
mkdir -p "$HOME/.config/quickshell"
|
||||
# Remove old directory and copy fresh (ensures QML updates are picked up)
|
||||
rm -rf "$DEST"
|
||||
cp -R "$SRC" "$DEST"
|
||||
chmod -R u+rwX "$DEST"
|
||||
|
||||
|
||||
# Remove default shell.qml if it exists (prevents named config detection)
|
||||
# Quickshell disables subdirectory detection if ~/.config/quickshell/shell.qml exists
|
||||
if [ -f "$HOME/.config/quickshell/shell.qml" ]; then
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ pkgs
|
||||
, config
|
||||
, ...
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
# Install Ghostty theme(s) so referenced names resolve even if the package's share/themes doesn't include them
|
||||
home.file = {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Tmux is a terminal multiplexer that allows you to run multiple terminal sessions in a single window.
|
||||
{ pkgs, ... }: {
|
||||
{pkgs, ...}: {
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
mouse = true;
|
||||
@@ -20,7 +20,7 @@
|
||||
unbind %
|
||||
unbind '"'
|
||||
|
||||
# VIM Motion realated settings
|
||||
# VIM Motion realated settings
|
||||
bind-key h select-pane -L
|
||||
bind-key j select-pane -D
|
||||
bind-key k select-pane -U
|
||||
@@ -56,8 +56,8 @@
|
||||
|
||||
# Start windows and panes index at 1, not 0.
|
||||
setw -g pane-base-index 1
|
||||
|
||||
# Creating panes
|
||||
|
||||
# Creating panes
|
||||
bind-key "|" split-window -h -c "#{pane_current_path}"
|
||||
bind-key "\\" split-window -fh -c "#{pane_current_path}"
|
||||
|
||||
@@ -148,6 +148,5 @@
|
||||
|
||||
|
||||
'';
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,18 +1,20 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.drivers.intel;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.drivers.intel;
|
||||
in {
|
||||
options.drivers.intel = {
|
||||
enable = mkEnableOption "Enable Intel Graphics Drivers";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
||||
vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;};
|
||||
};
|
||||
|
||||
# OpenGL
|
||||
@@ -21,7 +23,7 @@ in
|
||||
intel-media-driver
|
||||
libvdpau-va-gl
|
||||
libva
|
||||
libva-utils
|
||||
libva-utils
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.hardware-clock;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.local.hardware-clock;
|
||||
in {
|
||||
options.local.hardware-clock = {
|
||||
enable = mkEnableOption "Change Hardware Clock To Local Time";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable { time.hardwareClockInLocalTime = true; };
|
||||
config = mkIf cfg.enable {time.hardwareClockInLocalTime = true;};
|
||||
}
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
# Ensure greetd is not enabled anywhere by default (hosts can override if needed)
|
||||
services.greetd.enable = lib.mkDefault false;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }: {
|
||||
{pkgs, ...}: {
|
||||
programs.nh = {
|
||||
enable = true;
|
||||
clean = {
|
||||
|
||||
@@ -1,63 +1,65 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.drivers.nvidia;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.drivers.nvidia;
|
||||
in {
|
||||
options.drivers.nvidia = {
|
||||
enable = mkEnableOption "Enable Nvidia Drivers";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
vaapiVdpau
|
||||
libvdpau
|
||||
libvdpau-va-gl
|
||||
nvidia-vaapi-driver
|
||||
vdpauinfo
|
||||
libva
|
||||
libva-utils
|
||||
];
|
||||
};
|
||||
services.xserver.videoDrivers = ["nvidia"];
|
||||
|
||||
hardware.nvidia = {
|
||||
# Modesetting is required.
|
||||
modesetting.enable = true;
|
||||
|
||||
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
|
||||
powerManagement.enable = false;
|
||||
|
||||
# Fine-grained power management. Turns off GPU when not in use.
|
||||
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
||||
powerManagement.finegrained = false;
|
||||
|
||||
#dynamicBoost.enable = true; # Dynamic Boost
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
vaapiVdpau
|
||||
libvdpau
|
||||
libvdpau-va-gl
|
||||
nvidia-vaapi-driver
|
||||
vdpauinfo
|
||||
libva
|
||||
libva-utils
|
||||
];
|
||||
};
|
||||
|
||||
nvidiaPersistenced = false;
|
||||
hardware.nvidia = {
|
||||
# Modesetting is required.
|
||||
modesetting.enable = true;
|
||||
|
||||
# Use the NVidia open source kernel module (not to be confused with the
|
||||
# independent third-party "nouveau" open source driver).
|
||||
# Support is limited to the Turing and later architectures. Full list of
|
||||
# supported GPUs is at:
|
||||
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
||||
# Only available from driver 515.43.04+
|
||||
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
||||
open = false;
|
||||
|
||||
# Enable the Nvidia settings menu,
|
||||
# accessible via `nvidia-settings`.
|
||||
|
||||
nvidiaSettings = true;
|
||||
|
||||
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
||||
package = config.boot.kernelPackages.nvidiaPackages.latest;
|
||||
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
|
||||
powerManagement.enable = false;
|
||||
|
||||
# Fine-grained power management. Turns off GPU when not in use.
|
||||
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
||||
powerManagement.finegrained = false;
|
||||
|
||||
#dynamicBoost.enable = true; # Dynamic Boost
|
||||
|
||||
nvidiaPersistenced = false;
|
||||
|
||||
# Use the NVidia open source kernel module (not to be confused with the
|
||||
# independent third-party "nouveau" open source driver).
|
||||
# Support is limited to the Turing and later architectures. Full list of
|
||||
# supported GPUs is at:
|
||||
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
||||
# Only available from driver 515.43.04+
|
||||
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
||||
open = false;
|
||||
|
||||
# Enable the Nvidia settings menu,
|
||||
# accessible via `nvidia-settings`.
|
||||
|
||||
nvidiaSettings = true;
|
||||
|
||||
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
||||
package = config.boot.kernelPackages.nvidiaPackages.latest;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.drivers.nvidia-prime;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.drivers.nvidia-prime;
|
||||
in {
|
||||
options.drivers.nvidia-prime = {
|
||||
enable = mkEnableOption "Enable Nvidia Prime Hybrid GPU Offload";
|
||||
intelBusID = mkOption {
|
||||
|
||||
@@ -1,76 +1,90 @@
|
||||
{ inputs, ... }:
|
||||
{
|
||||
{inputs, ...}: {
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: rec {
|
||||
# Helper: provide a clean cxxopts.pc to avoid broken upstream pc requiring non-existent icu-cu
|
||||
cxxoptsPcShim = final.runCommand "cxxopts-pc-shim" {} ''
|
||||
mkdir -p $out/lib/pkgconfig
|
||||
cat > $out/lib/pkgconfig/cxxopts.pc <<'EOF'
|
||||
prefix=${final.cxxopts}
|
||||
includedir=${final.cxxopts}/include
|
||||
mkdir -p $out/lib/pkgconfig
|
||||
cat > $out/lib/pkgconfig/cxxopts.pc <<'EOF'
|
||||
prefix=${final.cxxopts}
|
||||
includedir=${final.cxxopts}/include
|
||||
|
||||
Name: cxxopts
|
||||
Description: C++ command line parser headers
|
||||
Version: ${final.cxxopts.version}
|
||||
Cflags: -I${final.cxxopts}/include
|
||||
Libs:
|
||||
Requires:
|
||||
EOF
|
||||
Name: cxxopts
|
||||
Description: C++ command line parser headers
|
||||
Version: ${final.cxxopts.version}
|
||||
Cflags: -I${final.cxxopts}/include
|
||||
Libs:
|
||||
Requires:
|
||||
EOF
|
||||
'';
|
||||
# Allow argtable to configure with newer CMake by declaring policy minimum
|
||||
argtable = prev.argtable.overrideAttrs (old: {
|
||||
cmakeFlags = (old.cmakeFlags or []) ++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
cmakeFlags =
|
||||
(old.cmakeFlags or [])
|
||||
++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
});
|
||||
|
||||
# Specifically patch the nested attribute path used by nixpkgs: antlr4_9.runtime.cpp
|
||||
# Add the policy flag and patch CMakeLists to bump minimum and force NEW policies
|
||||
antlr4_9 = prev.antlr4_9 // {
|
||||
runtime = prev.antlr4_9.runtime // {
|
||||
cpp = prev.antlr4_9.runtime.cpp.overrideAttrs (old: {
|
||||
cmakeFlags = (old.cmakeFlags or []) ++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
postPatch = (old.postPatch or "") + ''
|
||||
# Bump CMake minimum and force modern policies
|
||||
if [ -f runtime/Cpp/runtime/CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' runtime/Cpp/runtime/CMakeLists.txt
|
||||
sed -i -E 's/(cmake_policy\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/runtime/CMakeLists.txt || true
|
||||
sed -i -E 's/(CMAKE_POLICY\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/runtime/CMakeLists.txt || true
|
||||
fi
|
||||
if [ -f runtime/Cpp/CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' runtime/Cpp/CMakeLists.txt
|
||||
sed -i -E 's/(cmake_policy\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/CMakeLists.txt || true
|
||||
sed -i -E 's/(CMAKE_POLICY\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/CMakeLists.txt || true
|
||||
fi
|
||||
'';
|
||||
});
|
||||
antlr4_9 =
|
||||
prev.antlr4_9
|
||||
// {
|
||||
runtime =
|
||||
prev.antlr4_9.runtime
|
||||
// {
|
||||
cpp = prev.antlr4_9.runtime.cpp.overrideAttrs (old: {
|
||||
cmakeFlags =
|
||||
(old.cmakeFlags or [])
|
||||
++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
postPatch =
|
||||
(old.postPatch or "")
|
||||
+ ''
|
||||
# Bump CMake minimum and force modern policies
|
||||
if [ -f runtime/Cpp/runtime/CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' runtime/Cpp/runtime/CMakeLists.txt
|
||||
sed -i -E 's/(cmake_policy\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/runtime/CMakeLists.txt || true
|
||||
sed -i -E 's/(CMAKE_POLICY\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/runtime/CMakeLists.txt || true
|
||||
fi
|
||||
if [ -f runtime/Cpp/CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' runtime/Cpp/CMakeLists.txt
|
||||
sed -i -E 's/(cmake_policy\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/CMakeLists.txt || true
|
||||
sed -i -E 's/(CMAKE_POLICY\(SET CMP[0-9]+ )OLD/\1NEW/g' runtime/Cpp/CMakeLists.txt || true
|
||||
fi
|
||||
'';
|
||||
});
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Fix libvdpau-va-gl CMake minimum for modern CMake
|
||||
libvdpau-va-gl = prev.libvdpau-va-gl.overrideAttrs (old: {
|
||||
cmakeFlags = (old.cmakeFlags or []) ++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
postPatch = (old.postPatch or "") + ''
|
||||
# Bump top-level CMake minimum if present
|
||||
if [ -f CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' CMakeLists.txt || true
|
||||
fi
|
||||
'';
|
||||
cmakeFlags =
|
||||
(old.cmakeFlags or [])
|
||||
++ [
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
||||
];
|
||||
postPatch =
|
||||
(old.postPatch or "")
|
||||
+ ''
|
||||
# Bump top-level CMake minimum if present
|
||||
if [ -f CMakeLists.txt ]; then
|
||||
sed -i -E 's/cmake_minimum_required\(VERSION [0-9.]+\)/cmake_minimum_required(VERSION 3.5)/' CMakeLists.txt || true
|
||||
fi
|
||||
'';
|
||||
});
|
||||
|
||||
# Work around pamixer failing to find cxxopts via pkg-config (bogus icu-cu requirement)
|
||||
pamixer = prev.pamixer.overrideAttrs (old: {
|
||||
nativeBuildInputs = (old.nativeBuildInputs or []) ++ [ final."pkg-config" cxxoptsPcShim ];
|
||||
nativeBuildInputs = (old.nativeBuildInputs or []) ++ [final."pkg-config" cxxoptsPcShim];
|
||||
# Ensure our shim takes precedence over any other cxxopts.pc
|
||||
preConfigure = (old.preConfigure or "") + ''
|
||||
export PKG_CONFIG_PATH=${cxxoptsPcShim}/lib/pkgconfig:"$PKG_CONFIG_PATH"
|
||||
'';
|
||||
preConfigure =
|
||||
(old.preConfigure or "")
|
||||
+ ''
|
||||
export PKG_CONFIG_PATH=${cxxoptsPcShim}/lib/pkgconfig:"$PKG_CONFIG_PATH"
|
||||
'';
|
||||
});
|
||||
|
||||
})
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
{ pkgs
|
||||
, inputs
|
||||
, host
|
||||
, ...
|
||||
}:
|
||||
{
|
||||
|
||||
pkgs,
|
||||
inputs,
|
||||
host,
|
||||
...
|
||||
}: {
|
||||
programs = {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
@@ -43,7 +42,6 @@
|
||||
thunar-volman
|
||||
tumbler
|
||||
];
|
||||
|
||||
};
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
@@ -139,7 +137,7 @@
|
||||
libnotify
|
||||
libsForQt5.qtstyleplugin-kvantum # kvantum
|
||||
libsForQt5.qt5ct
|
||||
(mpv.override { scripts = [ mpvScripts.mpris ]; }) # with tray
|
||||
(mpv.override {scripts = [mpvScripts.mpris];}) # with tray
|
||||
nvtopPackages.full
|
||||
openssl # required by Rainbow borders
|
||||
pciutils
|
||||
@@ -159,7 +157,7 @@
|
||||
rofi
|
||||
slurp
|
||||
swappy
|
||||
serie #git cli tool
|
||||
serie #git cli tool
|
||||
swaynotificationcenter
|
||||
swww
|
||||
unzip
|
||||
@@ -178,18 +176,18 @@
|
||||
(inputs.ags.packages.${pkgs.stdenv.hostPlatform.system}.default)
|
||||
|
||||
# Utils
|
||||
#browsr # file browser # Fails python build 11/14/2025
|
||||
#browsr # file browser # Fails python build 11/14/2025
|
||||
ctop # container top
|
||||
erdtree # great tree util run: erd
|
||||
frogmouth # cli markdown renderer A
|
||||
lstr # another tree util
|
||||
lstr # another tree util
|
||||
lolcat
|
||||
lsd # ls replacement util
|
||||
macchina # fetch tool
|
||||
mcat # show images in terminal
|
||||
mcat # show images in terminal
|
||||
mdcat # Markdown tool
|
||||
parallel-disk-usage # fast disk space tool run: pdu
|
||||
pik # Interactive process killer
|
||||
pik # Interactive process killer
|
||||
oh-my-posh
|
||||
ncdu # disk usage tool
|
||||
ncftp
|
||||
@@ -214,7 +212,7 @@
|
||||
cpuid
|
||||
cpu-x
|
||||
cyme #list USB devices - very handy
|
||||
gdu # Dusk usage
|
||||
gdu # Dusk usage
|
||||
glances # system monitor tool
|
||||
gping # Graphical ping tool
|
||||
htop # system monitor tool
|
||||
@@ -244,11 +242,9 @@
|
||||
# Terminals
|
||||
kitty
|
||||
wezterm
|
||||
|
||||
];
|
||||
environment.variables = {
|
||||
JAKOS_NIXOS_VERSION = "0.0.5";
|
||||
JAKOS = "true";
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
|
||||
{pkgs, ...}: {
|
||||
# Extra Portal Configuration
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
@@ -19,5 +13,4 @@
|
||||
pkgs.xdg-desktop-portal-wlr
|
||||
];
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,24 +1,28 @@
|
||||
{ lib, pkgs, inputs, ... }:
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
inputs.quickshell.packages.${pkgs.stdenv.hostPlatform.system}.default
|
||||
|
||||
# Qt6 dependencies for quickshell
|
||||
qt6.qtbase
|
||||
qt6.qtdeclarative
|
||||
qt6.qtwayland
|
||||
qt6.qtsvg
|
||||
qt6.qtmultimedia
|
||||
];
|
||||
|
||||
# necessary environment variables for QML module resolution
|
||||
environment.variables = {
|
||||
QML2_IMPORT_PATH = lib.mkDefault "${pkgs.qt6.qtdeclarative}/lib/qt-6/qml";
|
||||
};
|
||||
|
||||
# ensure Qt applications work properly on Wayland
|
||||
environment.sessionVariables = {
|
||||
QT_QPA_PLATFORM = "wayland;xcb";
|
||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||
};
|
||||
}
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
inputs.quickshell.packages.${pkgs.stdenv.hostPlatform.system}.default
|
||||
|
||||
# Qt6 dependencies for quickshell
|
||||
qt6.qtbase
|
||||
qt6.qtdeclarative
|
||||
qt6.qtwayland
|
||||
qt6.qtsvg
|
||||
qt6.qtmultimedia
|
||||
];
|
||||
|
||||
# necessary environment variables for QML module resolution
|
||||
environment.variables = {
|
||||
QML2_IMPORT_PATH = lib.mkDefault "${pkgs.qt6.qtdeclarative}/lib/qt-6/qml";
|
||||
};
|
||||
|
||||
# ensure Qt applications work properly on Wayland
|
||||
environment.sessionVariables = {
|
||||
QT_QPA_PLATFORM = "wayland;xcb";
|
||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
|
||||
{
|
||||
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
# Install themes/cursors that we reference
|
||||
environment.systemPackages = with pkgs; [
|
||||
adwaita-icon-theme
|
||||
@@ -42,7 +44,7 @@
|
||||
# Rebuild the dconf database at activation to apply system defaults
|
||||
system.activationScripts.dconfUpdate = {
|
||||
# Ensure /etc is populated (including /etc/dconf/...) before running dconf update
|
||||
deps = [ "etc" ];
|
||||
deps = ["etc"];
|
||||
text = ''
|
||||
if [ -x ${pkgs.dconf}/bin/dconf ]; then
|
||||
if [ -d /etc/dconf/db ]; then
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
|
||||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.vm.guest-services;
|
||||
in
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.vm.guest-services;
|
||||
in {
|
||||
options.vm.guest-services = {
|
||||
enable = mkEnableOption "Enable Virtual Machine Guest Services";
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user