a lot of changes, and spotify thats important too

This commit is contained in:
Doloro1978
2025-09-24 21:46:56 +01:00
parent ff9bbafe4d
commit 5a9746290c
42 changed files with 401 additions and 368 deletions

View File

@@ -8,9 +8,10 @@
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./modules/greetd/nixos.nix
./modules/stylix/nixos.nix
./modules/steam/nixos.nix
./modules/greetd/nixos.nix
./modules/stylix/nixos.nix
./modules/steam/nixos.nix
./modules/hyprland/nixos.nix
./disks.nix
];
@@ -63,8 +64,6 @@
# Enable the X11 windowing system.
# services.xserver.enable = true;
programs.hyprland.enable = true;
# Enable OpenGL
hardware.graphics = {
enable = true;
@@ -73,6 +72,16 @@
# Load nvidia driver for Xorg and Wayland
services.xserver.videoDrivers = ["nvidia"];
fileSystems."/mnt/2tb" = {
device = "/dev/disk/by-uuid/0f49aec7-4af2-4f4f-b475-3f4fad2b59c2";
fsType = "ext4";
options = [ # If you don't have this options attribute, it'll default to "defaults"
# boot options for fstab. Search up fstab mount options you can use
"users" # Allows any user to mount and unmount
"nofail" # Prevent system from failing if this drive doesn't mount
];
};
hardware.nvidia = {
# Modesetting is required.
@@ -107,10 +116,11 @@
fonts = {
enableDefaultPackages = true;
packages = with pkgs; [
jetbrains-mono
nerd-fonts.jetbrains-mono
material-design-icons
material-symbols
nerd-fonts.caskaydia-cove
nerd-fonts.noto
];
fontDir.enable = true;
};
@@ -151,6 +161,7 @@
environment.systemPackages = with pkgs; [
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
wget
killall
];
# Some programs need SUID wrappers, can be configured further or are

199
nix/flake.lock generated
View File

@@ -207,6 +207,27 @@
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1756770412,
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "4524271976b625a4a605beefd893f270620fd751",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"stylix",
@@ -227,6 +248,24 @@
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
@@ -631,6 +670,34 @@
"type": "github"
}
},
"ixx": {
"inputs": {
"flake-utils": [
"nixvim",
"nuschtosSearch",
"flake-utils"
],
"nixpkgs": [
"nixvim",
"nuschtosSearch",
"nixpkgs"
]
},
"locked": {
"lastModified": 1754860581,
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
"owner": "NuschtOS",
"repo": "ixx",
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"ref": "v0.1.1",
"repo": "ixx",
"type": "github"
}
},
"neovim-nightly-overlay": {
"inputs": {
"flake-compat": "flake-compat_2",
@@ -719,6 +786,45 @@
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1758277210,
"narHash": "sha256-iCGWf/LTy+aY0zFu8q12lK8KuZp7yvdhStehhyX1v8w=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "8eaee110344796db060382e15d3af0a9fc396e0e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixvim": {
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": [
"nixpkgs"
],
"nuschtosSearch": "nuschtosSearch",
"systems": "systems_3"
},
"locked": {
"lastModified": 1758551108,
"narHash": "sha256-3KArqJcnrcEr1M3QsBG7NZRQSxVNFI3In+9MHdVmUKY=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "f828dead7723e7680b09929b9886225389d0370b",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixvim",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": [
@@ -744,6 +850,29 @@
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils",
"ixx": "ixx",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1758272005,
"narHash": "sha256-1u3xTH+3kaHhztPmWtLAD8LF5pTYLR2CpsPFWTFnVtQ=",
"owner": "NuschtOS",
"repo": "search",
"rev": "aa975a3757f28ce862812466c5848787b868e116",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"repo": "search",
"type": "github"
}
},
"pre-commit-hooks": {
"inputs": {
"flake-compat": "flake-compat",
@@ -794,8 +923,10 @@
"hyprland": "hyprland",
"neovim-nightly-overlay": "neovim-nightly-overlay",
"nixpkgs": "nixpkgs_3",
"nixvim": "nixvim",
"quickshell": "quickshell",
"sops-nix": "sops-nix",
"spicetify-nix": "spicetify-nix",
"stylix": "stylix"
}
},
@@ -819,6 +950,25 @@
"type": "github"
}
},
"spicetify-nix": {
"inputs": {
"nixpkgs": "nixpkgs_4",
"systems": "systems_4"
},
"locked": {
"lastModified": 1758584568,
"narHash": "sha256-FDxTheW6ynpbro/8eTZHhAY7J+HOf0jXeXq3jrJDcS8=",
"owner": "Gerg-L",
"repo": "spicetify-nix",
"rev": "9e9e48ca16628bf09a02bc5449d4b0761e15eebd",
"type": "github"
},
"original": {
"owner": "Gerg-L",
"repo": "spicetify-nix",
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
@@ -826,13 +976,13 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_2",
"flake-parts": "flake-parts_3",
"gnome-shell": "gnome-shell",
"nixpkgs": [
"nixpkgs"
],
"nur": "nur",
"systems": "systems_2",
"systems": "systems_5",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes",
@@ -883,6 +1033,51 @@
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_4": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_5": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tinted-foot": {
"flake": false,
"locked": {

View File

@@ -26,6 +26,13 @@
inputs.nixpkgs.follows = "nixpkgs";
};
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
spicetify-nix = {
url = "github:Gerg-L/spicetify-nix";
};
};
outputs =
inputs@{ nixpkgs, home-manager, ... }:
@@ -48,7 +55,7 @@
# Optionally use extraSpecialArgs
# to pass through arguments to home.nix
};
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
nixosConfigurations.doloroo-main = nixpkgs.lib.nixosSystem {
specialArgs = {
inherit inputs system;
};

View File

@@ -5,8 +5,12 @@
./modules/hyprland/home.nix
./modules/quickshell/home.nix
./modules/chromium/home.nix
./modules/neovim/home.nix
#./modules/stylix/home.nix
#./modules/neovim/home.nix
./modules/stylix/home.nix
./modules/nixvim/home.nix
./modules/tmux/home.nix
./modules/theme/home.nix
./modules/spicetify/home.nix
];
# Home Manager needs a bit of information about you and the paths it should
# manage.
@@ -15,7 +19,7 @@
programs.git = {
enable = true;
userName = "doloro";
userName = "Doloro1978";
userEmail = "doloro@proton.me";
};
@@ -35,7 +39,8 @@
vim
telegram-desktop
vesktop
spotify
# spotify
pavucontrol
];
# Home Manager is pretty good at managing dotfiles. The primary way to manage

