This commit is contained in:
2025-05-15 21:11:30 +03:00
commit b6cee5e832
43 changed files with 2652 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
{
imports = inputs.nypkgs.legacyPackages.${pkgs.system}.lib.umport {
path = ./.;
include = [
./somed4/somef3.nix
];
exclude = [
./somed4
./somef4.nix
];
};
}
+16
View File
@@ -0,0 +1,16 @@
{ inputs, ... }@flakeContext:
{
config,
lib,
...
}:
{
imports = [
./essentials
#./services
# Flake modules
inputs.home-manager.nixosModules.home-manager # home-manager module
inputs.nix-index-database.nixosModules.nix-index
];
}
+100
View File
@@ -0,0 +1,100 @@
# Setup DE, xserver and bootloader
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
imports = [
./environment/kde.nix
#./environment/gnome.nix
#./environment/budgie.nix
#./environment/deepin.nix
./environment/theming.nix
inputs.grub2-themes.nixosModules.default # grub2 themes module
];
boot = {
plymouth = {
enable = true;
theme = "bgrt";
};
consoleLogLevel = 3; # Enable "Silent boot"
initrd.verbose = false;
kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"udev.log_priority=3"
"rd.systemd.show_status=auto"
];
loader = {
timeout = 2;
efi.canTouchEfiVariables = lib.mkForce false;
systemd-boot.enable = lib.mkForce false;
grub = {
enable = lib.mkForce true;
useOSProber = true;
efiInstallAsRemovable = true;
efiSupport = true;
device = "nodev";
};
grub2-theme = {
enable = true;
theme = "whitesur";
icon = "whitesur";
footer = true;
customResolution = "1920x1080"; # Optional: Set a custom resolution
};
};
};
hardware.graphics.enable = true;
programs = {
adb.enable = true;
dconf.enable = true;
gamemode.enable = true;
steam.enable = true;
xwayland.enable = true;
};
services = {
xserver = {
enable = true;
xkb = {
layout = "us,ru";
variant = "";
options = "grp:alt_shift_toggle";
};
};
libinput.enable = true;
colord.enable = true;
printing = {
enable = true;
cups-pdf.enable = true;
};
};
environment.sessionVariables = {
NIXOS_OZONE_WL = "1";
};
# environment = {
# systemPackages = with pkgs; [
# ];
# };
# systemd.services.xiccd = { # Color Profiler bus for x11
# enable = false;
# description = "Xiccd Screen Color Profiler";
# serviceConfig = {
# ExecStart = "${pkgs.xiccd}/bin/xiccd";
# ExecStop = "pkill xiccd";
# Restart = "always";
# };
# wantedBy = [ "dbus.service" ];
# after = [ "dbus.service" ];
# partOf = [ "dbus.service" ];
# };
}
+9
View File
@@ -0,0 +1,9 @@
{
config,
lib,
pkgs,
...
}:
{
services.xserver.windowManager.bspwm.enable = true;
}
+36
View File
@@ -0,0 +1,36 @@
{
config,
lib,
pkgs,
...
}:
{
services.xserver.displayManager.lightdm.enable = true;
#services.displayManager.defaultSession = "lomiri";
# services.xserver.desktopManager.budgie.enable = true;
#services.xserver.displayManager.lightdm.greeters.lomiri.enable= true;
#services.desktopManager.lomiri.enable = true;
#-services.xserver.desktopManager.mate.enable = true;
#-services.xserver.desktopManager.lxqt.enable = true;
# services.xserver.desktopManager.lumina.enable = true;
# services.xserver.desktopManager.cde.enable = true;
# services.xserver.desktopManager.cinnamon.enable = true;
# services.xserver.desktopManager.enlightenment.enable = true;
# services.desktopManager.cosmic.xwayland.enable = true;
# services.desktopManager.cosmic.enable = true;
# services.xserver = {
# enable = true;
# desktopManager = {
# #xterm.enable = false;
# xfce.enable = true;
# xfce.enableWaylandSession = true;
# };
# };
#- services.xserver.desktopManager.pantheon.enable = true;
#- services.pantheon.apps.enable = true;
}
+24
View File
@@ -0,0 +1,24 @@
{
config,
lib,
pkgs,
...
}:
{
# services.xserver = {
# enable = true;
# desktopManager = {
# #xterm.enable = false;
# xfce.enable = true;
# };
# };
services.xserver.displayManager.lightdm.enable = true;
services.xserver.desktopManager.deepin.enable = true;
services.deepin.deepin-anything.enable = true;
services.deepin.dde-daemon.enable = true;
services.deepin.dde-api.enable = true;
services.deepin.app-services.enable = true;
}
+43
View File
@@ -0,0 +1,43 @@
{
config,
lib,
pkgs,
...
}:
{
programs.dconf.enable = true;
environment = {
gnome.excludePackages = with pkgs; [
cheese # webcam tool
epiphany # web browser
#evince # document viewer
geary # email reader
gnome-characters
gnome-music
gnome-user-docs
gnome-tour
];
systemPackages = with pkgs; [
gnomeExtensions.appindicator
gnomeExtensions.dash-to-panel
gnomeExtensions.arcmenu
gnomeExtensions.vitals
gnomeExtensions.user-themes
gnome-tweaks
dconf-editor
dconf2nix
gnome-color-manager
];
};
services = {
udev.packages = with pkgs; [ gnome-settings-daemon ];
xserver = {
displayManager.gdm = {
enable = true;
wayland = true;
};
desktopManager.gnome.enable = true;
};
};
}
+33
View File
@@ -0,0 +1,33 @@
{
config,
lib,
pkgs,
...
}:
{
qt = {
enable = true;
style = "breeze";
platformTheme = "kde6"; # kde6
};
environment.plasma6.excludePackages = with pkgs.kdePackages; [
plasma-browser-integration
elisa
# kwallet
# kwallet-pam
# kwalletmanager
];
services = {
displayManager = {
sddm = {
enable = true;
theme = "WhiteSur-light";
wayland = {
enable = true;
compositor = "kwin";
};
};
};
desktopManager.plasma6.enable = true;
};
}
+19
View File
@@ -0,0 +1,19 @@
{
config,
lib,
pkgs,
...
}:
{
environment = {
systemPackages = with pkgs; [
whitesur-gtk-theme
whitesur-icon-theme
#whitesur-cursors
whitesur-kde
qogir-icon-theme
#qogir-theme
#qogir-kde
];
};
}
+14
View File
@@ -0,0 +1,14 @@
{
config,
...
}:
{
imports = [
./packages.nix
./programs.nix
./services.nix
./settings.nix
./tty.nix
./users.nix
];
}
+50
View File
@@ -0,0 +1,50 @@
{
config,
pkgs,
...
}:
{
environment = {
systemPackages = with pkgs; [
# Nix
nixfmt-tree
nix-diff
# Base
mc
yazi
pciutils
smartmontools
efibootmgr
usbutils
# Data
wget
curl
rsync
fdupes
# Disk
gparted
parted
ntfs3g
exfatprogs # for gparted exfat support
# Archivers
rar
unzip
zstd
zip
xarchiver
# Net
ipset
iptables
nftables
# Monitoring
btop
fastfetch
];
};
}
+29
View File
@@ -0,0 +1,29 @@
{
config,
...
}:
{
programs = {
git = {
enable = true;
config = {
user = {
name = "oqyude";
email = "oqyude@gmail.com";
};
};
};
lazygit.enable = true;
command-not-found.enable = false;
nix-index.enable = true;
nh = {
enable = true;
flake = "/etc/nixos";
clean = {
enable = true;
extraArgs = "--keep 3 --keep-since 2d";
dates = "daily";
};
};
};
}
+9
View File
@@ -0,0 +1,9 @@
{
config,
...
}:
{
services = {
tailscale.enable = true;
};
}
+50
View File
@@ -0,0 +1,50 @@
{
config,
...
}:
{
system.nixos.label = "default";
nix = {
settings = {
substituters = [
"https://nixos-cache-proxy.cofob.dev" # https://gist.github.com/cofob/9b1fd205e6d961a45c225ae9f0af1394
"https://nix-community.cachix.org"
];
auto-optimise-store = true;
experimental-features = [
"nix-command"
"flakes"
];
};
};
nixpkgs.config.allowUnfree = true;
security = {
sudo.wheelNeedsPassword = false;
polkit = {
enable = true;
extraConfig = ''
polkit.addRule(function(action, subject) {
if ((action.id == "org.gnome.gparted" || // for gnome
action.id == "org.freedesktop.policykit.exec") && // for desktop, nekoray
subject.isInGroup("wheel")){ // for sudo
return polkit.Result.YES;
}
});
'';
};
};
systemd.network.wait-online.enable = false;
time.timeZone = "Europe/Moscow";
i18n = {
defaultLocale = "en_US.UTF-8";
supportedLocales = [
#"C.UTF-8/UTF-8"
"en_US.UTF-8/UTF-8"
"ru_RU.UTF-8/UTF-8"
];
};
}
+37
View File
@@ -0,0 +1,37 @@
{
config,
pkgs,
...
}:
{
system.userActivationScripts.zshrc = "touch .zshrc";
users.defaultUserShell = pkgs.zsh;
programs.zsh = {
enable = true;
enableCompletion = true;
enableBashCompletion = true;
syntaxHighlighting.enable = true;
zsh-autoenv.enable = true;
histSize = 10000;
loginShellInit = "cd /etc/nixos && clear && fastfetch";
ohMyZsh = {
enable = true;
theme = "robbyrussell";
};
shellAliases = {
# shell
ff = "clear && fastfetch";
l = "ls -l";
# ssh
s-1 = "ssh sapphira-1";
s-1t = "ssh sapphira-1t";
# Somethings
reboot-bios = "sudo systemctl reboot --firmware-setup";
# Extras
plasma-manager = "nix run github:nix-community/plasma-manager";
};
};
}
+25
View File
@@ -0,0 +1,25 @@
{
config,
...
}:
{
users = {
users = {
oqyude = {
isNormalUser = true;
description = "Jor Oqyude";
initialPassword = "1234";
extraGroups = [
"audio"
"disk"
"gamemode"
"libvirtd"
"networkmanager"
"pipewire"
"qemu-libvirtd"
"wheel"
];
};
};
};
}
+19
View File
@@ -0,0 +1,19 @@
# https://github.com/ezKEa/aagl-gtk-on-nix
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
{
imports = [ inputs.aagl.nixosModules.default ];
nix.settings = inputs.aagl.nixConfig; # Set up Cachix
programs = {
anime-game-launcher.enable = true;
#anime-games-launcher.enable = true;
#honkers-railway-launcher.enable = true;
#honkers-launcher.enable = true;
#wavey-launcher.enable = true;
#sleepy-launcher.enable = true;
};
}
+13
View File
@@ -0,0 +1,13 @@
# https://github.com/fufexan/nix-gaming
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
{
nix.settings = {
substituters = [ "https://nix-gaming.cachix.org" ];
trusted-public-keys = [ "nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4=" ];
};
}
+47
View File
@@ -0,0 +1,47 @@
# https://github.com/musnix/musnix
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
imports = [ inputs.musnix.nixosModules.musnix ];
specialisation = {
"rt_kernel" = {
inheritParentConfig = true;
configuration = {
###
boot.kernelModules = [
"snd-seq"
"snd-rawmidi"
];
services = {
pipewire.enable = lib.mkForce false;
jack = {
jackd.enable = lib.mkForce true;
alsa.enable = true;
loopback.enable = true;
};
};
environment.systemPackages = with pkgs; [
jack2
jack_capture
libjack2
pavucontrol
qjackctl
];
musnix = {
enable = true;
#ffado.enable = true;
rtcqs.enable = true;
kernel.realtime = true;
kernel.packages = pkgs.linuxPackages_latest_rt;
};
###
};
};
};
}
+33
View File
@@ -0,0 +1,33 @@
{ inputs, ... }@flakeContext:
let
pkgs-stable = import inputs.nixpkgs-stable { system = "x86_64-linux"; };
in
{
config,
pkgs,
...
}:
{
security.pam.services.login.fprintAuth = false;
services = {
fprintd = {
enable = true;
package = pkgs-stable.fprintd.override {
libfprint = pkgs-stable.libfprint.overrideAttrs (oldAttrs: {
version = "git";
src = pkgs-stable.fetchFromGitHub {
owner = "ericlinagora";
repo = "libfprint-CS9711";
rev = "c242a40fcc51aec5b57d877bdf3edfe8cb4883fd";
sha256 = "sha256-WFq8sNitwhOOS3eO8V35EMs+FA73pbILRP0JoW/UR80=";
};
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [
pkgs-stable.opencv
pkgs-stable.cmake
pkgs-stable.doctest
];
});
};
};
};
}
+30
View File
@@ -0,0 +1,30 @@
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
{
systemd.services.zapret = {
description = "zapret complete";
unitConfig = {
After = [ "network-online.target" ];
Wants = [ "network-online.target" ];
};
wantedBy = [ "multi-user.target" ];
path = [ "/run/current-system/sw" ];
serviceConfig = {
Type = "simple";
Restart = "on-failure";
User = "root";
WorkingDirectory = "${inputs.zapret.script-dir}";
ExecStart = "/run/current-system/sw/bin/bash ./main_script.sh -nointeractive";
ExecStop = "/run/current-system/sw/bin/bash ./stop_and_clean_nft.sh";
};
};
environment = {
systemPackages = with pkgs; [
nftables
];
};
}
+21
View File
@@ -0,0 +1,21 @@
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
environment = {
systemPackages = with pkgs; [
# yabridge
wineWowPackages.yabridge
yabridge
yabridgectl
# JACK Control
qjackctl
];
};
}
+52
View File
@@ -0,0 +1,52 @@
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
boot = {
kernelModules = [
"kvm-amd"
"vfio"
"vfio-pci"
"vfio_iommu_type1"
"vfio_virqfd"
];
kernelParams = [
"amd_iommu=on"
"iommu=pt"
"kvm.ignore_msrs=1"
];
};
services = {
spice-vdagentd.enable = true;
};
virtualisation = {
libvirtd = {
enable = true;
onBoot = "ignore";
onShutdown = "shutdown";
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
environment = {
systemPackages = with pkgs; [
spice
#spice-gtk
#spice-protocol
virt-manager
virt-viewer
virtiofsd
win-spice
virtio-win
#looking-glass-client # pci-passthrough
];
};
}
+20
View File
@@ -0,0 +1,20 @@
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
environment = {
systemPackages = with pkgs; [
#wineWowPackages.waylandFull
wineWowPackages.stagingFull
#wineWowPackages.fonts
dxvk
];
sessionVariables = {
WINEARCH = "win64";
};
};
}
+40
View File
@@ -0,0 +1,40 @@
{
description = "zeroq structure flake";
outputs =
{ self }:
rec {
nixos = "/etc/nixos";
devices = rec {
admin = "oqyude";
laptop = {
hostname = "atoridu";
};
mini-laptop = {
hostname = "lamet";
};
server = {
username = "otreca";
hostname = "sapphira";
};
wsl.hostname = "wsl";
};
dirs = rec {
# User
user-home = "/home/${devices.admin}";
user-storage = "${user-home}/Storage";
therima-drive = "/mnt/therima";
vetymae-drive = "/mnt/vetymae";
# Server
server-home = "/home/${devices.admin}/External";
storage = "${server-home}/Storage";
calibre-library = "${server-home}/Books-Library";
};
};
}