Small update
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
./xdg.nix
|
||||
./yazi.nix
|
||||
./zed.nix
|
||||
./zellij.nix
|
||||
# ./zen-browser.nix
|
||||
];
|
||||
}
|
||||
|
||||
@@ -76,6 +76,8 @@
|
||||
isDefault = true;
|
||||
extensions = {
|
||||
force = true;
|
||||
# For a list of available packaged extensions, see:
|
||||
# https://github.com/nix-community/nur-combined/blob/main/repos/rycee/pkgs/firefox-addons/addons.json
|
||||
packages = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
ublock-origin
|
||||
bitwarden
|
||||
|
||||
@@ -42,7 +42,11 @@ in
|
||||
vscode-langservers-extracted # HTML/CSS/JSON/ESLint language servers extracted from vscode
|
||||
emmet-language-server # Emmet support based on LSP
|
||||
prettier # Formatter for HTML/CSS/JSON/ESLint languages
|
||||
superhtml # HTML Language Server and Templating Language Library
|
||||
superhtml # HTML Language server and Templating Language Library
|
||||
ruby-lsp # Ruby language server
|
||||
solargraph # Alternative ruby language server
|
||||
rubocop # Ruby linter and formatter
|
||||
jdt-language-server # Java language server
|
||||
];
|
||||
settings = {
|
||||
editor = {
|
||||
@@ -294,6 +298,25 @@ in
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "ruby";
|
||||
language-servers = [
|
||||
"ruby-lsp"
|
||||
"solargraph"
|
||||
];
|
||||
auto-format = true;
|
||||
formatter = {
|
||||
command = "rubocop";
|
||||
args = [
|
||||
"--stdin"
|
||||
"placeholder.rb"
|
||||
"-a"
|
||||
"--stderr"
|
||||
"--fail-level"
|
||||
"fatal"
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
language-server = {
|
||||
basedpyright.config.python.analysis.typeCheckingMode = "strict";
|
||||
@@ -316,6 +339,20 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
ruby-lsp = {
|
||||
command = "ruby-lsp";
|
||||
config = {
|
||||
diagnostics = true;
|
||||
formatting = true;
|
||||
};
|
||||
};
|
||||
solargraph = {
|
||||
command = "solargraph";
|
||||
config = {
|
||||
diagnostics = true;
|
||||
formatting = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -8,6 +8,7 @@ let
|
||||
# Executables
|
||||
foot = lib.getExe' config.programs.foot.package "foot";
|
||||
vicinae = lib.getExe' config.programs.vicinae.package "vicinae";
|
||||
yazi = lib.getExe' config.programs.yazi.package "yazi";
|
||||
noctalia-shell = lib.getExe' config.programs.noctalia-shell.package "noctalia-shell";
|
||||
playerctl = lib.getExe' pkgs.playerctl "playerctl";
|
||||
wpctl = lib.getExe' pkgs.wireplumber "wpctl";
|
||||
@@ -69,6 +70,15 @@ in
|
||||
repeat = false;
|
||||
hotkey-overlay.title = "Launcher";
|
||||
};
|
||||
"Mod+E" = {
|
||||
action.spawn = [
|
||||
foot
|
||||
"-e"
|
||||
yazi
|
||||
];
|
||||
repeat = false;
|
||||
hotkey-overlay.title = "File Explorer";
|
||||
};
|
||||
"Mod+Escape" = {
|
||||
action.spawn = [
|
||||
noctalia-shell
|
||||
@@ -422,7 +432,7 @@ in
|
||||
{ app-id = "foot"; }
|
||||
{ app-id = "Alacritty"; }
|
||||
];
|
||||
opacity = 0.93;
|
||||
opacity = 0.90;
|
||||
default-column-width.proportion = 0.4;
|
||||
}
|
||||
];
|
||||
@@ -438,10 +448,9 @@ in
|
||||
hotkey-overlay = {
|
||||
skip-at-startup = true;
|
||||
};
|
||||
# If not using systemd for noctalia, use this
|
||||
# spawn-at-startup = [
|
||||
# { argv = [ "noctalia-shell" ]; }
|
||||
# ];
|
||||
spawn-at-startup = [
|
||||
{ argv = [ "noctalia-shell" ]; }
|
||||
];
|
||||
cursor = {
|
||||
size = config.stylix.cursor.size;
|
||||
theme = config.stylix.cursor.name;
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
programs.noctalia-shell = {
|
||||
enable = true;
|
||||
systemd.enable = true; # Replaces spawn-at-startup in niri
|
||||
settings = {
|
||||
general = {
|
||||
avatarImage = "~/.face";
|
||||
@@ -114,6 +113,10 @@
|
||||
enabled = true;
|
||||
sourceUrl = "https://github.com/noctalia-dev/noctalia-plugins";
|
||||
};
|
||||
activate-linux = {
|
||||
enabled = true;
|
||||
sourceUrl = "https://github.com/noctalia-dev/noctalia-plugins";
|
||||
};
|
||||
};
|
||||
version = 1;
|
||||
};
|
||||
|
||||
@@ -14,6 +14,9 @@
|
||||
devenv
|
||||
htop
|
||||
obsidian
|
||||
upscayl
|
||||
trayscale
|
||||
nautilus
|
||||
|
||||
# CD Stuff
|
||||
picard
|
||||
@@ -22,5 +25,7 @@
|
||||
|
||||
playerctl
|
||||
brightnessctl
|
||||
monique
|
||||
opencode
|
||||
];
|
||||
}
|
||||
|
||||
@@ -49,6 +49,15 @@
|
||||
noto-fonts-color-emoji
|
||||
];
|
||||
|
||||
fonts.fontconfig = {
|
||||
enable = true;
|
||||
defaultFonts = {
|
||||
sansSerif = [ "Noto Sans" ];
|
||||
monospace = [ "JetBrainsMono Nerd Font" ];
|
||||
emoji = [ "Noto Color Emoji" ];
|
||||
};
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
colorScheme = config.stylix.polarity;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
@@ -30,6 +31,7 @@
|
||||
foot = {
|
||||
enable = true;
|
||||
server.enable = false;
|
||||
package = pkgs.foot;
|
||||
settings = {
|
||||
main = {
|
||||
term = "xterm-256color";
|
||||
@@ -51,7 +53,7 @@
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
add_newline = true;
|
||||
format = pkgs.lib.concatStrings [
|
||||
format = lib.strings.concatStrings [
|
||||
"[ ╭─[\\[](1)$username([@](bold 2)$hostname)[\\]:](1) $directory( $git_branch)](5)"
|
||||
"$line_break"
|
||||
"[ ╰─$character](5)"
|
||||
@@ -86,14 +88,6 @@
|
||||
scan_timeout = 100;
|
||||
};
|
||||
};
|
||||
zellij = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
theme = "catppuccin-mocha";
|
||||
show_startup_tips = false;
|
||||
};
|
||||
};
|
||||
zoxide = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
|
||||
@@ -16,10 +16,13 @@
|
||||
close_on_focus_loss = true;
|
||||
pop_to_root_on_close = true;
|
||||
favicon_service = "twenty";
|
||||
telemetry = {
|
||||
system_info = false;
|
||||
};
|
||||
font = {
|
||||
normal = {
|
||||
size = 12;
|
||||
normal = "${config.stylix.fonts.sansSerif.name}";
|
||||
size = config.stylix.fonts.sizes.applications;
|
||||
family = "${config.stylix.fonts.monospace.name}";
|
||||
};
|
||||
};
|
||||
theme = {
|
||||
|
||||
455
modules/home/zellij.nix
Normal file
455
modules/home/zellij.nix
Normal file
@@ -0,0 +1,455 @@
|
||||
let
|
||||
mod = "Alt"; # Can be one of "Ctrl", "Alt", "Shift", "Super"
|
||||
in
|
||||
{
|
||||
programs.zellij = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
theme = "catppuccin-mocha";
|
||||
show_startup_tips = false;
|
||||
keybinds = {
|
||||
_props = {
|
||||
clear-defaults = true;
|
||||
};
|
||||
|
||||
_children = [
|
||||
{
|
||||
locked._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} g" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
resize._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} r" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "h" ];
|
||||
_children = [ { Resize._args = [ "Increase Left" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "j" ];
|
||||
_children = [ { Resize._args = [ "Increase Down" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "k" ];
|
||||
_children = [ { Resize._args = [ "Increase Up" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "l" ];
|
||||
_children = [ { Resize._args = [ "Increase Right" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
{
|
||||
pane._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} p" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "c" ];
|
||||
_children = [ { Clear = { }; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "e" ];
|
||||
_children = [
|
||||
{ TogglePaneEmbedOrFloating = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "f" ];
|
||||
_children = [
|
||||
{ ToggleFocusFullscreen = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "s" ];
|
||||
_children = [
|
||||
{ NewPane._args = [ "stacked" ]; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "j" ];
|
||||
_children = [
|
||||
{ NewPane._args = [ "Down" ]; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "l" ];
|
||||
_children = [
|
||||
{ NewPane._args = [ "Right" ]; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "n" ];
|
||||
_children = [
|
||||
{ NewPane = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "p" ];
|
||||
_children = [
|
||||
{ SwitchFocus = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "r" ];
|
||||
_children = [
|
||||
{ SwitchToMode._args = [ "RenamePane" ]; }
|
||||
{ PaneNameInput._args = [ 0 ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "w" ];
|
||||
_children = [
|
||||
{ ToggleFloatingPanes = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "x" ];
|
||||
_children = [
|
||||
{ CloseFocus = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "z" ];
|
||||
_children = [
|
||||
{ TogglePaneFrames = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
move._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} m" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "h" ];
|
||||
_children = [ { MovePane._args = [ "Left" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "j" ];
|
||||
_children = [ { MovePane._args = [ "Down" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "k" ];
|
||||
_children = [ { MovePane._args = [ "Up" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "l" ];
|
||||
_children = [ { MovePane._args = [ "Right" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
tab._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} t" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "b" ];
|
||||
_children = [
|
||||
{ BreakPane = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "h" ];
|
||||
_children = [ { MoveTab._args = [ "Left" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "l" ];
|
||||
_children = [ { MoveTab._args = [ "Right" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "n" ];
|
||||
_children = [
|
||||
{ NewTab = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "r" ];
|
||||
_children = [
|
||||
{ SwitchToMode._args = [ "RenameTab" ]; }
|
||||
{ TabNameInput._args = [ 0 ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "x" ];
|
||||
_children = [
|
||||
{ CloseTab = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
renametab._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} c" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "Esc" ];
|
||||
_children = [
|
||||
{ UndoRenameTab = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
renamepane._children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} c" ];
|
||||
_children = [ { SwitchToMode._args = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "Esc" ];
|
||||
_children = [
|
||||
{ UndoRenamePane = { }; }
|
||||
{ SwitchToMode._args = [ "Normal" ]; }
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [ "locked" ];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} g" ];
|
||||
_children = [ { SwitchToMode._args = [ "Locked" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} h" ];
|
||||
_children = [ { MoveFocusOrTab._args = [ "Left" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} l" ];
|
||||
_children = [ { MoveFocusOrTab._args = [ "Right" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} j" ];
|
||||
_children = [ { MoveFocus._args = [ "Down" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} k" ];
|
||||
_children = [ { MoveFocus._args = [ "Up" ]; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} [" ];
|
||||
_children = [ { PreviousSwapLayout = { }; } ];
|
||||
};
|
||||
}
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} ]" ];
|
||||
_children = [ { NextSwapLayout = { }; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [
|
||||
"normal"
|
||||
"locked"
|
||||
];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [
|
||||
"Enter"
|
||||
"Esc"
|
||||
];
|
||||
_children = [ { SwitchToMode = [ "Normal" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [
|
||||
"pane"
|
||||
"locked"
|
||||
];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} p" ];
|
||||
_children = [ { SwitchToMode = [ "Pane" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [
|
||||
"resize"
|
||||
"locked"
|
||||
];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} r" ];
|
||||
_children = [ { SwitchToMode = [ "Resize" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [
|
||||
"tab"
|
||||
"locked"
|
||||
];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} t" ];
|
||||
_children = [ { SwitchToMode = [ "Tab" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
shared_except = {
|
||||
_args = [
|
||||
"move"
|
||||
"locked"
|
||||
];
|
||||
_children = [
|
||||
{
|
||||
bind = {
|
||||
_args = [ "${mod} m" ];
|
||||
_children = [ { SwitchToMode = [ "Move" ]; } ];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
plugins = {
|
||||
compact-bar = {
|
||||
_props = {
|
||||
location = "zellij:compact-bar";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
simplified_ui = true;
|
||||
pane_frames = false;
|
||||
copy_on_select = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -2,5 +2,6 @@
|
||||
nixpkgs.overlays = [
|
||||
(import ./heybrochecklog.nix)
|
||||
(import ./pywalfox-native.nix)
|
||||
(import ./monique.nix)
|
||||
];
|
||||
}
|
||||
|
||||
28
modules/overlays/monique.nix
Normal file
28
modules/overlays/monique.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
self: super: with super.python3Packages; {
|
||||
monique = buildPythonApplication rec {
|
||||
pname = "monique";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-fA2mVMjAg1vOpHPJr2B0NtJ00cEs23/Y4S4h3WurpY4=";
|
||||
};
|
||||
|
||||
pyproject = true;
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
super.wrapGAppsHook4
|
||||
super.gobject-introspection
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
super.libadwaita
|
||||
super.gtk4
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pygobject3
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -35,6 +35,7 @@
|
||||
"wheel"
|
||||
"scanner"
|
||||
"lp"
|
||||
"dialout"
|
||||
];
|
||||
hashedPasswordFile = config.age.secrets.eclypse-password.path;
|
||||
shell = pkgs.zsh;
|
||||
|
||||
Reference in New Issue
Block a user