summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-06-22 15:54:55 -0700
committerFuwn <[email protected]>2024-06-22 15:54:55 -0700
commit149ab539b729390c3db5b1c9a4ddfde0e6c25b2a (patch)
treef98db4155f8c057911561384e55b7a646c8c5050
parentfeat(applications:cli): shell (diff)
downloadhome-manager-config-149ab539b729390c3db5b1c9a4ddfde0e6c25b2a.tar.xz
home-manager-config-149ab539b729390c3db5b1c9a4ddfde0e6c25b2a.zip
.
-rw-r--r--applications/cli/gemini/bollux/default.nix33
-rw-r--r--applications/cli/gemini/bollux/fix_lesskey_nag.patch13
-rw-r--r--desktop/wayland/hyprland/hyprland/animations.nix4
-rw-r--r--desktop/wayland/hyprland/hyprland/environment.nix124
-rw-r--r--desktop/wayland/waybar/waybar/default-modules.nix11
-rw-r--r--desktop/wayland/waybar/waybar/style.css1
6 files changed, 112 insertions, 74 deletions
diff --git a/applications/cli/gemini/bollux/default.nix b/applications/cli/gemini/bollux/default.nix
index 175fe80..c869c48 100644
--- a/applications/cli/gemini/bollux/default.nix
+++ b/applications/cli/gemini/bollux/default.nix
@@ -3,23 +3,42 @@ let
bollux =
pkgs.stdenvNoCC.mkDerivation rec {
pname = "bollux";
- version = "f472e60f1164f0dc025d06db2a13ff4e8ebee1a2";
+ version = "0.4.1";
+ nativeBuildInputs = [ pkgs.makeWrapper ];
+ buildInputs = [ pkgs.bashInteractive ];
+ dontBuild = true;
+ makeFlags = [ "PREFIX=$(out)" ];
+
src = pkgs.fetchFromGitea {
domain = "tildegit.org";
owner = "acdw";
repo = "bollux";
- rev = version;
+ rev = "f472e60f1164f0dc025d06db2a13ff4e8ebee1a2";
hash = "sha256-mo2qWCPfW+dUaYcJLsos/vR5nJ8n1eABy8Zy8OZsfVg=";
};
- installPhase = ''
- mkdir -p $out/bin
- make install PREFIX=$out
+
+ runtimeDependencies = [
+ pkgs.bashInteractive
+ pkgs.iconv
+ pkgs.openssl
+ pkgs.less
+ pkgs.coreutils
+ ];
+
+ patches = [
+ # https://tildegit.org/acdw/bollux/issues/13#issuecomment-9786
+ ./fix_lesskey_nag.patch
+ ];
+
+ postInstall = ''
+ wrapProgram $out/bin/bollux --prefix PATH : ${lib.makeBinPath runtimeDependencies}
'';
+
meta = with lib; {
description = "a Gemini browser in like, idk, 96% pure Bash";
homepage = "https://tildegit.org/acdw/bollux";
license = licenses.mit;
- platforms = platforms.unix;
+ platforms = platforms.all;
mainProgram = "bollux";
};
};
@@ -33,4 +52,6 @@ in
# })
bollux
];
+
+ xdg.configFile."bollux/bollux.conf".text = '''';
}
diff --git a/applications/cli/gemini/bollux/fix_lesskey_nag.patch b/applications/cli/gemini/bollux/fix_lesskey_nag.patch
new file mode 100644
index 0000000..329b886
--- /dev/null
+++ b/applications/cli/gemini/bollux/fix_lesskey_nag.patch
@@ -0,0 +1,13 @@
+diff --git i/bollux w/bollux
+index 267418e..090217e 100755
+--- i/bollux
++++ w/bollux
+@@ -1130,7 +1130,7 @@ display() { # display METADATA [TITLE]
+ # text, and pre-formatted text shouldn't wrap.
+ less_cmd+=(-S)
+ # Load the keybindings (see `lesskey').
+- mklesskey && less_cmd+=(-k "$BOLLUX_LESSKEY")
++ mklesskey && less_cmd+=(--lesskey-src="$BOLLUX_LESSKEY")
+ local helpline="${KEY_OPEN}:open, "
+ helpline+="${KEY_GOTO}/"
+ helpline+="${KEY_GOTO_FROM}:goto, "
diff --git a/desktop/wayland/hyprland/hyprland/animations.nix b/desktop/wayland/hyprland/hyprland/animations.nix
index bb8a4e2..c47c164 100644
--- a/desktop/wayland/hyprland/hyprland/animations.nix
+++ b/desktop/wayland/hyprland/hyprland/animations.nix
@@ -40,7 +40,7 @@ _: {
animations {
enabled = yes
- #buttery_smoooooooth... (slide)
+ # buttery_smoooooooth... (slide)
# animation = windows, 1, 5, default, slide
# animation = windowsOut, 1, 8, smoothIn, slide
# animation = windowsMove, 1, 7, default
@@ -50,7 +50,7 @@ _: {
# animation = workspaces, 1, 5, default, slidefadevert
# animation = specialWorkspace, 1, 5, default, fade
- #buttery_smoooooooth... (Popin...)
+ # buttery_smoooooooth... (Popin...)
# animation = windows, 1, 3, default, popin 70%
# animation = windowsOut, 1, 20, default, popin 85%
# animation = windowsMove, 1, 7, default
diff --git a/desktop/wayland/hyprland/hyprland/environment.nix b/desktop/wayland/hyprland/hyprland/environment.nix
index d79c773..0e64c70 100644
--- a/desktop/wayland/hyprland/hyprland/environment.nix
+++ b/desktop/wayland/hyprland/hyprland/environment.nix
@@ -1,78 +1,76 @@
_: {
- wayland.windowManager.hyprland = {
- extraConfig = ''
- # Proton
- env = PROTON_ENABLE_NGX_UPDATER, 1
+ wayland.windowManager.hyprland.settings.env = [
+ # Proton
+ "PROTON_ENABLE_NGX_UPDATER, 1"
- # Cursor
- env = XCURSOR_SIZE, 18
- env = HYPRCURSOR_SIZE, 18
+ # Cursor
+ "XCURSOR_SIZE, 18"
+ "HYPRCURSOR_SIZE, 18"
- # Wayland & Xwayland
- env = GDK_BACKEND, wayland,x11,*
- env = SDL_VIDEODRIVER, wayland
- env = CLUTTER_BACKEND, wayland
- env = XWAYLAND_NO_GLAMOR, 1 # With this, you'll need to use gamescope for gaming.
+ # Wayland & Xwayland
+ "GDK_BACKEND, wayland,x11,*"
+ "SDL_VIDEODRIVER, wayland"
+ "CLUTTER_BACKEND, wayland"
+ "XWAYLAND_NO_GLAMOR, 1" # With this, you'll need to use gamescope for gaming.
- # Nvidia
- env = LIBVA_DRIVER_NAME, nvidia
- env = GBM_BACKEND, nvidia-drm
- env = __GLX_VENDOR_LIBRARY_NAME, nvidia
- env = __VK_LAYER_NV_optimus, NVIDIA_only
- env = __NV_PRIME_RENDER_OFFLOAD, 1
- env = NVD_BACKEND, direct
+ # Nvidia
+ "LIBVA_DRIVER_NAME, nvidia"
+ "GBM_BACKEND, nvidia-drm"
+ "__GLX_VENDOR_LIBRARY_NAME, nvidia"
+ "__VK_LAYER_NV_optimus, NVIDIA_only"
+ "__NV_PRIME_RENDER_OFFLOAD, 1"
+ "NVD_BACKEND, direct"
- # OpenGL
- env = __GL_GSYNC_ALLOWED, 1
- env = __GL_VRR_ALLOWED, 1
- env = __GL_MaxFramesAllowed, 1
+ # OpenGL
+ "__GL_GSYNC_ALLOWED, 1"
+ "__GL_VRR_ALLOWED, 1"
+ "__GL_MaxFramesAllowed, 1"
- # Electron
- # env = ELECTRON_OZONE_PLATFORM_HINT, auto
- env = OZONE_PLATFORM, wayland
+ # Electron
+ # "ELECTRON_OZONE_PLATFORM_HINT, auto"
+ "OZONE_PLATFORM, wayland"
- # Qt
- env = QT_AUTO_SCREEN_SCALE_FACTOR, 1
- env = QT_QPA_PLATFORM, wayland;xcb
- env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1
- env = QT_QPA_PLATFORMTHEME, qt5ct
- # env = QT_STYLE_OVERRIDE, kvantum
+ # Qt
+ "QT_AUTO_SCREEN_SCALE_FACTOR, 1"
+ "QT_QPA_PLATFORM, wayland;xcb"
+ "QT_WAYLAND_DISABLE_WINDOWDECORATION, 1"
+ "QT_QPA_PLATFORMTHEME, qt5ct"
+ # "QT_STYLE_OVERRIDE, kvantum"
- # wlroots
- env = WLR_NO_HARDWARE_CURSORS, 1
- env = WLR_DRM_NO_ATOMIC, 1
- env = WLR_USE_LIBINPUT, 1
- env = WLR_RENDERER_ALLOW_SOFTWARE, 1
- env = WLR_DRM_DEVICES=/dev/dri/card0
- # env = WLR_EGL_NO_MODIFIERS, 1
+ # wlroots
+ "WLR_NO_HARDWARE_CURSORS, 1"
+ "WLR_DRM_NO_ATOMIC, 1"
+ "WLR_USE_LIBINPUT, 1"
+ "WLR_RENDERER_ALLOW_SOFTWARE, 1"
+ "WLR_DRM_DEVICES, /dev/dri/card0"
+ # "WLR_EGL_NO_MODIFIERS, 1"
- # XDG
- env = XDG_SESSION_TYPE, wayland
- env = XDG_CURRENT_DESKTOP, Hyprland
- env = XDG_SESSION_DESKTOP, Hyprland
+ # XDG
+ "XDG_SESSION_TYPE, wayland"
+ "XDG_CURRENT_DESKTOP, Hyprland"
+ "XDG_SESSION_DESKTOP, Hyprland"
- # Mozilla
- env = MOZ_ENABLE_WAYLAND, 1
- env = MOZ_DISABLE_RDD_SANDBOX, 1
+ # Mozilla
+ "MOZ_ENABLE_WAYLAND, 1"
+ "MOZ_DISABLE_RDD_SANDBOX, 1"
- # Fcitx
- # https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
- env = QT_IM_MODULE, fcitx
- env = XMODIFIERS, @im=fcitx
- # env = GTK_IM_MODULE, wayland # Crashes Electron apps in Xwayland
- # env = GTK_IM_MODULE, fcitx # My Gtk apps no longer require this to work with fcitx5. Hmm.
- env = SDL_IM_MODULE, fcitx
- env = GLFW_IM_MODULE, ibus
- env = INPUT_METHOD, fcitx
+ # Fcitx
+ # https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
+ "QT_IM_MODULE, fcitx"
+ "XMODIFIERS, @im=fcitx"
+ # "GTK_IM_MODULE, wayland" # Crashes Electron apps in Xwayland
+ # "GTK_IM_MODULE, fcitx" # My Gtk apps no longer require this to work with fcitx5. Hmm.
+ "SDL_IM_MODULE, fcitx"
+ "GLFW_IM_MODULE, ibus"
+ "INPUT_METHOD, fcitx"
- # GTK
- env = GTK_USE_PORTAL, 1
+ # GTK
+ "GTK_USE_PORTAL, 1"
- # Java
- env = _JAVA_AWT_WM_NONREPARENTING, 1
+ # Java
+ "_JAVA_AWT_WM_NONREPARENTING, 1"
- # SSH
- # env = SSH_AUTH_SOCK, $XDG_RUNTIME_DIR/ssh-agent.socket
- '';
- };
+ # SSH
+ # "SSH_AUTH_SOCK, $XDG_RUNTIME_DIR/ssh-agent.socket"
+ ];
}
diff --git a/desktop/wayland/waybar/waybar/default-modules.nix b/desktop/wayland/waybar/waybar/default-modules.nix
index 9b9cf07..9e52674 100644
--- a/desktop/wayland/waybar/waybar/default-modules.nix
+++ b/desktop/wayland/waybar/waybar/default-modules.nix
@@ -40,14 +40,19 @@
# "format-alt" = " {:%e %b %Y}", # Icon: calendar-alt
# "format" = "{:%e %b %Y %H:%M}";
# "tooltip-format" = "{:%e %B %Y}";
- # "tooltip-format" = "<tt><small>{calendar}</small></tt>";
+ "tooltip-format" = "<tt><small>{calendar}</small></tt>";
# "format" = "{:%m月 %d日 %I時%M分%S秒}";
# "format" = "{:%m月 %d日 %H:%M:%S}";
- "format" = "{:%m月 %d日 %H:%M}";
+ "format" = "{:L%m月 %d日 %H:%M}";
# "format-alt" = "{:L%G年%b %d日 %A}";
"format-alt" = "{:L%G年%b %d日 %A}";
};
+ "custom/clock" = {
+ exec = "date '+%m月 %d日 %H:%M'";
+ tooltip = false;
+ interval = 5;
+ };
"cpu" = {
"interval" = 5;
"format" = " {usage}% ({load})";
@@ -299,7 +304,7 @@
"custom/media"
"image#album-art"
];
- "modules-center" = [ "clock" ];
+ "modules-center" = [ "custom/clock" ];
"modules-right" = [
# "custom/know"
# "cava#cava1"
diff --git a/desktop/wayland/waybar/waybar/style.css b/desktop/wayland/waybar/waybar/style.css
index c08905f..9a85e83 100644
--- a/desktop/wayland/waybar/waybar/style.css
+++ b/desktop/wayland/waybar/waybar/style.css
@@ -23,6 +23,7 @@ window#waybar {
#cava,
#custom-know,
#clock,
+#custom-clock,
#backlight,
#cpu,
#custom-keyboard-layout,