This commit is contained in:
2025-05-15 21:11:30 +03:00
commit b6cee5e832
43 changed files with 2652 additions and 0 deletions
Executable
+107
View File
@@ -0,0 +1,107 @@
{ inputs, ... }@flakeContext:
let
homeModule =
{
config,
lib,
pkgs,
...
}:
{
imports = [ ] ++ (builtins.attrValues inputs.self.homeModules);
xdg = {
enable = true;
autostart.enable = true;
configFile = {
"ludusavi" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/ludusavi/cfg";
target = "ludusavi";
};
"nekoray" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/Nekoray/${config.home.username}";
target = "nekoray";
};
"solaar" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/solaar";
target = "solaar";
};
"easyeffects" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/easyeffects";
target = "easyeffects";
};
"keepassxc" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/KeePassXC";
target = "keepassxc";
};
};
userDirs = {
enable = true;
createDirectories = true;
desktop = "${config.xdg.dataHome}/desktop";
documents = null;
download = "${config.home.homeDirectory}/Downloads";
music = "${config.home.homeDirectory}/Music";
pictures = "${config.home.homeDirectory}/Pictures";
publicShare = "${config.home.homeDirectory}/Misc/Public";
templates = null;
videos = "${config.home.homeDirectory}/Pictures/Videos";
};
};
home = {
username = "${inputs.zeroq.devices.admin}";
file = {
"ssh" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/SSH/${config.home.username}";
target = ".ssh";
};
"External" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.therima-drive}";
target = "External";
};
"Music" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Music";
target = "Music";
};
"Pictures" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Pictures";
target = "Pictures";
};
"Deploy" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Deploy";
target = "Deploy";
};
"Misc" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Misc";
target = "Misc";
};
};
};
};
nixosModule =
{ config, ... }:
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.${inputs.zeroq.devices.admin} = homeModule;
sharedModules = [ inputs.plasma-manager.homeManagerModules.plasma-manager ];
extraSpecialArgs = {
#inherit inputs;
inherit (config.networking) hostName;
};
};
};
in
(
(inputs.home-manager.lib.homeManagerConfiguration {
modules = [
homeModule
];
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
})
// {
inherit nixosModule;
}
)
+38
View File
@@ -0,0 +1,38 @@
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
let
unstable = import inputs.nixpkgs-unstable { system = "x86_64-linux"; };
last-stable = import inputs.nixpkgs-last-unstable { system = "x86_64-linux"; };
in
{
dconf = {
settings = {
"org/virt-manager/virt-manager/connections" = {
autoconnect = [ "qemu:///system" ];
uris = [ "qemu:///system" ];
};
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = with pkgs.gnomeExtensions; [
dash-to-panel.extensionUuid
arcmenu.extensionUuid
vitals.extensionUuid
appindicator.extensionUuid
];
disabled-extensions = [ ];
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-light";
enable-hot-corners = false;
};
};
};
home = {
packages = with pkgs; [
];
};
}
+13
View File
@@ -0,0 +1,13 @@
{ inputs, ... }@flakeContext:
{
config,
lib,
pkgs,
...
}:
{
home = {
stateVersion = lib.mkDefault "25.05";
homeDirectory = lib.mkDefault "/home/${config.home.username}";
};
}
+83
View File
@@ -0,0 +1,83 @@
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
let
unstable = import inputs.nixpkgs-unstable { system = "x86_64-linux"; };
last-stable = import inputs.nixpkgs-last-unstable { system = "x86_64-linux"; };
stable = import inputs.nixpkgs-stable { system = "x86_64-linux"; };
in
{
programs = {
fastfetch.enable = true;
btop.enable = true;
mangohud.enable = true;
keepassxc.enable = true;
zed-editor = {
enable = true;
extensions = [
"nix"
];
userSettings = {
"telemetry" = {
"diagnostics" = false;
"metrics" = false;
};
"ui_font_size" = 20;
"buffer_font_size" = 26;
"theme" = {
"mode" = "system";
"light" = "Ayu Light";
"dark" = "Ayu Dark";
};
};
};
};
services = {
kdeconnect.enable = true;
easyeffects.enable = true;
};
home = {
packages = with pkgs; [
# Surfing
(brave.override {
commandLineArgs = [
"--password-store=basic" # on purpose to make it break "--password-store=gnome-libsecret"
];
})
nekoray
# Workflow
_64gram
discord
gramps
kdePackages.filelight
libreoffice-qt6
localsend
lollypop
obsidian
pdfarranger
stretchly
transmission_4-gtk
vlc
#zerotierone
#tg
#reaper
# Games
ludusavi
prismlauncher
lutris
# Libs
libsecret
# Display
#edid-decode
#displaycal
#argyllcms
];
};
}
+126
View File
@@ -0,0 +1,126 @@
{ inputs, ... }@flakeContext:
{
config,
pkgs,
...
}:
{
programs = {
kate = {
enable = true;
editor = {
brackets = {
automaticallyAddClosing = true;
highlightMatching = true;
};
font = {
family = "Hack";
pointSize = 14;
};
};
};
plasma = {
enable = true;
overrideConfig = false;
configFile = {
dolphinrc = {
"General" = {
"RememberOpenedTabs" = true;
};
"DetailsMode" = {
"ExpandableFolders" = false;
"PreviewSize" = 32;
"IconSize" = 32;
};
};
"katerc" = {
"KTextEditor View" = {
"Scroll Bar MiniMap" = false;
"Scroll Bar Preview" = false;
};
};
};
input = {
# /proc/bus/input/devices
mice = [
{
acceleration = -0.2;
accelerationProfile = "none";
enable = true;
leftHanded = false;
middleButtonEmulation = false;
name = "Logitech USB Receiver Mouse";
naturalScroll = false;
productId = "c548";
scrollSpeed = 1;
vendorId = "046d";
}
];
touchpads = [
{
accelerationProfile = "none";
disableWhileTyping = true;
enable = true;
leftHanded = true;
middleButtonEmulation = false;
name = "ELAN1203:00 04F3:307A Touchpad";
naturalScroll = true;
pointerSpeed = 0;
productId = "307a";
rightClickMethod = "bottomRight";
scrollMethod = "twoFingers";
tapDragLock = false;
tapToClick = true;
twoFingerTap = "rightClick";
vendorId = "04f3";
}
];
keyboard = {
switchingPolicy = "global";
# options = [
# "altshift"
# ];
layouts = [
{
layout = "us";
}
{
layout = "ru";
}
];
};
};
workspace = {
#clickItemTo = "open"; # If you liked the click-to-open default from plasma 5
lookAndFeel = "com.github.vinceliuice.WhiteSur-alt";
colorScheme = "WhiteSurAlt";
theme = "WhiteSur-Alt";
iconTheme = "WhiteSur";
cursor = {
theme = "Qogir";
size = 24;
};
#wallpaper = "${config.home.homeDirectory}//Misc/Desktops/Wallpapers/Desktop/END_Circle_7.png";
#windowDecorations = {
# library = "org.kde.kwin.aurorae";
# theme = "__aurorae__svg__WhiteSur";
#};
};
kwin = {
edgeBarrier = 0; # Disables the edge-barriers introduced in plasma 6.1
cornerBarrier = false;
#scripts.polonium.enable = true;
nightLight = {
enable = true;
mode = "constant";
temperature.night = 5800;
};
effects.shakeCursor.enable = false;
virtualDesktops = {
number = 2;
rows = 1;
};
};
};
};
}
Executable
+41
View File
@@ -0,0 +1,41 @@
{ inputs, ... }@flakeContext:
let
homeModule =
{
config,
lib,
pkgs,
...
}:
{
imports = with inputs; [
self.homeModules.default
self.homeModules.plasma-manager
];
home = {
username = "root";
homeDirectory = "/${config.home.username}";
};
};
nixosModule =
{ ... }:
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.root = homeModule;
sharedModules = [ inputs.plasma-manager.homeManagerModules.plasma-manager ];
};
};
in
(
(inputs.home-manager.lib.homeManagerConfiguration {
modules = [
homeModule
];
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
})
// {
inherit nixosModule;
}
)
+59
View File
@@ -0,0 +1,59 @@
{ inputs, ... }@flakeContext:
let
homeModule =
{
config,
lib,
pkgs,
...
}:
{
imports = [ inputs.self.homeModules.default ];
xdg = {
enable = true;
autostart.enable = true;
userDirs = {
enable = true;
createDirectories = false;
desktop = null;
documents = null;
download = null;
music = null;
pictures = null;
publicShare = null;
templates = null;
videos = null;
};
};
home = {
file = {
"ssh" = {
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.storage}/SSH/${inputs.zeroq.devices.server.hostname}";
target = ".ssh";
};
};
username = "${inputs.zeroq.devices.admin}";
};
};
nixosModule =
{ ... }:
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.${inputs.zeroq.devices.admin} = homeModule;
};
};
in
(
(inputs.home-manager.lib.homeManagerConfiguration {
modules = [
homeModule
];
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
})
// {
inherit nixosModule;
}
)