0
nix/modules/hg Normal file
View File

View File

@@ -6,6 +6,7 @@ in
imports = [
./settings.nix
./runner.nix
./screenshot.nix
];
wayland.windowManager.hyprland = {
enable = true;
@@ -22,7 +23,7 @@ in
main = {
term = "xterm-256color";
#font = "CaskaydiaCove Nerd Font Mono:size=11";
font = "CaskaydiaCove Nerd Font Mono:size=12";
};
mouse = {

View File

@@ -0,0 +1,19 @@
{ inputs, pkgs, ... }:
{
config = {
programs.xwayland.enable = true;
programs.hyprland = {
enable = true;
# set the flake package
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
# make sure to also set the portal package, so that they are in sync
portalPackage =
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
};
environment.sessionVariables.NIXOS_OZONE_WL = "1";
nix.settings = {
substituters = [ "https://hyprland.cachix.org" ];
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
};
};
}

View File

@@ -2,7 +2,5 @@
let
in {
home.packages = with pkgs; [
wofi
];
programs.wofi.enable = true;
}

View File

@@ -2,7 +2,10 @@
let
in {
home.packages = with pkgs; [
wofi
];
home.packages = with pkgs; [
wl-clipboard
wayfreeze
grim
slurp
];
}

View File

@@ -99,12 +99,12 @@
"$mainMod, right, movefocus, r"
"$mainMod, up, movefocus, u"
"$mainMod, down, movefocus, d"
"$mainMod, S, exec, $screenShot"
("$mainMod, S, exec, " + ''wayfreeze --after-freeze-cmd 'grim -g "$(slurp -d)" - | wl-copy -t image/png;killall wayfreeze' --hide-cursor'')
"$mainMod, F, fullscreen"
"$mainMod, mouse_down, workspace, e+1"
"$mainMod, mouse_up, workspace, e-1"
", home, exec, $toggleSpeaker"
", end, exec, $toggleMic"
", home, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
", end, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
", F8, sendshortcut, , F8, class:^(com\.obsproject\.Studio)$"
"$mainMod, 0, workspace, 10"
"$mainMod SHIFT, 0, movetoworkspace, 10"
@@ -132,6 +132,7 @@
"workspace 8 silent, class:^(vesktop)$"
"workspace 8 silent, class:^(org.telegram.desktop)$"
"workspace 10 silent, class:^(com\.obsproject\.Studio)$"
"workspace 1 silent, initialTitle:^(Discord Popout)$"
];
windowrulev2 = [
"noinitialfocus, class:.*"

View File

@@ -0,0 +1,66 @@
{ inputs, pkgs, ... }:{
imports = [
inputs.nixvim.homeModules.nixvim
];
programs.nixvim = {
enable = true;
defaultEditor = true;
plugins = {
notify.enable = true;
mini-cursorword.enable = true;
mini-statusline.enable = true;
web-devicons.enable = true;
vim-dadbod-completion.enable = true;
telescope.enable = true;
lazygit.enable = true;
persisted.enable = true;
wakatime.enable = true;
};
extraPlugins = with pkgs; [
vimPlugins.mini-completion
vimPlugins.mini-comment
vimPlugins.melange-nvim
vimPlugins.telescope-file-browser-nvim
];
opts = {
number = true;
bg = "dark";
tabstop = 2;
shiftwidth = 2;
termguicolors = true;
};
globals = {
mapleader = " ";
};
keymaps = [
{
action = "<cmd>Telescope persisted<cr>";
key = "<leader>fs";
options = {
silent = true;
};
}
{
action = "<cmd>Telescope file_browser<cr>";
key = "<leader>fv";
options = {
silent = true;
};
}
{
action = "<cmd>LazyGit<cr>";
key = "<leader>lg";
options = {
silent = true;
};
}
{
action = "<cmd>Telescope buffers<cr>";
key = "<leader>fb";
options = {
silent = true;
};
}
];
};
}

View File

@@ -0,0 +1,5 @@
_: {
imports = [
./
]
}

View File

@@ -0,0 +1,3 @@
_: {
notify: ./notify.nix
}

View File

@@ -0,0 +1,3 @@
{ inputs, ... }: {
}

View File

@@ -0,0 +1,28 @@
{ inputs, pkgs, ... }:
let
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
in {
imports = [
inputs.spicetify-nix.homeManagerModules.default
];
programs.spicetify = {
enable = true;
enabledExtensions = with spicePkgs.extensions; [
adblock
hidePodcasts
shuffle # shuffle+ (special characters are sanitized out of extension names)
];
enabledCustomApps = with spicePkgs.apps; [
newReleases
# ncsVisualizer
];
enabledSnippets = with spicePkgs.snippets; [
# rotatingCoverart
pointer
];
theme = spicePkgs.themes.catppuccin;
colorScheme = "mocha";
};
}

View File

@@ -11,12 +11,13 @@ in
{
imports = [
#./shared.nix
./shared.nix
inputs.stylix.homeModules.stylix
];
config = {
stylix.enable = true;
stylix.targets.hyprland.enable = true;
stylix.autoEnable = false; # honestly, fuck stylix;
stylix.targets.gtk.enable = true;
stylix.targets.qt.enable = true;
};
}

View File

@@ -16,6 +16,7 @@ in
];
config = {
stylix.enable = true;
#stylix.targets.tmux.enable = false;
};
}

