Compare commits

..

4 Commits

Author SHA1 Message Date
Moritz Böhme e356b4fa8e
add nvim config 2023-02-16 18:04:52 +01:00
Moritz Böhme a197579c4d
update inputs 2023-02-16 18:04:51 +01:00
Moritz Böhme b048f43152
improve hyperland module
output waybar on all monitors and make comments prettier
2023-02-16 18:04:50 +01:00
Moritz Böhme e19b78bcd3
move theme definition 2023-02-11 15:39:45 +01:00
9 changed files with 161 additions and 68 deletions

View File

@ -24,11 +24,11 @@
"arkenfox-userjs": { "arkenfox-userjs": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1674781645, "lastModified": 1675728165,
"narHash": "sha256-NGp5BLOQmiXsUh9nrXP+PeVXyK1c8Ij5EnwtFXAkD9w=", "narHash": "sha256-ebSx6DaXoGKcCoK6UcDnWvdAW6J2X6pJRPD1Pw7UNOw=",
"owner": "arkenfox", "owner": "arkenfox",
"repo": "user.js", "repo": "user.js",
"rev": "b99dd27de828be13530ce2f48c9178d34f5f82ab", "rev": "73884850632ffe284f76881786f7d5903b917f58",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -84,11 +84,11 @@
"pre-commit-hooks": "pre-commit-hooks" "pre-commit-hooks": "pre-commit-hooks"
}, },
"locked": { "locked": {
"lastModified": 1675333319, "lastModified": 1676057905,
"narHash": "sha256-V7hcI+5hc/iPHxWrgdy3ip3aNgdWzpreE1C+cbRzlbo=", "narHash": "sha256-9uGgDgMTwspDQlR2laeYa4qwf3BoU04sKpOR1h6/bvM=",
"ref": "main", "ref": "main",
"rev": "cb0e0ad408f7fa8243713932abf7aa008147f2ff", "rev": "346600bd993ca400a493c9d9323a1caea267c650",
"revCount": 78, "revCount": 93,
"type": "git", "type": "git",
"url": "ssh://git@gitea.moritzboeh.me/moritz/emacs.git" "url": "ssh://git@gitea.moritzboeh.me/moritz/emacs.git"
}, },
@ -104,11 +104,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1675309900, "lastModified": 1676025076,
"narHash": "sha256-liDBB8HjXkJZ/WJ1hGDKuCl5QkPPJko9XY/eyxKd7lg=", "narHash": "sha256-sdYhoZsLLwRXZebP6DYfIgQRjFA+itdNXaPuCWfJYkk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "emacs-overlay", "repo": "emacs-overlay",
"rev": "7276116feb26bf3fc2834709a2ea2f6ed738cc52", "rev": "581072bb0d49768da9370056f7b6e7b761b5d8be",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -227,11 +227,11 @@
"forgit-git": { "forgit-git": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1675097212, "lastModified": 1676021219,
"narHash": "sha256-PGFYw7JbuYHOVycPlYcRItElcyuKEg2cGv4wn6In5Mo=", "narHash": "sha256-/cqDhHilbMSrzwip+2CGJ9Il4wsx5skyMbqC98hewdc=",
"owner": "wfxr", "owner": "wfxr",
"repo": "forgit", "repo": "forgit",
"rev": "aa85792ec465ceee254be0e8e70d8703c7029f66", "rev": "065f7841f334b8707a49ac30d19370aa859db2ed",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -291,11 +291,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1675303228, "lastModified": 1675935446,
"narHash": "sha256-dHJbFg7gTuTyEUdJoNDp6l2bac6HXAT/bz9cVEqL+Uw=", "narHash": "sha256-WajulTn7QdwC7QuXRBavrANuIXE5z+08EdxdRw1qsNs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4a958524903e6019f5f69a23e0c0f16e5af01eb0", "rev": "2dce7f1a55e785a22d61668516df62899278c9e4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -352,11 +352,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1675285561, "lastModified": 1676120405,
"narHash": "sha256-0l239rdKHmtCf8xckssOk3bXf+gTXZa6gOEVVVeIfb0=", "narHash": "sha256-5DSaAh3ifx3tW7ZMF7GFy/Kw4uHs3ZUtt+cH9+YVOXY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "32d56fec977b109aeecb06288a1b45cfe6b83117", "rev": "97e0f02621829d011e08506c7361236b07f3f2b4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -391,11 +391,11 @@
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1675010546, "lastModified": 1676033584,
"narHash": "sha256-mx2WkCa2yUaZakioiLY7dHrU0fZS2szlqghbDbc34RE=", "narHash": "sha256-MeF1nR09cUdkCd1KNjzxImwhqsP2cbn/0M6z87fNJAk=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprpaper", "repo": "hyprpaper",
"rev": "0c2386861afbb10c8c5eb6de868fa2a519df2907", "rev": "44a38bfedc009bcc05eed571e80a397a80075a9f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -406,11 +406,11 @@
}, },
"master": { "master": {
"locked": { "locked": {
"lastModified": 1675333202, "lastModified": 1676126546,
"narHash": "sha256-ZcZqGz2K7V9/uIrWfdmKUfC5PkcuR29DKTqUTF5BURo=", "narHash": "sha256-LYDhE85B+MQMvIS3/SVnLSsKBC6aTeFrMRa6pN75mlg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a2780dc543d24f33d7a2d7fa5b2bf609ed8c1849", "rev": "aebc76376ca2da5ee4524326e6f83a3a18587d54",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -469,11 +469,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1675249806, "lastModified": 1675758091,
"narHash": "sha256-u8Rcqekusl3pMZm68hZqr6zozI8Ug5IxqOiqDLAlu1k=", "narHash": "sha256-7gFSQbSVAFUHtGCNHPF7mPc5CcqDk9M2+inlVPZSneg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "79feedf38536de2a27d13fe2eaf200a9c05193ba", "rev": "747927516efcb5e31ba03b7ff32f61f6d47e7d87",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -501,11 +501,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1673540789, "lastModified": 1675273418,
"narHash": "sha256-xqnxBOK3qctIeUVxecydrEDbEXjsvHCPGPbvsl63M/U=", "narHash": "sha256-tpYc4TEGvDzh9uRf44QemyQ4TpVuUbxb07b2P99XDbM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0f213d0fee84280d8c3a97f7469b988d6fe5fcdf", "rev": "4d7c2644dbac9cf8282c0afe68fca8f0f3e7b2db",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -533,11 +533,11 @@
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1675249806, "lastModified": 1675940568,
"narHash": "sha256-u8Rcqekusl3pMZm68hZqr6zozI8Ug5IxqOiqDLAlu1k=", "narHash": "sha256-epG6pOT9V0kS+FUqd7R6/CWkgnZx2DMT5Veqo+y6G3c=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "79feedf38536de2a27d13fe2eaf200a9c05193ba", "rev": "6ccc4a59c3f1b56d039d93da52696633e641bc71",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -578,11 +578,11 @@
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1675169698, "lastModified": 1675688762,
"narHash": "sha256-C1wFiyJ+4SRvIsFkdMIN1Fa+58APmyTGKWpX9EKOehM=", "narHash": "sha256-oit/SxMk0B380ASuztBGQLe8TttO1GJiXF8aZY9AYEc=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "ce4efeec34c6eb35ba07b8fceaae87d6b46c1c5f", "rev": "ab608394886fb04b8a5df3cb0bab2598400e3634",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -625,11 +625,11 @@
"nixpkgs-stable": "nixpkgs-stable_2" "nixpkgs-stable": "nixpkgs-stable_2"
}, },
"locked": { "locked": {
"lastModified": 1675169698, "lastModified": 1675688762,
"narHash": "sha256-C1wFiyJ+4SRvIsFkdMIN1Fa+58APmyTGKWpX9EKOehM=", "narHash": "sha256-oit/SxMk0B380ASuztBGQLe8TttO1GJiXF8aZY9AYEc=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "ce4efeec34c6eb35ba07b8fceaae87d6b46c1c5f", "rev": "ab608394886fb04b8a5df3cb0bab2598400e3634",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -659,11 +659,11 @@
}, },
"stable": { "stable": {
"locked": { "locked": {
"lastModified": 1675237434, "lastModified": 1675918889,
"narHash": "sha256-YoFR0vyEa1HXufLNIFgOGhIFMRnY6aZ0IepZF5cYemo=", "narHash": "sha256-hy7re4F9AEQqwZxubct7jBRos6md26bmxnCjxf5utJA=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "285b3ff0660640575186a4086e1f8dc0df2874b5", "rev": "49efda9011e8cdcd6c1aad30384cb1dc230c82fe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -710,11 +710,11 @@
"flake": false, "flake": false,
"locked": { "locked": {
"host": "gitlab.freedesktop.org", "host": "gitlab.freedesktop.org",
"lastModified": 1672824257, "lastModified": 1675374853,
"narHash": "sha256-SbYoZj57VlopTzI+OSW9jlgYxN1gI1KLg/s/HV+87eE=", "narHash": "sha256-BSrjNcddYWhFUMtjGwxiEXw67MYRaIHGvLn19Mvm1NE=",
"owner": "wlroots", "owner": "wlroots",
"repo": "wlroots", "repo": "wlroots",
"rev": "5f264a7d6c8af27d41ff440c05262b022c055593", "rev": "677a3f2f8847ed2de49dd60868f9d9487a546f58",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {

View File

@ -148,6 +148,7 @@
nixpkgs-fmt.enable = true; nixpkgs-fmt.enable = true;
statix.enable = true; statix.enable = true;
shellcheck.enable = true; shellcheck.enable = true;
stylua.enable = true;
}; };
}; };

View File

@ -21,7 +21,6 @@ in
options.my.theming = { options.my.theming = {
enable = mkEnableOption "theming"; enable = mkEnableOption "theming";
scheme = mkOption { scheme = mkOption {
default = "catppuccin-macchiato";
type = types.enum [ type = types.enum [
"dracula" "dracula"
"catppuccin-latte" "catppuccin-latte"

View File

@ -8,7 +8,10 @@ with lib; {
# config # config
yubikey.enable = true; yubikey.enable = true;
wallpapers.enable = true; wallpapers.enable = true;
theming.enable = true; theming = {
enable = true;
scheme = "catppuccin-macchiato";
};
virtualisation = { virtualisation = {
podman.enable = true; podman.enable = true;
libvirtd.enable = true; libvirtd.enable = true;

View File

@ -28,7 +28,7 @@
./ssh.nix ./ssh.nix
./sway.nix ./sway.nix
./thunar.nix ./thunar.nix
./vim.nix ./nvim
./xmonad ./xmonad
./zathura.nix ./zathura.nix
./zsh.nix ./zsh.nix

View File

@ -145,8 +145,8 @@ in
bind = $mainMod, M, exec, hyprctl keyword general:layout master bind = $mainMod, M, exec, hyprctl keyword general:layout master
bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, Q, killactive, bind = $mainMod, Q, killactive,
bind = $mainMod, R, exec, rofi -x11 -show combi bind = $mainMod, R, exec, rofi -show combi
bind = $mainMod, C, exec, rofi -x11 -show calc -modi calc -no-show-match -no-sort | wl-copy bind = $mainMod, C, exec, rofi -show calc -modi calc -no-show-match -no-sort | wl-copy
bind = $mainMod, B, exec, rofi-bluetooth bind = $mainMod, B, exec, rofi-bluetooth
bind = $mainMod, RETURN, exec, kitty bind = $mainMod, RETURN, exec, kitty
bind = $mainMod, T, togglesplit, # dwindle bind = $mainMod, T, togglesplit, # dwindle

View File

@ -66,11 +66,6 @@ in
layer = "top"; layer = "top";
position = "top"; position = "top";
height = 30; height = 30;
output = [
"eDP-1"
"HDMI-A-1"
"HDMI-A-2"
];
modules-left = [ "wlr/workspaces" ]; modules-left = [ "wlr/workspaces" ];
modules-center = [ "hyprland/window" ]; modules-center = [ "hyprland/window" ];
modules-right = [ "network" "memory" "cpu" "battery" "clock" ]; modules-right = [ "network" "memory" "cpu" "battery" "clock" ];
@ -151,18 +146,12 @@ in
# add user packages for wayland and hyprland in particular # add user packages for wayland and hyprland in particular
users.users.moritz.packages = with pkgs; [ users.users.moritz.packages = with pkgs; [
# pulse audio cli pamixer # pulse audio cli
pamixer playerctl # control media playback
# control media playback brightnessctl # control brightness
playerctl grimblast # screenshot tool for hyprland
# control brightness slurp # region select for wayland (for screensharing)
brightnessctl wl-clipboard # clipboard tool for wayland
# screenshot tool for hyprland
grimblast
# region select for wayland (for screensharing)
slurp
# clipboard tool for wayland
wl-clipboard
]; ];

View File

@ -24,6 +24,19 @@ in
vimdiffAlias = true; vimdiffAlias = true;
withNodeJs = true; withNodeJs = true;
withPython3 = true; withPython3 = true;
extraLuaConfig = builtins.readFile ./init.lua;
plugins = with pkgs.vimPlugins; [
catppuccin-nvim
dashboard-nvim
neogit
noice-nvim
nui-nvim # for noice-nvim
nvim-treesitter.withAllGrammars
nvim-web-devicons # for dashboard-nvim
plenary-nvim # for telescope, neogit
telescope-nvim
which-key-nvim
];
}; };
}; };
} }

View File

@ -0,0 +1,88 @@
vim.g.mapleader = " "
vim.g.maplocalleader = ","
-- FIX to create spell dir if not existent
local spelldir = vim.fn.stdpath("data") .. "/site/spell"
if not vim.loop.fs_stat(spelldir) then
vim.fn.mkdir(spelldir, "p")
end
vim.opt.autoindent = true
vim.opt.backupdir = { vim.fn.stdpath("state") .. "/nvim/backup//" } -- don't store backup in files dir
vim.opt.clipboard = "unnamedplus" -- sync with system clipboard
vim.opt.conceallevel = 2
vim.opt.expandtab = true -- spaces instead of tabs
vim.opt.guifont = "Fira Code Nerd Font:h1"
vim.opt.ignorecase = true
vim.opt.mouse = "a" -- mouse for all modes
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.scrolloff = 4 -- lines of context
vim.opt.shiftround = true -- round indent
vim.opt.shiftwidth = 0 -- use tabstop value
vim.opt.shortmess:append({ c = true })
vim.opt.signcolumn = "yes"
vim.opt.smartcase = true
vim.opt.splitbelow = true
vim.opt.splitright = true
vim.opt.tabstop = 2
vim.opt.termguicolors = true
vim.opt.undofile = true
vim.opt.undolevels = 10000
vim.opt.updatetime = 300
vim.opt_local.spell = true
vim.opt_local.spelllang = { "en", "de_20" } -- all English regions and new German spelling
-- plugins
require("catppuccin").setup({
flavour = "macchiato",
})
vim.cmd.colorscheme("catppuccin")
vim.o.timeout = true
vim.o.timeoutlen = 300
local wk = require("which-key")
require("noice").setup({
lsp = {
-- override markdown rendering so that **cmp** and other plugins use **Treesitter**
override = {
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
["vim.lsp.util.stylize_markdown"] = true,
["cmp.entry.get_documentation"] = true,
},
},
-- you can enable a preset for easier configuration
presets = {
bottom_search = true, -- use a classic bottom cmdline for search
command_palette = true, -- position the cmdline and popupmenu together
long_message_to_split = true, -- long messages will be sent to a split
inc_rename = false, -- enables an input dialog for inc-rename.nvim
lsp_doc_border = false, -- add a border to hover docs and signature help
},
})
wk.register({
f = {
name="find",
f = { "<cmd>Telescope find_files<cr>", "find file" },
g = { "<cmd>Telescope live_grep<cr>", "live grep" },
b = { "<cmd>Telescope buffers<cr>", "find buffer" },
},
}, { prefix = "<leader>" })
require("neogit").setup({
disable_commit_confirmation = true,
})
wk.register({
g = { "<cmd>Neogit<cr>", "git" }
}, { prefix = "<leader>"})
require("nvim-treesitter.configs").setup({
sync_install = false,
auto_install = false,
highlight = {
enable = true,
additional_vim_regex_highlighting = true,
},
})