summaryrefslogtreecommitdiff
path: root/hm
diff options
context:
space:
mode:
Diffstat (limited to 'hm')
-rw-r--r--hm/editors/nixvim.nix108
-rw-r--r--hm/env/niri/binds.nix58
-rw-r--r--hm/shell/cli.nix1
-rw-r--r--hm/soft/kdeconnect.nix11
-rw-r--r--hm/soft/media.nix1
-rw-r--r--hm/soft/nixcord.nix150
-rw-r--r--hm/soft/obs.nix9
-rw-r--r--hm/soft/soft.nix1
8 files changed, 247 insertions, 92 deletions
diff --git a/hm/editors/nixvim.nix b/hm/editors/nixvim.nix
index b4d24a7..51fdf95 100644
--- a/hm/editors/nixvim.nix
+++ b/hm/editors/nixvim.nix
@@ -17,23 +17,84 @@ in
waylandSupport = true;
colorschemes.gruvbox.enable = true;
+ globals.mapleader = " ";
+
+ keymaps = [
+ {
+ # mode = [ "n" "i" "v" ];
+ key = "<F1>";
+ action = "<NOP>";
+ options.silent = true;
+ }
+ {
+ mode = "n";
+ key = "<leader>ff";
+ action = "<cmd>Telescope find_files<CR>";
+ options.desc = "Find Files";
+ }
+ {
+ mode = "n";
+ key = "<leader>fg";
+ action = "<cmd>Telescope live_grep<CR>";
+ options.desc = "Live Grep";
+ }
+ {
+ mode = "n";
+ key = "<leader>ma";
+ action = "<cmd>MCpattern<CR>";
+ options.desc = "Select all matches of pattern";
+ }
+ {
+ mode = "n";
+ key = "<leader>ha";
+ action = ''<cmd>lua require("harpoon.mark").add_file()<CR>'';
+ options.desc = "Harpoon: Mark File";
+ }
+ {
+ mode = "n";
+ key = "<leader>hh";
+ action = ''<cmd>lua require("harpoon.ui").toggle_quick_menu()<CR>'';
+ options.desc = "Harpoon: Show Menu";
+ }
+ {
+ mode = "n";
+ key = "<leader>xx";
+ action = "<cmd>Trouble diagnostics toggle<CR>";
+ options.desc = "Toggle Trouble (Diagnostics)";
+ }
+ ];
+
plugins = {
- lualine.enable = true;
+ lualine = {
+ enable = true;
+ settings.options.theme = "gruvbox-material";
+ };
+ multicursors.enable = true;
+ treesitter-context = {
+ enable = true;
+ settings = {
+ max_lines = 2;
+ trim_scope = "outer";
+ };
+ };
oil.enable = true;
- lazygit.enable = true;
persistence.enable = true;
nvim-autopairs.enable = true;
neoscroll.enable = true;
bufferline.enable = true;
web-devicons.enable = true;
+ blink-cmp.enable = true;
+ gitsigns.enable = true;
+ which-key.enable = true;
+ harpoon = {
+ enable = true;
+ enableTelescope = true;
+ };
+ toggleterm.enable = true;
treesitter = {
enable = true;
- settings = {
- indent.enable = true;
- };
};
-
telescope = {
enable = true;
extensions = {
@@ -43,28 +104,27 @@ in
};
};
- notify = {
+ noice.enable = true;
+ dressing.enable = true;
+ trouble.enable = true;
+ conform-nvim = {
enable = true;
- settings = {
- backgroundColour = "#1e1e2e";
- fps = 60;
- render = "default";
- timeout = 500;
- topDown = true;
+ settings.format_on_save = {
+ lsp_fallback = true;
+ timeout_ms = 500;
};
};
- hardtime = {
- # enable = true;
- settings = {
- # disableMouse = true;
- # enabled = false;
- restrictionMode = "hint";
- hint = true;
- maxCount = 40;
- maxTime = 1000;
- };
- };
+ # notify = {
+ # enable = true;
+ # settings = {
+ # backgroundColour = "#1e1e2e";
+ # fps = 60;
+ # render = "default";
+ # timeout = 500;
+ # topDown = true;
+ # };
+ # };
nix.enable = true;
lsp = {
diff --git a/hm/env/niri/binds.nix b/hm/env/niri/binds.nix
index cfa15e8..3c3c00e 100644
--- a/hm/env/niri/binds.nix
+++ b/hm/env/niri/binds.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with config.lib.niri.actions;
let
playerctl = spawn "${pkgs.playerctl}/bin/playerctl";
@@ -17,11 +22,10 @@ in
# microphone
XF86AudioMute.action = spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle";
# # headphones
- "Mod+XF86AudioMute".
- action = spawn "sh" "-c" ''
- wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
- wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
- '';
+ "Mod+XF86AudioMute".action = spawn "sh" "-c" ''
+ wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && \
+ wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
+ '';
"Super+Shift+L".action = spawn "swaylock" "-f";
# Media keys
@@ -44,20 +48,19 @@ in
"Mod+S" = {
action = spawn "sh" "-c" ''
- grim -g "$(slurp)" - | tee ${ss}.png | wl-copy
- '';
+ grim -g "$(slurp)" - | tee ${ss}.png | wl-copy
+ '';
repeat = false;
};
"Mod+Shift+S" = {
action = spawn "sh" "-c" ''
- grim -g "$(slurp)" ${ss}.png
- satty --filename "${ss}.png" --output-filename "${ss}-edited.png"
- '';
+ grim -g "$(slurp)" ${ss}.png
+ satty --filename "${ss}.png" --output-filename "${ss}-edited.png"
+ '';
repeat = false;
};
- "Mod+Shift+D".action = spawn "sh" "-c"
- ''
+ "Mod+Shift+D".action = spawn "sh" "-c" ''
cliphist list | fuzzel --dmenu | cliphist decode | wl-copy
'';
@@ -106,12 +109,23 @@ in
"Super+Return".action = spawn "obs-cmd" "replay" "save";
-} // (
- builtins.listToAttrs (builtins.concatMap (keyNum: let
- key = toString keyNum;
- targetWS = keyNum + 1;
- in [
- { name = "Mod+${key}"; value.action = focus-workspace targetWS; }
- { name = "Mod+Shift+${key}"; value.action.move-column-to-workspace = [ targetWS ]; }
- ]) (lib.range 1 9))
-)
+}
+// (builtins.listToAttrs (
+ builtins.concatMap (
+ keyNum:
+ let
+ key = toString keyNum;
+ targetWS = keyNum + 1;
+ in
+ [
+ {
+ name = "Mod+${key}";
+ value.action = focus-workspace targetWS;
+ }
+ {
+ name = "Mod+Shift+${key}";
+ value.action.move-column-to-workspace = [ targetWS ];
+ }
+ ]
+ ) (lib.range 1 9)
+))
diff --git a/hm/shell/cli.nix b/hm/shell/cli.nix
index 4a66405..01aeb67 100644
--- a/hm/shell/cli.nix
+++ b/hm/shell/cli.nix
@@ -30,6 +30,7 @@ in
};
home.packages = with pkgs; [
+ nix-search-cli
magic-wormhole
srm
file
diff --git a/hm/soft/kdeconnect.nix b/hm/soft/kdeconnect.nix
deleted file mode 100644
index fbaea82..0000000
--- a/hm/soft/kdeconnect.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ config, lib, ... }:
-let
- cfg = config.hm.soft.kdeconnect;
-in
-{
- options.hm.soft.kdeconnect.enable = lib.mkEnableOption "enables kde connect integration and dolphin";
-
- config = lib.mkIf cfg.enable {
- services.kdeconnect.enable = true;
- };
-}
diff --git a/hm/soft/media.nix b/hm/soft/media.nix
index 0d18595..3ea4dfa 100644
--- a/hm/soft/media.nix
+++ b/hm/soft/media.nix
@@ -6,6 +6,7 @@ in
options.hm.soft.media.enable = lib.mkEnableOption "media cli tools";
config = lib.mkIf cfg.enable {
home.packages = with pkgs; [
+ krita
gimp
zathura
pinta
diff --git a/hm/soft/nixcord.nix b/hm/soft/nixcord.nix
index 2f12aca..1b9a9e8 100644
--- a/hm/soft/nixcord.nix
+++ b/hm/soft/nixcord.nix
@@ -1,4 +1,9 @@
-{ inputs, config, lib, ... }:
+{
+ inputs,
+ config,
+ lib,
+ ...
+}:
let
cfg = config.hm.soft.nixcord;
in
@@ -23,22 +28,40 @@ in
config = {
frameless = true;
plugins = {
- ClearURLs.enable = true;
+ ClearURLs.enable = true;
RPCEditor.enable = true;
OnePingPerDM.enable = true;
- PinDMs = { enable = true; canCollapseDmSection = true; };
+ PinDMs = {
+ enable = true;
+ canCollapseDmSection = true;
+ };
SaveFavoriteGIFs.enable = true;
altKrispSwitch.enable = true;
- alwaysExpandRoles = { enable = true; hideArrow = true; };
- alwaysTrust = { enable = true; domain = false; };
+ alwaysExpandRoles = {
+ enable = true;
+ hideArrow = true;
+ };
+ alwaysTrust = {
+ enable = true;
+ domain = false;
+ };
anammox.enable = true;
betterGifAltText.enable = true;
- betterGifPicker = { enable = true; keepOpen = true; };
+ betterGifPicker = {
+ enable = true;
+ keepOpen = true;
+ };
betterInvites.enable = true;
- betterNotesBox = { enable = true; hide = true; };
+ betterNotesBox = {
+ enable = true;
+ hide = true;
+ };
betterRoleContext.enable = true;
betterUploadButton.enable = true;
- betterUserArea = { enable = true; alwaysShowUsername = false; };
+ betterUserArea = {
+ enable = true;
+ alwaysShowUsername = false;
+ };
biggerStreamPreview.enable = true;
bypassPinPrompt.enable = true;
callTimer.enable = true;
@@ -48,10 +71,21 @@ in
customTimestamps.enable = true;
disableCallIdle.enable = true;
dontRoundMyTimestamps.enable = true;
- equicordHelper = { enable = true; noMirroredCamera = true; removeActivitySection = true; };
- equicordToolbox = { enable = true; showPluginMenu = false; };
+ equicordHelper = {
+ enable = true;
+ noMirroredCamera = true;
+ removeActivitySection = true;
+ };
+ equicordToolbox = {
+ enable = true;
+ showPluginMenu = false;
+ };
expressionCloner.enable = true;
- fakeNitro = { enable = true; enableEmojiBypass = false; enableStickerBypass = false; };
+ fakeNitro = {
+ enable = true;
+ enableEmojiBypass = false;
+ enableStickerBypass = false;
+ };
favoriteEmojiFirst.enable = true;
favoriteGifSearch.enable = true;
fixImagesQuality.enable = true;
@@ -62,26 +96,59 @@ in
friendsSince.enable = true;
fullSearchContext.enable = true;
fullUserInChatbox.enable = true;
- gifCollections = { enable = true; onlyShowCollections = true; preventDuplicates = true; showCopyImageLink = true; };
- gifRoulette = { enable = true; pingOwnerChance = false; };
+ gifCollections = {
+ enable = true;
+ onlyShowCollections = true;
+ preventDuplicates = true;
+ showCopyImageLink = true;
+ };
+ gifRoulette = {
+ enable = true;
+ pingOwnerChance = false;
+ };
guildTagSettings.enable = true;
homeTyping.enable = true;
iLoveSpam.enable = true;
ignoreTerms.enable = true;
- imageFilename = { enable = true; showFullUrl = true; };
+ imageFilename = {
+ enable = true;
+ showFullUrl = true;
+ };
imageLink.enable = true;
- imageZoom = { enable = true; nearestNeighbour = true; square = true; };
+ imageZoom = {
+ enable = true;
+ nearestNeighbour = true;
+ square = true;
+ };
inviteDefaults.enable = true;
- limitMiddleClickPaste = { enable = true; limitTo = "never"; };
+ limitMiddleClickPaste = {
+ enable = true;
+ limitTo = "never";
+ };
memberCount.enable = true;
- mentionAvatars = { enable = true; showAtSymbol = true; };
+ mentionAvatars = {
+ enable = true;
+ showAtSymbol = true;
+ };
messageLinkEmbeds.enable = true;
- messageLinkTooltip = { enable = true; display = "cozy"; };
- messageLogger = { enable = true; ignoreSelf = true; };
- moyai = { enable = true; quality = "HD"; };
+ messageLinkTooltip = {
+ enable = true;
+ display = "cozy";
+ };
+ messageLogger = {
+ enable = true;
+ ignoreSelf = true;
+ };
+ moyai = {
+ enable = true;
+ quality = "HD";
+ };
musicControls.enable = true;
neverPausePreviews.enable = true;
- newGuildSettings = { enable = true; messages = 1; };
+ newGuildSettings = {
+ enable = true;
+ messages = 1;
+ };
noF1.enable = true;
noMaskedUrlPaste.enable = true;
noModalAnimation.enable = true;
@@ -89,38 +156,59 @@ in
noNitroUpsell.enable = true;
noOnboardingDelay.enable = true;
noPendingCount.enable = true;
- noProfileThemes.enable = true;
+ noProfileThemes.enable = true;
noTypingAnimation.enable = true;
openInApp.enable = true;
- overrideForumDefaults = { enable = true; defaultLayout = 2; };
+ overrideForumDefaults = {
+ enable = true;
+ defaultLayout = 2;
+ };
pauseInvitesForever.enable = true;
- permissionFreeWill = { enable = true; lockout = false; };
+ permissionFreeWill = {
+ enable = true;
+ lockout = false;
+ };
permissionsViewer.enable = true;
pinIcon.enable = true;
platformIndicators.enable = true;
relationshipNotifier.enable = true;
- replyTimestamp.enable = true;
+ replyTimestamp.enable = true;
roleColorEverywhere.enable = true;
sendTimestamps.enable = true;
serverInfo.enable = true;
showConnections.enable = true;
- showHiddenChannels = { enable = true; channelStyle = 3; };
+ showHiddenChannels = {
+ enable = true;
+ channelStyle = 3;
+ };
showHiddenThings.enable = true;
- showTimeoutDuration.enable = true;
+ showTimeoutDuration.enable = true;
splitLargeMessages.enable = true;
- spotifyCrack = { enable = true; noSpotifyAutoPause = false; };
+ spotifyCrack = {
+ enable = true;
+ noSpotifyAutoPause = false;
+ };
streamerModeOnStream.enable = true;
- superReactionTweaks = { enable = true; superReactionPlayingLimit = 0.0; };
+ superReactionTweaks = {
+ enable = true;
+ superReactionPlayingLimit = 0.0;
+ };
typingIndicator.enable = true;
typingTweaks.enable = true;
unindent.enable = true;
- universalMention = { enable = true; globalMention = true; };
+ universalMention = {
+ enable = true;
+ globalMention = true;
+ };
unlimitedAccounts.enable = true;
unlockedAvatarZoom.enable = true;
userVoiceShow.enable = true;
validReply.enable = true;
validUser.enable = true;
- viewIcons = { enable = true; format = "png"; };
+ viewIcons = {
+ enable = true;
+ format = "png";
+ };
voiceDownload.enable = true;
voiceMessages.enable = true;
volumeBooster.enable = true;
diff --git a/hm/soft/obs.nix b/hm/soft/obs.nix
index c6bf326..29c82a4 100644
--- a/hm/soft/obs.nix
+++ b/hm/soft/obs.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
let
cfg = config.hm.soft.obs;
in
@@ -8,8 +13,6 @@ in
programs.obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [
- wlrobs
- obs-websocket
obs-pipewire-audio-capture
];
};
diff --git a/hm/soft/soft.nix b/hm/soft/soft.nix
index bc20da3..4372d3f 100644
--- a/hm/soft/soft.nix
+++ b/hm/soft/soft.nix
@@ -4,7 +4,6 @@
./browser.nix
./easyeffects.nix
./email.nix
- ./kdeconnect.nix
./kdenlive.nix
./mangohud.nix
./media.nix