From 76a519836f3aa308836c33e22400e7f3b5ff448c Mon Sep 17 00:00:00 2001 From: notgne2 Date: Tue, 22 Feb 2022 15:00:19 -0700 Subject: [PATCH] fix some font stuff, switch to kermit as terminal, fix some titlebar stuff in de2 --- flake.nix | 5 +++ home-manager/modules/colors.nix | 3 ++ home-manager/modules/de2u.nix | 52 +++++++++++++++++++++++++++++--- home-manager/modules/default.nix | 1 + home-manager/modules/fonts.nix | 5 +++ home-manager/modules/kermit.nix | 34 +++++++++++++++++++++ home-manager/users/notgne2.nix | 2 +- modules/workstation.nix | 1 + 8 files changed, 97 insertions(+), 6 deletions(-) create mode 100644 home-manager/modules/kermit.nix diff --git a/flake.nix b/flake.nix index 65fdc41..2b1251f 100644 --- a/flake.nix +++ b/flake.nix @@ -10,6 +10,10 @@ url = "github:kdrag0n/base16-kitty"; flake = false; }; + base16-kermit = { + url = "github:orhun/base16-kermit"; + flake = false; + }; base16-vscode = { url = "github:golf1052/base16-vscode"; flake = false; @@ -79,6 +83,7 @@ gaming = import ./home-manager/modules/gaming.nix inputs; gamerenv = import ./home-manager/modules/gamerenv.nix; mopidy = import ./home-manager/modules/mopidy.nix; + kermit = import ./home-manager/modules/kermit.nix; de2u = import ./home-manager/modules/de2u.nix inputs; all = import ./home-manager/modules/default.nix inputs; }; diff --git a/home-manager/modules/colors.nix b/home-manager/modules/colors.nix index e57babb..a292118 100644 --- a/home-manager/modules/colors.nix +++ b/home-manager/modules/colors.nix @@ -264,6 +264,9 @@ in include ${genTheme inputs.base16-kitty} ''; + # Kermit + programs.kermit.extraConfig = builtins.readFile (genTheme inputs.base16-kermit); + # neovim xdg.configFile."nvim/colors/base16.vim".source = "${genTheme inputs.base16-vim}"; programs.neovim.extraConfig = '' diff --git a/home-manager/modules/de2u.nix b/home-manager/modules/de2u.nix index 2d91c96..fca8ba8 100644 --- a/home-manager/modules/de2u.nix +++ b/home-manager/modules/de2u.nix @@ -106,6 +106,14 @@ in }; }; + programs.kermit = { + enable = lib.mkDefault true; + settings = { + key = lib.mkDefault "shift"; + opacity = lib.mkDefault "1"; + }; + }; + programs.kitty = { enable = lib.mkDefault true; settings = { @@ -125,10 +133,10 @@ in gnomeExtensions.improved-workspace-indicator gnomeExtensions.vitals gnomeExtensions.clipboard-indicator - gnomeExtensions.gtk-title-bar gnomeExtensions.just-perfection gnomeExtensions.appindicator gnomeExtensions.compiz-windows-effect + gnomeExtensions.unite-shell ]; systemd.user.sessionVariables = { @@ -136,6 +144,25 @@ in QT_WAYLAND_DISABLE_WINDOWDECORATION = lib.mkIf cfg.tiling "1"; }; + xdg.configFile."gtk-4.0/gtk.css".text = '' + /* UNITE windowDecorations */ + @import url('${config.home.homeDirectory}/.nix-profile/share/gnome-shell/extensions/unite@hardpixel.eu/styles/gtk4/buttons-right/${if cfg.tiling then "always" else "both"}.css'); + /* windowDecorations UNITE */ + ''; + gtk.gtk3.extraCss = '' + /* UNITE windowDecorations */ + @import url('${config.home.homeDirectory}/.nix-profile/share/gnome-shell/extensions/unite@hardpixel.eu/styles/gtk3/buttons-right/${if cfg.tiling then "always" else "both"}.css'); + /* windowDecorations UNITE */ + ''; + home.activation.gtk3css-over-unite = { + data = '' + $DRY_RUN_CMD rm -f ~/.config/gtk-3.0/gtk.css + $DRY_RUN_CMD rm -f ~/.config/gtk-4.0/gtk.css + ''; + before = [ "checkLinkTargets" ]; + after = [ ]; + }; + xdg.mimeApps = { enable = true; defaultApplications = @@ -199,7 +226,7 @@ in name = if config.colors.enable then "Generated" else "Default"; }; "org/gnome/shell/extensions/just-perfection" = { - activities-button = !cfg.tiling; + # activities-button = !cfg.tiling; # conflicts with unite? startup-status = 0; workspace-popup = false; window-picker-icon = false; @@ -221,7 +248,7 @@ in "just-perfection-desktop@just-perfection" "appindicatorsupport@rgcjonas.gmail.com" "launch-new-instance@gnome-shell-extensions.gcampax.github.com" - "gtktitlebar@velitasali.github.io" + "unite@hardpixel.eu" ]; }; "org/gnome/desktop/peripherals/touchpad" = { @@ -232,8 +259,18 @@ in dynamic-workspaces = !cfg.tiling; only-on-primary = cfg.tiling; }; - "org/gnome/shell/extensions/gtktitlebar" = { - hide-window-titlebars = "always"; + "org/gnome/shell/extensions/unite" = { + hide-window-titlebars = if cfg.tiling then "always" else "both"; + hide-activities-button = if cfg.tiling then "never" else "always"; + show-window-buttons = if cfg.tiling then "never" else "both"; + notifications-position = "center"; + restrict-to-primary-screen = false; + show-legacy-tray = false; + show-desktop-name = false; + extend-left-box = false; + hide-app-menu-icon = false; + reduce-panel-spacing = false; + hide-dropdown-arrows = true; }; "org/gnome/shell/extensions/blur-me" = { toggle-app-blur = false; @@ -331,6 +368,11 @@ in window-screenshot = [ "Print" ]; window-screenshot-clip = [ "Print" ]; }; + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { + binding = "t"; + command = "kermit"; + name = "Kermit terminal"; + }; }; }; } diff --git a/home-manager/modules/default.nix b/home-manager/modules/default.nix index e260178..b0c638d 100644 --- a/home-manager/modules/default.nix +++ b/home-manager/modules/default.nix @@ -12,6 +12,7 @@ inputs: ./gamerenv.nix ./fonts.nix ./mopidy.nix + ./kermit.nix (import ./de2u.nix inputs) ]; } diff --git a/home-manager/modules/fonts.nix b/home-manager/modules/fonts.nix index 7cdb980..d06a6f8 100644 --- a/home-manager/modules/fonts.nix +++ b/home-manager/modules/fonts.nix @@ -34,6 +34,7 @@ in config = mkIf cfg.enable { + fonts.fontconfig.enable = lib.mkDefault true; home.packages = [ cfg.favFont.package ]; programs.vscode.userSettings = { @@ -50,6 +51,10 @@ in font_size = cfg.favFont.size; }; + programs.kermit.settings = { + font = "${cfg.favFont.name}, normal ${toString cfg.favFont.size}"; + }; + programs.rofi.font = "${cfg.favFont.name} ${toString cfg.favFont.size}"; programs.mako.font = "${cfg.favFont.name} ${toString cfg.favFont.size}"; diff --git a/home-manager/modules/kermit.nix b/home-manager/modules/kermit.nix new file mode 100644 index 0000000..e214e57 --- /dev/null +++ b/home-manager/modules/kermit.nix @@ -0,0 +1,34 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.programs.kermit; +in +{ + options.programs.kermit = { + enable = lib.mkEnableOption "A VTE-based, simple and froggy terminal emulator 🐸"; + + settings = lib.mkOption { + default = { }; + type = with lib.types; attrsOf str; + description = '' + The settings that Kermit should use. + ''; + }; + + extraConfig = lib.mkOption { + default = ""; + type = lib.types.lines; + description = '' + Extra config lines for the Kermit config file + ''; + }; + }; + + config = lib.mkIf cfg.enable { + xdg.configFile."kermit.conf".text = (lib.generators.toKeyValue { + mkKeyValue = lib.generators.mkKeyValueDefault {} " "; + } cfg.settings) + cfg.extraConfig; + + home.packages = [ pkgs.kermit-terminal ]; + }; +} diff --git a/home-manager/users/notgne2.nix b/home-manager/users/notgne2.nix index 0acacc6..67ac163 100644 --- a/home-manager/users/notgne2.nix +++ b/home-manager/users/notgne2.nix @@ -377,7 +377,7 @@ in ''; programs.git = { - signing.key = "DAB666DB54866F92"; + signing.key = "70420458F2C01295"; signing.signByDefault = true; enable = true; lfs.enable = true; diff --git a/modules/workstation.nix b/modules/workstation.nix index cfa30e3..5cf322d 100644 --- a/modules/workstation.nix +++ b/modules/workstation.nix @@ -95,6 +95,7 @@ in vaapiVdpau libvdpau-va-gl libGL + mesa ]; setLdLibraryPath = lib.mkDefault true; };