diff --git a/configuration.nix b/configuration.nix index 7210f39..16dd8d7 100755 --- a/configuration.nix +++ b/configuration.nix @@ -9,7 +9,7 @@ boot = { kernelParams = [ - "amdgpu.ppfeaturemask=0xffffffff" + "amdgpu.ppfeaturemask=0xffffffff" "net.ifnames=0" ]; @@ -48,10 +48,10 @@ ''; }; -# Set your time zone. + # Set your time zone. time.timeZone = "Europe/Vienna"; -# Select internationalisation properties. + # Select internationalisation properties. i18n = { defaultLocale = "en_US.UTF-8"; extraLocaleSettings = { @@ -68,15 +68,14 @@ keyMap = "us-acentos"; }; - #chaotic.mesa-git.enable = true; # requires --impure for now + # chaotic.mesa-git.enable = true; - hardware.opengl = { - enable = true; - extraPackages = [ pkgs.libvdpau-va-gl ]; + hardware.opengl = { + enable = true; + extraPackages = [ pkgs.libvdpau-va-gl ]; - driSupport = true; - driSupport32Bit = true; - }; + driSupport32Bit = true; + }; hardware.steam-hardware.enable = true; programs.steam.enable = true; @@ -88,7 +87,7 @@ extraBackends = [ pkgs.sane-airscan ]; }; -# Enable sound. + # Enable sound. sound.enable = true; security = { @@ -123,8 +122,26 @@ environment = { systemPackages = with pkgs; [ - bc compsize distrobox fd file git htop links2 libsForQt5.dolphin - libsForQt5.kio-extras lm_sensors nvtop-amd openrgb p7zip pciutils ripgrep unrar unzip usbutils + bc + compsize + distrobox + fd + file + git + htop + kdiskmark + links2 + libsForQt5.dolphin + libsForQt5.kio-extras + lm_sensors + nvtop-amd + openrgb + p7zip + pciutils + ripgrep + unrar + unzip + usbutils ]; }; @@ -194,14 +211,14 @@ enable = true; xdgOpenUsePortal = true; wlr.enable = false; #conflict with XDPH if enabled - extraPortals = [ - pkgs.xdg-desktop-portal-gtk - ]; + extraPortals = [ + pkgs.xdg-desktop-portal-gtk + ]; }; systemd.extraConfig = '' DefaultTimeoutStopSec=10s - ''; + ''; systemd.user.extraConfig = '' # needed for xdg-open to find the default browser. Why the fuck do I even need to do that? @@ -209,7 +226,7 @@ #Systemd is a meme. This is the proof DefaultTimeoutStopSec=10s - ''; + ''; nix = { extraOptions = '' @@ -224,10 +241,12 @@ }; settings = { auto-optimise-store = true; + substituters = [ "https://nyx.chaotic.cx" "https://hyprland.cachix.org" ]; + trusted-public-keys = [ "nyx.chaotic.cx-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" @@ -236,6 +255,6 @@ }; }; - system.stateVersion = "22.05"; + system.stateVersion = "22.05"; } diff --git a/flake.nix b/flake.nix index cb00d0c..f1cb999 100755 --- a/flake.nix +++ b/flake.nix @@ -4,22 +4,60 @@ inputs = { nixpkgs.url = "nixpkgs/nixpkgs-unstable"; home-manager.url = "github:nix-community/home-manager"; + chaotic-nyx.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; + + nix-index-database = { + url = "github:Mic92/nix-index-database"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + hyprland = { + url = "github:hyprwm/hyprland"; + inputs.nixpkgs.follows = "nixpkgs"; + }; - hyprland.url = "github:hyprwm/hyprland/v0.26.0"; hyprland-contrib.url = "github:hyprwm/contrib"; hyprpicker.url = "github:hyprwm/hyprpicker"; - gruvbox-kvantum = { url = "github:thefallnn/Gruvbox-Kvantum"; flake = false; }; + gruvbox-kvantum = { + url = "github:thefallnn/Gruvbox-Kvantum"; + flake = false; + }; - fish-plugin-bobthefish = { url = "github:oh-my-fish/theme-bobthefish"; flake = false; }; - fish-plugin-gruvbox-theme = { url = "github:Jomik/fish-gruvbox"; flake = false; }; + fish-plugin-bobthefish = { + url = "github:oh-my-fish/theme-bobthefish"; + flake = false; + }; - arrpc = { url = "github:notashelf/arrpc-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; - chaotic-nyx.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; - grub2-themes = { url = "github:vinceliuice/grub2-themes"; inputs.nixpkgs.follows = "nixpkgs"; }; - openmw-git = { url = "gitlab:OpenMW/openmw"; flake = false; }; - waybar = { url = "github:alexays/waybar"; flake = false; }; - xorg-git = { url = "gitlab:xorg/xserver?host=gitlab.freedesktop.org"; flake = false; }; + fish-plugin-gruvbox-theme = { + url = "github:Jomik/fish-gruvbox"; + flake = false; + }; + + grub2-themes = { + url = "github:vinceliuice/grub2-themes"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + nixd = { + url = "github:nix-community/nixd"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + openmw-git = { + url = "gitlab:OpenMW/openmw"; + flake = false; + }; + + waybar = { + url = "github:alexays/waybar"; + flake = false; + }; + + xorg-git = { + url = "gitlab:xorg/xserver?host=gitlab.freedesktop.org"; + flake = false; + }; }; outputs = { self, nixpkgs, home-manager, ... }@inputs: @@ -39,6 +77,7 @@ inputs.chaotic-nyx.overlays.default inputs.hyprland-contrib.overlays.default inputs.hyprpicker.overlays.default + inputs.nixd.overlays.default ]; }; in @@ -46,31 +85,29 @@ overlays = (import ./overlay.nix { inherit inputs; }); nixosConfigurations.terra = nixpkgs.lib.nixosSystem - { - inherit system; - inherit pkgs; - specialArgs = { inherit inputs; }; - modules = [ - { - # needed to get tools working that expect a nixpkgs channel to exist - nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; - nix.registry.nixpkgs.flake = nixpkgs; - } - ./configuration.nix - home-manager.nixosModules.home-manager - { - home-manager = { - useUserPackages = true; - users.manuel = import ./user/home.nix; - extraSpecialArgs = { inherit inputs; }; - useGlobalPkgs = true; - }; - } - inputs.grub2-themes.nixosModules.default - inputs.chaotic-nyx.nixosModules.default - inputs.hyprland.nixosModules.default - ]; - }; + { + inherit system; + inherit pkgs; + specialArgs = { inherit inputs; }; + modules = [ + { + # needed to get tools working that expect a nixpkgs channel to exist + nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; + nix.registry.nixpkgs.flake = nixpkgs; + } + ./configuration.nix + home-manager.nixosModules.home-manager { + home-manager = { + useUserPackages = true; + users.manuel = import ./user/home.nix; + extraSpecialArgs = { inherit inputs; }; + useGlobalPkgs = true; + }; + } + inputs.grub2-themes.nixosModules.default + inputs.chaotic-nyx.nixosModules.default + inputs.hyprland.nixosModules.default + ]; + }; }; } - diff --git a/hardware-configuration.nix b/hardware-configuration.nix index b95b450..a6a328e 100755 --- a/hardware-configuration.nix +++ b/hardware-configuration.nix @@ -5,7 +5,8 @@ { imports = - [ (modulesPath + "/installer/scan/not-detected.nix") + [ + (modulesPath + "/installer/scan/not-detected.nix") ]; boot.initrd.availableKernelModules = [ "amdgpu" "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; @@ -14,23 +15,27 @@ boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "/dev/disk/by-uuid/33112a66-7f9a-482c-b14c-91490f2212c2"; + { + device = "/dev/disk/by-uuid/33112a66-7f9a-482c-b14c-91490f2212c2"; fsType = "btrfs"; options = [ "subvol=@nixos" "compress=zstd" ]; }; fileSystems."/mnt/hdd" = - { device = "/dev/disk/by-uuid/ecbbfb05-ada8-4044-81a6-9a280f93802f"; + { + device = "/dev/disk/by-uuid/ecbbfb05-ada8-4044-81a6-9a280f93802f"; fsType = "xfs"; }; fileSystems."/home" = - { device = "/dev/disk/by-uuid/4dd7a8ea-311a-458b-8839-1d92c7abab1f"; + { + device = "/dev/disk/by-uuid/4dd7a8ea-311a-458b-8839-1d92c7abab1f"; fsType = "xfs"; }; fileSystems."/boot/efi" = - { device = "/dev/disk/by-uuid/D56E-61DC"; + { + device = "/dev/disk/by-uuid/D56E-61DC"; fsType = "vfat"; }; diff --git a/overlay.nix b/overlay.nix index c96d84f..2863816 100755 --- a/overlay.nix +++ b/overlay.nix @@ -4,7 +4,7 @@ arrpc = inputs.arrpc.packages.${prev.system}.arrpc; - gruvbox-plus-icon-pack = prev.callPackage ./pkgs/gruvbox-plus-icon-pack {}; + gruvbox-plus-icon-pack = prev.callPackage ./pkgs/gruvbox-plus-icon-pack { }; ncmpcpp = prev.ncmpcpp.override { visualizerSupport = true; @@ -20,7 +20,7 @@ buildInputs = old.buildInputs ++ [ prev.libyamlcpp prev.luajit ]; - patches = []; + patches = [ ]; dontWrapQtApps = false; }); @@ -31,7 +31,7 @@ ]; extraLibraries = prev: [ ]; }; - + waybar_hyprland = prev.waybar.overrideAttrs (old: { version = "9999"; src = inputs.waybar; @@ -41,19 +41,10 @@ src/modules/wlr/workspace_manager.cpp ''; - mesonFlags = old.mesonFlags ++ [ - "-Dexperimental=true" + mesonFlags = old.mesonFlags ++ [ + "-Dexperimental=true" "-Dcava=disabled" ]; }); - - xwayland = prev.xwayland.overrideAttrs (old: { - version = "9999"; - src = inputs.xorg-git; - buildInputs = old.buildInputs ++ [ - prev.udev - prev.xorg.libpciaccess - ]; - }); }; } diff --git a/pkgs/gruvbox-plus-icon-pack/default.nix b/pkgs/gruvbox-plus-icon-pack/default.nix index 737d8e9..02f8c45 100755 --- a/pkgs/gruvbox-plus-icon-pack/default.nix +++ b/pkgs/gruvbox-plus-icon-pack/default.nix @@ -19,9 +19,7 @@ stdenvNoCC.mkDerivation rec { mkdir -p $out/share/icons/GruvboxPlus cp -r * $out/share/icons/GruvboxPlus - for theme in $out/share/icons/*; do - gtk-update-icon-cache $theme - done + gtk-update-icon-cache $out/share/icons/GruvboxPlus ''; dontDropIconThemeCache = true; diff --git a/user/configs/fish/default.nix b/user/configs/fish/default.nix index cf28f8b..beaa7cd 100755 --- a/user/configs/fish/default.nix +++ b/user/configs/fish/default.nix @@ -1,56 +1,53 @@ -{ config, pkgs, inputs, ... }: +{ config, pkgs, inputs, ... }: { - programs.exa = { - enable = true; - enableAliases = true; + programs.fish = { + enable = true; + + plugins = [ + { name = "gruvbox-theme"; src = inputs.fish-plugin-gruvbox-theme; } + { name = "bobthefish"; src = inputs.fish-plugin-bobthefish; } + ]; + + interactiveShellInit = '' + theme_gruvbox dark medium + ${pkgs.any-nix-shell}/bin/any-nix-shell fish --info-right | source + + set -g theme_color_scheme gruvbox + set -g theme_nerd_fonts yes + set -g theme_display_git_default_branch yes + set -g theme_git_default_branches master main + ''; + + functions = { + fish_greeting = ""; + + ec = '' + pushd . &> /dev/null + cd "${config.home.homeDirectory}/.dotfiles" + nvim "+Telescope find_files" + popd + ''; + + nor = '' + pushd . &> /dev/null + cd "${config.home.homeDirectory}/.dotfiles" + doas nixos-rebuild switch --flake .# + popd &> /dev/null + ''; + + nou = '' + pushd . &> /dev/null + cd "${config.home.homeDirectory}/.dotfiles" + nix flake update --commit-lock-file + doas nixos-rebuild switch --upgrade --flake .# + popd &> /dev/null + ''; }; - - programs.fish = { - enable = true; - - plugins = [ - { name = "gruvbox-theme"; src = inputs.fish-plugin-gruvbox-theme; } - { name = "bobthefish"; src = inputs.fish-plugin-bobthefish; } - ]; - - interactiveShellInit = '' - theme_gruvbox dark medium - ${pkgs.any-nix-shell}/bin/any-nix-shell fish --info-right | source - - set -g theme_color_scheme gruvbox - set -g theme_nerd_fonts yes - set -g theme_display_git_default_branch yes - set -g theme_git_default_branches master main - ''; - - functions = { - fish_greeting = ""; - - ec = '' - pushd . &> /dev/null - cd "${config.home.homeDirectory}/.dotfiles" - nvim "+Telescope find_files" - popd - ''; - - nor = '' - pushd . &> /dev/null - cd "${config.home.homeDirectory}/.dotfiles" - doas nixos-rebuild switch --flake .# - popd &> /dev/null - ''; - - nou = '' - pushd . &> /dev/null - cd "${config.home.homeDirectory}/.dotfiles" - nix flake update --commit-lock-file - doas nixos-rebuild switch --upgrade --flake .# - popd &> /dev/null - ''; - }; - shellAliases = { - nf = "${pkgs.neofetch}/bin/neofetch"; - e = "nvim"; - }; + shellAliases = { + e = "nvim"; + ls = "${pkgs.exa}/bin/exa --icons"; + ll = "${pkgs.exa}/bin/exa --icons -l"; + nf = "${pkgs.neofetch}/bin/neofetch"; }; + }; } diff --git a/user/configs/neovim/config/lua/plugins/cmp.lua b/user/configs/neovim/config/lua/plugins/cmp.lua index ebdc94f..3e3ddfc 100755 --- a/user/configs/neovim/config/lua/plugins/cmp.lua +++ b/user/configs/neovim/config/lua/plugins/cmp.lua @@ -63,7 +63,6 @@ cmp.setup({ { name = "buffer" }, { name = "path" }, { name = "nvim_lsp" }, - { name = "nvim_lsp_signature_help"}, { name = "luasnip" }, }), diff --git a/user/configs/neovim/config/lua/plugins/colorscheme.lua b/user/configs/neovim/config/lua/plugins/colorscheme.lua index ff353c5..416c757 100755 --- a/user/configs/neovim/config/lua/plugins/colorscheme.lua +++ b/user/configs/neovim/config/lua/plugins/colorscheme.lua @@ -1,5 +1,5 @@ require("gruvbox").setup({ - --transparent_mode = true + transparent_mode = true }) vim.cmd("colorscheme gruvbox") diff --git a/user/configs/neovim/config/lua/plugins/init.lua b/user/configs/neovim/config/lua/plugins/init.lua index 8e416ff..82da1fc 100755 --- a/user/configs/neovim/config/lua/plugins/init.lua +++ b/user/configs/neovim/config/lua/plugins/init.lua @@ -1,14 +1,14 @@ -require("plugins.colorscheme") -require("plugins.lualine") -require("plugins.bufferline") -require("plugins.treesitter") -require("plugins.lspconfig") -require("plugins.cmp") -require("plugins.telescope") -require("plugins.colorizer") -require("plugins.dressing") require("plugins.autopairs") +require("plugins.bufferline") +require("plugins.cmp") +require("plugins.colorizer") +require("plugins.colorscheme") require("plugins.comment") +require("plugins.dressing") +require("plugins.lspconfig") +require("plugins.lualine") require("plugins.smartsplits") +require("plugins.telescope") +require("plugins.treesitter") require("plugins.trouble") require("plugins.which-key") diff --git a/user/configs/neovim/config/lua/plugins/lspconfig.lua b/user/configs/neovim/config/lua/plugins/lspconfig.lua index f68c4ef..711ad57 100755 --- a/user/configs/neovim/config/lua/plugins/lspconfig.lua +++ b/user/configs/neovim/config/lua/plugins/lspconfig.lua @@ -1,9 +1,24 @@ local capabilities = require('cmp_nvim_lsp').default_capabilities() capabilities.textDocument.completion.completionItem.snippetSupport = true +capabilities.textDocument.foldingRange = { + dynamicRegistration = false, + lineFoldingOnly = true, +} local lspconfig = require("lspconfig") -lspconfig.rnix.setup { capabilities = capabilities } +local null_ls = require("null-ls") +local null_ls_formatting = null_ls.builtins.formatting + + +null_ls.setup({ + sources = { + null_ls_formatting.prettier, + null_ls_formatting.nixpkgs_fmt, + }, +}) + +lspconfig.nixd.setup { capabilities = capabilities } lspconfig.lua_ls.setup { capabilities = capabilities, diff --git a/user/configs/neovim/config/lua/plugins/smartsplits.lua b/user/configs/neovim/config/lua/plugins/smartsplits.lua index 402e34d..2f67e0d 100755 --- a/user/configs/neovim/config/lua/plugins/smartsplits.lua +++ b/user/configs/neovim/config/lua/plugins/smartsplits.lua @@ -1 +1,8 @@ -require("smart-splits").setup() +require("smart-splits").setup({ + ignored_filetypes = { + "neo-tree", + "nofile", + "quickfix", + "prompt", + } +}) diff --git a/user/configs/neovim/config/lua/plugins/which-key.lua b/user/configs/neovim/config/lua/plugins/which-key.lua index e104cb2..b701ce6 100755 --- a/user/configs/neovim/config/lua/plugins/which-key.lua +++ b/user/configs/neovim/config/lua/plugins/which-key.lua @@ -1,3 +1,7 @@ vim.o.timeoutlen = 100 -require("which-key").setup() +require("which-key").setup({ + window = { + padding = { 1, 5, 1, 5} + }, +}) diff --git a/user/configs/neovim/config/lua/remaps.lua b/user/configs/neovim/config/lua/remaps.lua index 4e7d1d3..853ce93 100755 --- a/user/configs/neovim/config/lua/remaps.lua +++ b/user/configs/neovim/config/lua/remaps.lua @@ -1,12 +1,37 @@ -local telescope_builtin = require("telescope.builtin") local map = vim.keymap.set +local telescope_builtin = require("telescope.builtin") +local smart_splits = require("smart-splits") map( "n", "", "BufferLineCyclePrev", { desc = "Prev buffer" }) map( "n", "", "BufferLineCycleNext", { desc = "Next buffer" }) -map( {"n", "i" }, "", "noh",{ desc = "Escape and clear hlsearch"}) +map( { "n", "i" }, "", "noh",{ desc = "Escape and clear hlsearch"}) map( "n", "ff", telescope_builtin.find_files, { desc = "Find Files" }) map( "n", "fb", telescope_builtin.buffers, { desc = "List Buffers" }) map( "n", "fh", telescope_builtin.help_tags, { desc = "Help Tags" }) map( "n", "fp", telescope_builtin.git_files, { desc = "Find Files (Git)" }) +map( "n", "fc", function() + telescope_builtin.git_files({ cwd = "~/.dotfiles"}) + end, { desc = "Edit Dotfiles" }) map( "n", "", "NeoTreeFocusToggle", { desc = "Open NeoTree" }) map( {"n", "x"}, "ga", ":EasyAlign", { desc = "Align text" }) + +-- resizing splits +map('n', '', smart_splits.resize_left) +map('n', '', smart_splits.resize_down) +map('n', '', smart_splits.resize_up) +map('n', '', smart_splits.resize_right) + +-- moving between splits +map('n', '', smart_splits.move_cursor_left) +map('n', '', smart_splits.move_cursor_down) +map('n', '', smart_splits.move_cursor_up) +map('n', '', smart_splits.move_cursor_right) + +-- swapping buffers between windows +map('n', 'h', smart_splits.swap_buf_left) +map('n', 'j', smart_splits.swap_buf_down) +map('n', 'k', smart_splits.swap_buf_up) +map('n', 'l', smart_splits.swap_buf_right) + +-- null-ls +map( 'n', "lf", vim.lsp.buf.format, { desc = "Format file"}) diff --git a/user/configs/neovim/config/lua/settings.lua b/user/configs/neovim/config/lua/settings.lua index 4a2a6a9..86e7959 100755 --- a/user/configs/neovim/config/lua/settings.lua +++ b/user/configs/neovim/config/lua/settings.lua @@ -8,6 +8,7 @@ vim.o.smartindent = true vim.o.background = "dark" vim.o.clipboard = "unnamedplus" +vim.o.mouse = "" vim.o.termguicolors = true vim.o.ignorecase = true vim.o.smartcase = true @@ -20,5 +21,7 @@ vim.o.backup = false vim.o.undodir = os.getenv("HOME") .. "/.local/share/nvim/undodir" vim.o.undofile = true +vim.o.scrolloff = 8 + vim.wo.number = true vim.wo.relativenumber = true diff --git a/user/configs/neovim/default.nix b/user/configs/neovim/default.nix index 1979a83..25392cc 100755 --- a/user/configs/neovim/default.nix +++ b/user/configs/neovim/default.nix @@ -1,63 +1,65 @@ { pkgs, ... }: { - programs.neovim = { - enable = true; + programs.neovim = { + enable = true; - plugins = with pkgs.vimPlugins; [ - bufferline-nvim - gruvbox-nvim - comment-nvim - dressing-nvim - lualine-nvim - luasnip - neo-tree-nvim - nvim-autopairs - nvim-colorizer-lua - nvim-notify - nvim-surround - nvim-web-devicons - which-key-nvim - smart-splits-nvim - legendary-nvim - vim-easy-align + plugins = with pkgs.vimPlugins; [ + bufferline-nvim + gruvbox-nvim + comment-nvim + dressing-nvim + lualine-nvim + luasnip + neo-tree-nvim + nvim-autopairs + nvim-colorizer-lua + nvim-notify + nvim-surround + nvim-web-devicons + which-key-nvim + smart-splits-nvim + vim-easy-align + mini-nvim - vim-fugitive + vim-fugitive - telescope-nvim - telescope-fzf-native-nvim - telescope-ui-select-nvim - telescope-undo-nvim + telescope-nvim + telescope-fzf-native-nvim + telescope-ui-select-nvim + telescope-undo-nvim - nvim-lspconfig - nvim-treesitter.withAllGrammars - trouble-nvim + null-ls-nvim + nvim-lspconfig + nvim-treesitter.withAllGrammars + trouble-nvim - nvim-cmp - cmp-buffer - cmp-cmdline - cmp-nvim-lsp - cmp-path - cmp_luasnip - cmp-nvim-lsp-signature-help - friendly-snippets - lspkind-nvim - ]; + nvim-cmp + cmp-buffer + cmp-cmdline + cmp-nvim-lsp + cmp-nvim-lsp-signature-help + cmp-path + cmp_luasnip + friendly-snippets + lspkind-nvim + ]; - extraPackages = with pkgs; [ - nodePackages.bash-language-server - clang-tools - lua-language-server - python3Packages.jedi-language-server - rnix-lsp - rust-analyzer - nodePackages.vscode-css-languageserver-bin - zls - ]; - }; + extraPackages = with pkgs; [ + nodePackages.bash-language-server + clang-tools + lua-language-server + python3Packages.jedi-language-server + nixpkgs-fmt + nixd + rust-analyzer + stylua + nodePackages.vscode-css-languageserver-bin + zls + ]; + }; - xdg.configFile.nvim = { - source = ./config; - recursive = true; - }; + xdg.configFile.nvim = { + source = ./config; + recursive = true; + }; } - diff --git a/user/configs/rofi/default.nix b/user/configs/rofi/default.nix index e8ddc6f..3ab27d9 100755 --- a/user/configs/rofi/default.nix +++ b/user/configs/rofi/default.nix @@ -5,7 +5,7 @@ package = pkgs.rofi-wayland; terminal = "${pkgs.foot}/bin/foot"; extraConfig = { - modi = "drun,run"; + modi = "drun,run"; }; theme = ./theme.rasi; }; diff --git a/user/configs/tmux/default.nix b/user/configs/tmux/default.nix index 5cfe5cf..0a27a4a 100755 --- a/user/configs/tmux/default.nix +++ b/user/configs/tmux/default.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: { programs.tmux = { - enable = true; + enable = true; }; } diff --git a/user/configs/wayland/hyprland/default.nix b/user/configs/wayland/hyprland/default.nix index b91b958..bd8886f 100755 --- a/user/configs/wayland/hyprland/default.nix +++ b/user/configs/wayland/hyprland/default.nix @@ -103,8 +103,8 @@ in misc { vfr = true vrr = 2 - enable_swallow = true - swallow_regex = ^(foot)$ + # enable_swallow = true + # swallow_regex = ^(foot)$ } decoration { @@ -133,7 +133,7 @@ in exec-once = ${pkgs.openrgb}/bin/openrgb --startminimized --profile autorun.orp exec-once = ${pkgs.blueman}/bin/blueman-applet exec-once = ${pkgs.networkmanagerapplet}/bin/nm-applet --indicator - exec-once = ${pkgs.mullvad-vpn}/bin/mullvad-gui + # exec-once = ${pkgs.mullvad-vpn}/bin/mullvad-gui exec-once = ${xwaylandSetPrimary}/bin/xwayland-setprimary.sh exec-once = ${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1 exec-once = ${pkgs.swww}/bin/swww-daemon @@ -142,9 +142,9 @@ in exec = ${wob-voldaemon}/bin/wob-volumeindicator.sh; exec = pkill waybar; ${pkgs.waybar_hyprland}/bin/waybar #Set cursor - exec = ${pkgs.hyprland}/bin/hyprctl setcursor "${config.gtk.cursorTheme.name}" 32 &> /dev/null + exec = ${pkgs.hyprland}/bin/hyprctl setcursor "${config.gtk.cursorTheme.name}" ${builtins.toString config.gtk.cursorTheme.size} &> /dev/null - env = XCURSOR_SIZE,32 + env = XCURSOR_SIZE,${builtins.toString config.gtk.cursorTheme.size} #keybinds bind = ${modKey}, 1, workspace, 1 @@ -206,16 +206,16 @@ in }; home.file.".local/share/kservices5/swww.desktop".text = '' - [Desktop Entry] - Type=Service - X-KDE-ServiceTypes=KonqPopupMenu/Plugin - MimeType=image/jpeg;image/png;image/svg - Actions=setSWWWWallpaper; - Encoding=UTF-8 + [Desktop Entry] + Type=Service + X-KDE-ServiceTypes=KonqPopupMenu/Plugin + MimeType=image/jpeg;image/png;image/svg + Actions=setSWWWWallpaper; + Encoding=UTF-8 - [Desktop Action setSWWWWallpaper] - Name=Set Image as Wallpaper - Exec=swww img "%f" + [Desktop Action setSWWWWallpaper] + Name=Set Image as Wallpaper + Exec=swww img "%f" ''; home.packages = [ pkgs.wl-clipboard pkgs.wl-clipboard-x11 pkgs.hyprpicker pkgs.swww pkgs.hyprprop ]; diff --git a/user/configs/wayland/waybar/default.nix b/user/configs/wayland/waybar/default.nix index d233150..5dfd8b0 100755 --- a/user/configs/wayland/waybar/default.nix +++ b/user/configs/wayland/waybar/default.nix @@ -54,13 +54,13 @@ in on-scroll-up = "hyprctl dispatch workspace e+1"; on-scroll-down = "hyprctl dispatch workspace e-1"; persistent_workspaces = { - "1" = [ "DP-1" ]; - "2" = [ "DP-1" ]; - "3" = [ "DP-1" ]; - "4" = [ "HDMI-A-1" ]; - "5" = [ "HDMI-A-1" ]; - "6" = [ "HDMI-A-1" ]; - }; + "1" = [ "DP-1" ]; + "2" = [ "DP-1" ]; + "3" = [ "DP-1" ]; + "4" = [ "HDMI-A-1" ]; + "5" = [ "HDMI-A-1" ]; + "6" = [ "HDMI-A-1" ]; + }; }; "hyprland/window" = { diff --git a/user/home.nix b/user/home.nix index 50badba..fed052c 100755 --- a/user/home.nix +++ b/user/home.nix @@ -1,61 +1,65 @@ { pkgs, inputs, ... }: { imports = [ - ./configs/beets - ./configs/cava - ./configs/wayland/hyprland - ./configs/rofi - ./configs/fish - ./configs/mpd - ./configs/mpv - ./configs/neovim - ./configs/firefox - ./configs/dircolors.nix - ./configs/xdg-mime.nix - ./configs/kvantum - ./configs/tmux + ./configs/beets + ./configs/cava + ./configs/wayland/hyprland + ./configs/rofi + ./configs/fish + ./configs/mpd + ./configs/mpv + ./configs/neovim + ./configs/firefox + ./configs/dircolors.nix + ./configs/xdg-mime.nix + ./configs/kvantum + ./configs/tmux + inputs.nix-index-database.hmModules.nix-index ]; home.username = "manuel"; home.homeDirectory = "/home/manuel"; home.packages = with pkgs; [ - appimage-run - bc - bottom - calcurse - gimp - gnome.file-roller - gnome.gnome-boxes - gnome.gvfs - gnome.seahorse - gnome.simple-scan - libsForQt5.dolphin - libsForQt5.dolphin-plugins - lutris - mesa-demos - nerdfonts - noto-fonts-cjk-sans - noto-fonts-cjk-serif - obs-studio - openmw - pavucontrol - protontricks - qbittorrent - qt5ct - sc-im - signal-desktop - sshfs - steam-run - sxiv - thunderbird - tldr - twemoji-color-font - vimv - vulkan-tools - vulkan-validation-layers - webcord-vencord - wineWowPackages.stagingFull - xdg-utils + appimage-run + bc + bottles + bottom + calcurse + gimp + gnome.file-roller + gnome.gnome-boxes + gnome.gvfs + gnome.seahorse + gnome.simple-scan + heroic + libsForQt5.dolphin + libsForQt5.dolphin-plugins + lutris + mangohud + mesa-demos + nerdfonts + noto-fonts-cjk-sans + noto-fonts-cjk-serif + obs-studio + openmw + pavucontrol + protontricks + qbittorrent + qt5ct + sc-im + signal-desktop + sshfs + steam-run + sxiv + thunderbird + tldr + twemoji-color-font + vimv + vulkan-tools + vulkan-validation-layers + webcord-vencord + wineWowPackages.stagingFull + xdg-utils ]; home.sessionVariables = { @@ -66,11 +70,15 @@ RADV_PERFTEST = "gpl"; WINEDLLOVERRIDES = "winemenubuilder.exe=d"; XDG_SCREENSHOTS_DIR = "~/Screenshots"; - WLR_NO_HARDWARE_CURSORS = "1"; + # WLR_NO_HARDWARE_CURSORS = "1"; }; fonts.fontconfig.enable = true; + programs.exa = { + enable = true; + }; + programs.keychain = { enable = true; enableFishIntegration = true; @@ -138,6 +146,7 @@ enable = true; enableFishIntegration = true; }; + nix-index-database.comma.enable = true; }; services.gnome-keyring.enable = true;