View File

@@ -9,24 +9,7 @@
];
stylix = {
enable = true;
# image = ./wp.jpg;
# image = lib.mkDefault ./wp.jpg;
polarity = "dark";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-mirage.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/horizon-dark.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/darkviolet.yaml";
# base16Scheme = lib.mkDefault "${pkgs.base16-schemes}/share/themes/bright.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/eris.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/framer.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/uwunicorn.yaml";
# base16Scheme = "${pkgs.base16-schemes}/share/themes/tarot.yaml";
# base16Scheme = lib.mkDefault "${pkgs.base16-schemes}/share/themes/framer.yaml";
# base16Scheme = lib.mkDefault "${pkgs.base24-schemes}/share/themes/tokyodark-terminal.yaml";
# base16Scheme = lib.mkDefault "${pkgs.base16-schemes}/share/themes/tokyodark-terminal.yaml";
base16Scheme = ./theme.yml;
};
# stylix.override = {

View File

@@ -0,0 +1,3 @@
_: {
home: ./home.nix
}

View File

@@ -0,0 +1,9 @@
{ inputs, ... }: {
services.dunst = {
settings = {
global = {
font = "Noto Nerd Font 8";
};
};
};
}

15
nix/modules/tmux/home.nix Normal file
View File

@@ -0,0 +1,15 @@
{ inputs, pkgs, fetchFromGitHub, ... }:
{
programs.tmux = {
enable = true;
plugins = with pkgs.tmuxPlugins; [
sensible
minimal-tmux-status
];
extraConfig = ''
set-option -g default-terminal "tmux-256color"
set -g status-bg black
set -g status-fg white
'';
};
}