add: home-manager,hyprland,kitten and other extras

This commit is contained in:
elwrcl committed 2026-03-30 23:51:17 +03:00
commit 3615a7b307
56 files changed
+1804

No files matched your search

+27
View File
@@ -0,0 +1,27 @@
{ config, pkgs, ... }:
{
boot.kernelPackages = pkgs.linuxPackages_latest;
boot.kernelParams = [
"i915.enable_guc=2" #make your own params this is for hd4k
"i915.fastboot=1"
"mitigations=off"
"usbcore.autosuspend=-1"
];
boot.loader = {
timeout = 5;
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot";
};
systemd-boot = {
enable = true;
configurationLimit = 15;
consoleMode = "max";
editor = false;
};
};
}
+14
View File
@@ -0,0 +1,14 @@
{ ... }:
{
imports = [
./boot
./desktop
./gaming
./hardware
./networking
./services
./system
./users
./virtualization
];
}
+7
View File
@@ -0,0 +1,7 @@
{ ... }:
{
imports = [
./pipewire.nix
];
}
+13
View File
@@ -0,0 +1,13 @@
{ config, pkgs, ... }:
{
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
};
}
+22
View File
@@ -0,0 +1,22 @@
{ pkgs, ... }:
{
imports = [
./display
./window-managers
./audio
];
xdg.mime = {
enable = true;
defaultApplications = {
"image/png" = "org.kde.gwenview.desktop";
"image/jpeg" = "org.kde.gwenview.desktop";
"image/gif" = "org.kde.gwenview.desktop";
"image/bmp" = "org.kde.gwenview.desktop";
"image/svg+xml" = "org.kde.gwenview.desktop";
"image/webp" = "org.kde.gwenview.desktop";
"image/tiff" = "org.kde.gwenview.desktop";
};
};
}
+11
View File
@@ -0,0 +1,11 @@
{ config, pkgs, ... }:
{
services.xserver.enable = true;
services.displayManager.ly.enable = true;
services.xserver.xkb = {
layout = "tr";
variant = "";
};
}
@@ -0,0 +1,7 @@
{ ... }:
{
imports = [
./hyprland.nix
];
}
@@ -0,0 +1,17 @@
{ config, pkgs, ... }:
{
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
xdg.portal = {
enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
config.common.default = "*";
};
security.polkit.enable = true;
services.gnome.gnome-keyring.enable = true;
}
+33
View File
@@ -0,0 +1,33 @@
{ pkgs, ... }:
{
imports = [
./steam
];
programs.gamemode = {
enable = true;
enableRenice = true;
settings = {
general = {
renice = 10;
softrealtime = "auto";
ioprio = 0;
};
gpu = {
apply_gpu_optimisations = "accept-responsibility";
gpu_device = 0;
};
cpu = {
park_cores = "no";
pin_cores = "yes";
};
};
};
environment.systemPackages = with pkgs; [
gamescope
protonup-qt
mangohud
];
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
programs.steam.enable = true;
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
hardware.bluetooth.enable = true;
}
+10
View File
@@ -0,0 +1,10 @@
{ ... }:
{
imports = [
./bluetooth
./graphics
./udev
./keyboard
];
}
+10
View File
@@ -0,0 +1,10 @@
{ pkgs, ... }:
{
hardware.graphics.extraPackages = with pkgs; [
amdvlk
rocmPackages.clr.icd
];
services.xserver.videoDrivers = [ "amdgpu" ];
}
+28
View File
@@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
let
driver = config.elars.hardware.graphics.driver;
in {
options.elars.hardware.graphics.driver = lib.mkOption {
type = lib.types.enum [ "intel" "amd" "nvidia" "hybrid-amd-nvidia" ];
default = "intel";
};
config = lib.mkMerge [
{
hardware.graphics = {
enable = true;
enable32Bit = true;
};
}
(lib.mkIf (driver == "intel") (import ./intel.nix { inherit config lib pkgs; }))
(lib.mkIf (driver == "amd") (import ./amd.nix { inherit config lib pkgs; }))
(lib.mkIf (driver == "nvidia") (import ./nvidia.nix { inherit config lib pkgs; }))
(lib.mkIf (driver == "hybrid-amd-nvidia") (lib.mkMerge [
(import ./amd.nix { inherit config lib pkgs; })
(import ./nvidia.nix { inherit config lib pkgs; })
(import ./prime.nix { inherit config lib pkgs; })
]))
];
}
+21
View File
@@ -0,0 +1,21 @@
{ config, lib, pkgs, ... }:
{
hardware.graphics.extraPackages = with pkgs; [
intel-vaapi-driver
libvdpau-va-gl
intel-media-driver
];
hardware.graphics.extraPackages32 = with pkgs.pkgsi686Linux; [
intel-vaapi-driver
libvdpau-va-gl
];
services.xserver.videoDrivers = [ "modesetting" ];
environment.variables = {
LIBVA_DRIVER_NAME = "i965";
VK_ICD_FILENAMES = "/run/opengl-driver/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json";
};
}
+12
View File
@@ -0,0 +1,12 @@
{ config, ... }:
{
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
modesetting.enable = true;
open = false; # for 20xx series make true for 30xx and newer
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
}
+9
View File
@@ -0,0 +1,9 @@
{ config, lib, pkgs, ... }:
{
hardware.nvidia.prime = {
offload.enable = true;
amdgpuBusId = "PCI:X:X:X"; # TODO
nvidiaBusId = "PCI:X:X:X"; # TODO
};
}
+27
View File
@@ -0,0 +1,27 @@
{ config, pkgs, ... }:
{
hardware.keyboard.qmk.enable = true;
services.udev.packages = with pkgs; [
qmk-udev-rules
via
vial
];
users.groups.plugdev = {};
environment.systemPackages = with pkgs; [
qmk
via
vial
gcc-arm-embedded
pkgsCross.avr.buildPackages.gcc
pkgsCross.avr.avrlibc
avrdude
dfu-programmer
dfu-util
usbutils
];
}
+21
View File
@@ -0,0 +1,21 @@
{ config, pkgs, ... }:
{
services.udev.extraRules = ''
KERNEL=="ttyACM[0-9]*", MODE="0666"
KERNEL=="ttyUSB[0-9]*", MODE="0666"
'';
services.udisks2.enable = true;
services.gvfs.enable = true;
security.polkit.extraConfig = ''
polkit.addRule(function(action, subject) {
if (action.id.match("org.freedesktop.udisks2.") &&
subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
'';
}
+8
View File
@@ -0,0 +1,8 @@
{ ... }:
{
imports = [
./vpn
./network-manager
];
}
@@ -0,0 +1,6 @@
{ config, pkgs, ... }:
{
networking.hostName = "copland";
networking.networkmanager.enable = true;
}
+32
View File
@@ -0,0 +1,32 @@
{ config, pkgs, ... }:
{
# you can make this true if you have problems with zapret
services.cloudflare-warp.enable = false;
# Zapret
services.zapret = {
enable = true;
params = [
"--filter-tcp=80"
"--dpi-desync=fake,multisplit"
"--dpi-desync-split-pos=method+2"
"--dpi-desync-fooling=md5sig"
"--new"
"--filter-tcp=443"
"--dpi-desync=fake,multidisorder"
"--dpi-desync-split-pos=1,midsld"
"--dpi-desync-fooling=badseq,md5sig"
"--new"
"--filter-udp=443"
"--dpi-desync=fake"
"--dpi-desync-repeats=6"
];
};
networking.enableIPv6 = false;
}
+7
View File
@@ -0,0 +1,7 @@
{ config, pkgs, ... }:
{
programs.appimage = {
enable = true;
binfmt = true;
};
}
+16
View File
@@ -0,0 +1,16 @@
{ ... }:
{
imports = [
./appimage
./kde_connect
./printing
./ssh
./security
./psql
./flatpak
./fwupd
./samba
./performance
];
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ...}:
{
services.flatpak.enable = true;
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
services.fwupd.enable = true;
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ...}:
{
programs.kdeconnect.enable = true;
}
+15
View File
@@ -0,0 +1,15 @@
{ config, pkgs, ... }:
{
services.scx = {
enable = true;
scheduler = "scx_rustland"; #you can find other schedulers to fit your needs
};
services.ananicy = {
enable = true;
package = pkgs.ananicy-cpp;
};
services.irqbalance.enable = true;
}
+19
View File
@@ -0,0 +1,19 @@
{ config, pkgs, ... }:
{
services.printing = {
enable = true;
drivers = [ pkgs.cnijfilter2 ];
};
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
hardware.sane = {
enable = true;
extraBackends = [ pkgs.sane-airscan ];
};
}
+12
View File
@@ -0,0 +1,12 @@
{ config, pkgs, ... }:
{
services.postgresql = {
enable = true;
ensureDatabases = [ "mydatabase" ];
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser auth-method
local all all trust
'';
};
}
+57
View File
@@ -0,0 +1,57 @@
{ config, lib, pkgs, ... }:
{
systemd.tmpfiles.rules = [
"d /var/lib/samba/usershares 0755 elars users -"
];
environment.etc."samba/smbusers".text = ''
nobody = guest
'';
services.samba = {
enable = true;
openFirewall = true;
settings = {
global = {
workgroup = "WORKGROUP";
"server string" = config.networking.hostName;
"netbios name" = config.networking.hostName;
security = "user";
"use sendfile" = "yes";
"max protocol" = "SMB3";
"min protocol" = "SMB2";
"hosts allow" = "192.168.1.0/24 127.0.0.1 localhost";
"hosts deny" = "0.0.0.0/0";
"guest account" = "nobody";
"map to guest" = "Bad User";
"usershare path" = "/var/lib/samba/usershares";
"usershare max shares" = "100";
"usershare allow guests" = "yes";
"usershare owner only" = "no";
"usershare prefix allow list" = "/mnt /home";
"idmap config * : backend" = "tdb";
"idmap config * : range" = "3000-7999";
"username map" = "/etc/samba/smbusers";
};
"HDD" = {
path = "/mnt/hdd";
browseable = "yes";
public = "yes";
"read only" = "no";
"guest ok" = "yes";
"guest only" = "yes";
"create mask" = "0777";
"directory mask" = "0777";
"force user" = config.users.users.elars.name;
"force group" = "users";
};
};
};
services.samba-wsdd = {
enable = true;
openFirewall = true;
};
}
+15
View File
@@ -0,0 +1,15 @@
{ config, pkgs, ... }:
{
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
security.wrappers.gsr-kms-server = {
owner = "root";
group = "root";
capabilities = "cap_sys_admin+ep";
source = "${pkgs.gpu-screen-recorder}/bin/gsr-kms-server";
};
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
services.openssh.enable = true;
}
+9
View File
@@ -0,0 +1,9 @@
{ ... }:
{
imports = [
./locale
./nix
./power.nix
];
}
+24
View File
@@ -0,0 +1,24 @@
{ config, pkgs, ... }:
{
time.timeZone = "Europe/Istanbul";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "tr_TR.UTF-8";
LC_IDENTIFICATION = "tr_TR.UTF-8";
LC_MEASUREMENT = "tr_TR.UTF-8";
LC_MONETARY = "tr_TR.UTF-8";
LC_NAME = "tr_TR.UTF-8";
LC_NUMERIC = "tr_TR.UTF-8";
LC_PAPER = "tr_TR.UTF-8";
LC_TELEPHONE = "tr_TR.UTF-8";
LC_TIME = "tr_TR.UTF-8";
};
console.keyMap = "trq";
system.stateVersion = "25.05";
}
+25
View File
@@ -0,0 +1,25 @@
{ config, pkgs, ... }:
{
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
max-jobs = "auto";
cores = 0;
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
# "https://noctalia.cachix.org"
# "https://quickshell.cachix.org"
];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
# "noctalia.cachix.org-1:pCOR47nnMEo5thcxNDtzWpOxNFQsBRglJzxWPp3dkU4="
# "quickshell.cachix.org-1:ZmizBFkDp6s3KRnFfGFtEHBblFdSVDpU2eH3b0iFkKkc="
];
};
programs.nix-ld.enable = true;
}
+5
View File
@@ -0,0 +1,5 @@
{ ... }:
{
services.power-profiles-daemon.enable = true;
services.upower.enable = true;
}
+32
View File
@@ -0,0 +1,32 @@
{ config, pkgs, ... }:
{
users.users.elars = {
isNormalUser = true;
description = "elars";
initialPassword = "1111";
extraGroups = [
"networkmanager" "wheel" "docker" "plugdev"
"video" "audio" "lp" "scanner" "libvirtd"
];
shell = pkgs.zsh;
};
programs.nh = {
enable = true;
clean.enable = true;
clean.extraArgs = "--keep-since 4d --keep 3";
flake = "/home/elars/copland";
};
programs.zsh = {
enable = true;
enableCompletion = true;
autosuggestions.enable = true;
syntaxHighlighting.enable = true;
};
programs.firefox.enable = true;
# security.sudo.wheelNeedsPassword = false;
}
+9
View File
@@ -0,0 +1,9 @@
{ ... }:
{
imports = [
./docker
./vmware
./virt-manager
];
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
virtualisation.docker.enable = true;
}
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
virtualisation.libvirtd.enable = true;
programs.virt-manager.enable = true;
}
+5
View File
@@ -0,0 +1,5 @@
{ config, pkgs, ... }:
{
virtualisation.vmware.host.enable = true;
}