kakoune config
This commit is contained in:
parent
284e8a0ff6
commit
6f534bedcb
11 changed files with 197 additions and 6 deletions
|
@ -68,6 +68,7 @@ in {
|
|||
cd = "z";
|
||||
v = "nvim";
|
||||
h = "hx";
|
||||
k = "kak";
|
||||
e = "emacs";
|
||||
update = ''nh os switch "${gitPath}"'';
|
||||
flake = "cd '${gitPath}'";
|
||||
|
|
|
@ -4,6 +4,7 @@ _: {
|
|||
./gtk.nix
|
||||
./foot.nix
|
||||
./mpv.nix
|
||||
./kakoune.nix
|
||||
./qt.nix
|
||||
./zathura.nix
|
||||
./stylix.nix
|
||||
|
|
79
modules/gui/kakoune.nix
Normal file
79
modules/gui/kakoune.nix
Normal file
|
@ -0,0 +1,79 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.programs.kakoune;
|
||||
username = config.modules.other.system.username;
|
||||
# inherit (inputs.kakoune.packages.${pkgs.system}) kakoun;
|
||||
in {
|
||||
options.modules.programs.kakoune.enable = mkEnableOption "kakoune";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username} = {
|
||||
programs.kakoune = {
|
||||
enable = true;
|
||||
# extraConfig = builtins.readFile
|
||||
# package = kakoun;
|
||||
plugins = with pkgs.kakounePlugins; [
|
||||
auto-pairs-kak
|
||||
fzf-kak
|
||||
powerline-kak
|
||||
byline-kak
|
||||
kakoune-lsp
|
||||
# luar-kak
|
||||
];
|
||||
config = {
|
||||
ui = {
|
||||
statusLine = "top";
|
||||
enableMouse = true;
|
||||
assistant = "none";
|
||||
};
|
||||
numberLines.enable = true;
|
||||
numberLines.relative = true;
|
||||
numberLines.highlightCursor = true;
|
||||
# numberLines.separator = " ";
|
||||
showMatching = true;
|
||||
indentWidth = 2;
|
||||
tabStop = 2;
|
||||
scrollOff.lines = 1;
|
||||
scrollOff.columns = 3;
|
||||
keyMappings = [
|
||||
{
|
||||
mode = "normal";
|
||||
key = "<esc>";
|
||||
effect = ";,";
|
||||
docstring =
|
||||
"Press escape to clear highlighted text and collapse cursors";
|
||||
}
|
||||
{
|
||||
mode = "normal";
|
||||
key = "<c-v>";
|
||||
effect = ":comment-line<ret>";
|
||||
docstring = "Comment a line with <c-v>!";
|
||||
}
|
||||
{
|
||||
mode = "normal";
|
||||
key = "b";
|
||||
effect = ":db<ret>";
|
||||
docstring = "close current buffer";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "normal";
|
||||
key = "n";
|
||||
effect = ":bp<ret>";
|
||||
docstring = "go to next buffer";
|
||||
}
|
||||
{
|
||||
mode = "normal";
|
||||
key = "m";
|
||||
effect = ":bn<ret>";
|
||||
docstring = "go to next buffer";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
|
@ -17,13 +17,13 @@ in {
|
|||
targets = {
|
||||
btop.enable = true;
|
||||
fish.enable = true;
|
||||
dunst.enable = true;
|
||||
dunst.enable = false;
|
||||
emacs.enable = true;
|
||||
firefox.enable = true;
|
||||
kitty.enable = true;
|
||||
lazygit.enable = true;
|
||||
rofi.enable = true;
|
||||
foot.enable = true;
|
||||
foot.enable = false;
|
||||
tmux.enable = true;
|
||||
waybar.enable = true;
|
||||
vim.enable = true;
|
||||
|
@ -73,6 +73,7 @@ in {
|
|||
stylix = {
|
||||
image = ../../lib/wallpapers/FreeBSD.png;
|
||||
polarity = "dark";
|
||||
targets.plymouth.enable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1 +1 @@
|
|||
_: { imports = [ ./pipewire.nix ./ssh.nix ./greetd.nix ]; }
|
||||
_: { imports = [ ./pipewire.nix ./ssh.nix ./greetd.nix ./dunst.nix ]; }
|
||||
|
|
93
modules/services/dunst.nix
Normal file
93
modules/services/dunst.nix
Normal file
|
@ -0,0 +1,93 @@
|
|||
{ config, inputs, lib, pkgs, ... }:
|
||||
let
|
||||
cfg = config.modules.services.dunst;
|
||||
inherit (config.modules.other.system) username;
|
||||
|
||||
inherit (lib) mkEnableOption mkIf;
|
||||
in {
|
||||
options.modules.services.dunst.enable = mkEnableOption "dunst";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username} = {
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
package = inputs.nixpkgs-wayland.packages.${pkgs.system}.dunst;
|
||||
settings = {
|
||||
global = {
|
||||
monitor = 1;
|
||||
follow = "none";
|
||||
width = 300;
|
||||
height = 300;
|
||||
origin = "top-center";
|
||||
offset = "0x15";
|
||||
scale = 0;
|
||||
notification_limit = 3;
|
||||
idle_threshold = 120;
|
||||
progress_bar = true;
|
||||
progress_bar_height = 10;
|
||||
progress_bar_frame_width = 0;
|
||||
progress_bar_min_width = 150;
|
||||
progress_bar_max_width = 300;
|
||||
indicate_hidden = "yes";
|
||||
transparency = 10;
|
||||
separator_height = 2;
|
||||
padding = 10;
|
||||
frame_width = 3;
|
||||
frame_color = "#89B4FA";
|
||||
separator_color = "frame";
|
||||
highlight = "#89DCEB";
|
||||
sort = "yes";
|
||||
font = "JetBrains Mono 12";
|
||||
line_height = 0;
|
||||
markup = "full";
|
||||
format = ''
|
||||
<b>%s</b>
|
||||
%b'';
|
||||
alignment = "right";
|
||||
vertical_alignment = "center";
|
||||
show_age_threshold = 60;
|
||||
ellipsize = "middle";
|
||||
ignore_newline = "no";
|
||||
stack_duplicates = true;
|
||||
hide_duplicate_count = false;
|
||||
show_indicators = "yes";
|
||||
icon_position = "left";
|
||||
min_icon_size = 0;
|
||||
max_icon_size = 32;
|
||||
sticky_history = "yes";
|
||||
history_length = 20;
|
||||
dmenu = "${pkgs.rofi-wayland}/bin/rofi";
|
||||
browser = "${pkgs.xdg-utils}/bin/xdg-open";
|
||||
always_run_script = true;
|
||||
title = "Dunst";
|
||||
class = "dunst";
|
||||
corner_radius = 10;
|
||||
ignore_dbusclose = false;
|
||||
force_xwayland = false;
|
||||
force_xinerama = false;
|
||||
mouse_left_click = "do_action, close_current";
|
||||
mouse_middle_click = "context";
|
||||
mouse_right_click = "close_all";
|
||||
};
|
||||
experimental = { per_monitor_dpi = false; };
|
||||
urgency_low = {
|
||||
background = "#1E1E2E";
|
||||
foreground = "#CDD6F4";
|
||||
timeout = 5;
|
||||
};
|
||||
urgency_normal = {
|
||||
background = "#1E1E2E";
|
||||
foreground = "#CDD6F4";
|
||||
timeout = 6;
|
||||
};
|
||||
urgency_critical = {
|
||||
background = "#1E1E2E";
|
||||
foreground = "#CDD6F4";
|
||||
frame_color = "#FAB387";
|
||||
timeout = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue