diff --git a/flake.lock b/flake.lock index a2f19e9..2474791 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "fromYaml": "fromYaml" }, "locked": { - "lastModified": 1732200724, - "narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=", + "lastModified": 1745523430, + "narHash": "sha256-EAYWV+kXbwsH+8G/8UtmcunDeKwLwSOyfcmzZUkWE/c=", "owner": "SenchoPens", "repo": "base16.nix", - "rev": "153d52373b0fb2d343592871009a286ec8837aec", + "rev": "58bfe2553d937d8af0564f79d5b950afbef69717", "type": "github" }, "original": { @@ -67,14 +67,34 @@ "type": "github" } }, + "betterfox-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1745154287, + "narHash": "sha256-kOYbNDnaP/1rQxeRu7e71yap4+aQFeObr29GFJou/jo=", + "owner": "HeitorAugustoLN", + "repo": "betterfox-nix", + "rev": "f76d3767f46c0d5536b911d3453ef76e186b344a", + "type": "github" + }, + "original": { + "owner": "HeitorAugustoLN", + "repo": "betterfox-nix", + "type": "github" + } + }, "bt-tracker": { "flake": false, "locked": { - "lastModified": 1744647042, - "narHash": "sha256-QVfymxcal71Eus9bDob+L2aocWngrd0SxJudml3YPkc=", + "lastModified": 1745683860, + "narHash": "sha256-WYvZhHXVZuinCiLuYzPvSqMJ96SkATjinC9Ifs/0jfY=", "owner": "XIU2", "repo": "TrackersListCollection", - "rev": "c8f564ce38a41f9cf42dd384ac0f8ee6ef5a2891", + "rev": "fd8a43e0cffe6aef96de5c5041cf499ce0e4c67e", "type": "github" }, "original": { @@ -137,11 +157,11 @@ ] }, "locked": { - "lastModified": 1744145203, - "narHash": "sha256-I2oILRiJ6G+BOSjY+0dGrTPe080L3pbKpc+gCV3Nmyk=", + "lastModified": 1745502102, + "narHash": "sha256-LqhRwzvIVPEjH0TaPgwzqpyhW6DtCrvz7FnUJDoUZh8=", "owner": "nix-community", "repo": "disko", - "rev": "76c0a6dba345490508f36c1aa3c7ba5b6b460989", + "rev": "ca27b88c88948d96feeee9ed814cbd34f53d0d70", "type": "github" }, "original": { @@ -153,11 +173,11 @@ "firefox-gnome-theme": { "flake": false, "locked": { - "lastModified": 1743774811, - "narHash": "sha256-oiHLDHXq7ymsMVYSg92dD1OLnKLQoU/Gf2F1GoONLCE=", + "lastModified": 1744642301, + "narHash": "sha256-5A6LL7T0lttn1vrKsNOKUk9V0ittdW0VEqh6AtefxJ4=", "owner": "rafaelmardojai", "repo": "firefox-gnome-theme", - "rev": "df53a7a31872faf5ca53dd0730038a62ec63ca9e", + "rev": "59e3de00f01e5adb851d824cf7911bd90c31083a", "type": "github" }, "original": { @@ -332,11 +352,11 @@ "zon2nix": "zon2nix" }, "locked": { - "lastModified": 1744655344, - "narHash": "sha256-FMn7XnSvaKMXMHhoI1bdhAMcDohzblHnL0Fwd5Pgzm8=", + "lastModified": 1745607661, + "narHash": "sha256-72OO+/vP4h7uiZ1gdGmFf1z+17NxCt8dhrRD+mltW44=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "8bab8f7d648fe654f52a99f2bed6d4247296a22e", + "rev": "38445dca2ac2af176c7f3b205d88d697cf8c89c8", "type": "github" }, "original": { @@ -421,11 +441,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1744385517, - "narHash": "sha256-pqiSmtbquoBM3cVHELcXHl8CLT8moXVkwbtc5xd5Br0=", + "lastModified": 1745684178, + "narHash": "sha256-SnYTNyXGRng1qHmRtbOG9K31c5h6p77hlGPZK5oKgqE=", "owner": "helix-editor", "repo": "helix", - "rev": "340934db92aea902a61b9f79b9e6f4bd15111044", + "rev": "2ec59f8ff6d43f5ac72e745ec614c26de192aedd", "type": "github" }, "original": { @@ -442,11 +462,11 @@ ] }, "locked": { - "lastModified": 1744663884, - "narHash": "sha256-a6QGaZMDM1miK8VWzAITsEPOdmLk+xTPyJSTjVs3WhI=", + "lastModified": 1745627989, + "narHash": "sha256-mOCdFmxocBPae7wg7RYWOtJzWMJk34u9493ItY0dVqw=", "owner": "nix-community", "repo": "home-manager", - "rev": "d5cdf55bd9f19a3debd55b6cb5d38f7831426265", + "rev": "4d2d32231797bfa7213ae5e8ac89d25f8caaae82", "type": "github" }, "original": { @@ -466,11 +486,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1744592850, - "narHash": "sha256-t/vPNGc/xqB/vm8Yjd+nxbqtbyunACbJNpeY3SLmDmM=", + "lastModified": 1745634143, + "narHash": "sha256-9MopKYFjE+4URe/ZmBt4i3g9cvdAJ6MJ4LM21DDXqzc=", "owner": "jj-vcs", "repo": "jj", - "rev": "26ffaf4ac2fefad6b789908cd0c127ce4c96d287", + "rev": "13477940af42a74a58caaaaeafdbd322cfebb81d", "type": "github" }, "original": { @@ -530,11 +550,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1744480072, - "narHash": "sha256-h9MGdfc1ddQLaZ5eXdxUOY4SGvRe0IzIuX/03yVRras=", + "lastModified": 1745668007, + "narHash": "sha256-xYf6xz8WOW9ztBi356dHdqLsTCoxVS8Iapfpwosrn7Q=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "c845f42f0bf9a02350a1e561cb702911c61428a9", + "rev": "8fdaf610c455d0b5b70374a21392a717be513b0f", "type": "github" }, "original": { @@ -563,11 +583,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1744475937, - "narHash": "sha256-vJXhE2BCJO3AxGUGqL7GW7ReeAL+OKy80ErMYDuILjM=", + "lastModified": 1745663376, + "narHash": "sha256-mGQyB+Epl87ZCZZCcBkjUrdR1aJt8Ybiqr4h0yUkgQI=", "owner": "YaLTeR", "repo": "niri", - "rev": "95eafba346a17104a9af71021011fcdc9e13776b", + "rev": "78e3daf5f82b5870e998faf0e1efeaa048730976", "type": "github" }, "original": { @@ -584,11 +604,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1744628957, - "narHash": "sha256-g1lGl2j5b6sjAdfLXHyIQh8gvKBKnDuwYTR4EMexdP0=", + "lastModified": 1745665695, + "narHash": "sha256-oUFoPmT2/ww1bIU0Vmifx9BdarVqlv9MyEIxUTqYJnM=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "e9da1352e4b3ad6778ae3166fbe10c6a3a879c21", + "rev": "48280c3737fee2db3a1226c297c86428417f552d", "type": "github" }, "original": { @@ -599,11 +619,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1744633460, - "narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=", + "lastModified": 1745503349, + "narHash": "sha256-bUGjvaPVsOfQeTz9/rLTNLDyqbzhl0CQtJJlhFPhIYw=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "9a049b4a421076d27fee3eec664a18b2066824cb", + "rev": "f7bee55a5e551bd8e7b5b82c9bc559bc50d868d1", "type": "github" }, "original": { @@ -615,11 +635,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1744463964, - "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", + "lastModified": 1745526057, + "narHash": "sha256-ITSpPDwvLBZBnPRS2bUcHY3gZSwis/uTe255QgMtTLA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", + "rev": "f771eb401a46846c1aebd20552521b233dd7e18b", "type": "github" }, "original": { @@ -662,11 +682,11 @@ }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1744309437, - "narHash": "sha256-QZnNHM823am8apCqKSPdtnzPGTy2ZB4zIXOVoBp5+W0=", + "lastModified": 1745487689, + "narHash": "sha256-FQoi3R0NjQeBAsEOo49b5tbDPcJSMWc3QhhaIi9eddw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f9ebe33a928b5d529c895202263a5ce46bdf12f7", + "rev": "5630cf13cceac06cefe9fc607e8dfa8fb342dde3", "type": "github" }, "original": { @@ -678,11 +698,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1744440957, - "narHash": "sha256-FHlSkNqFmPxPJvy+6fNLaNeWnF1lZSgqVCl/eWaJRc4=", + "lastModified": 1745487689, + "narHash": "sha256-FQoi3R0NjQeBAsEOo49b5tbDPcJSMWc3QhhaIi9eddw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "26d499fc9f1d567283d5d56fcf367edd815dba1d", + "rev": "5630cf13cceac06cefe9fc607e8dfa8fb342dde3", "type": "github" }, "original": { @@ -694,11 +714,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1744463964, - "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", + "lastModified": 1745526057, + "narHash": "sha256-ITSpPDwvLBZBnPRS2bUcHY3gZSwis/uTe255QgMtTLA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", + "rev": "f771eb401a46846c1aebd20552521b233dd7e18b", "type": "github" }, "original": { @@ -718,11 +738,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1743884191, - "narHash": "sha256-foVcginhVvjg8ZnTzY5wwMeZ4wjJ8yX66PW5kgyivPE=", + "lastModified": 1745459908, + "narHash": "sha256-bWqgohVf/py9EW3bLS/dYbenD2p9N2/Qsw1+CJk1S04=", "owner": "nix-community", "repo": "NUR", - "rev": "fde90f5f52e13eed110a0e53a2818a2b09e4d37c", + "rev": "dbc4ba3233b2bf951521177bf0ee0a7679959035", "type": "github" }, "original": { @@ -734,11 +754,11 @@ "nur-rycee": { "flake": false, "locked": { - "lastModified": 1744660304, - "narHash": "sha256-F1+LEM7+v6jxosXETYPPmM/qpmTQsSy0K/s4exMBxQk=", + "lastModified": 1745419403, + "narHash": "sha256-pQOOn4UntLSwnL3xZ1JAr3IDhXpL+kTS7Zw8ll59K9Q=", "owner": "rycee", "repo": "nur-expressions", - "rev": "d49b80147f0869b39bad3f74d85a4d2b92cdb0cb", + "rev": "346899a4b3b651ab447c61e0c8e9d8a1454cda72", "type": "gitlab" }, "original": { @@ -767,6 +787,7 @@ }, "root": { "inputs": { + "betterfox-nix": "betterfox-nix", "bt-tracker": "bt-tracker", "dae": "dae", "deploy-rs": "deploy-rs", @@ -838,11 +859,11 @@ ] }, "locked": { - "lastModified": 1744599145, - "narHash": "sha256-yzaDPkJwZdUtRj/dzdOeB74yryWzpngYaD7BedqFKk8=", + "lastModified": 1745634793, + "narHash": "sha256-8AuOyfLNlcbLy0AqERSNUUoDdY+3THZI7+9VrXUfGqg=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "fd6795d3d28f956de01a0458b6fa7baae5c793b4", + "rev": "f1aeaeb91ba9c88f235ab82bd23d7a4931fe736c", "type": "github" }, "original": { @@ -858,11 +879,11 @@ ] }, "locked": { - "lastModified": 1744518500, - "narHash": "sha256-lv52pnfiRGp5+xkZEgWr56DWiRgkMFXpiGba3eJ3krE=", + "lastModified": 1745310711, + "narHash": "sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA=", "owner": "Mic92", "repo": "sops-nix", - "rev": "7e147a1ae90f0d4a374938cdc3df3cdaecb9d388", + "rev": "5e3e92b16d6fdf9923425a8d4df7496b2434f39c", "type": "github" }, "original": { @@ -899,11 +920,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1744572782, - "narHash": "sha256-CFNluxLqxmDPQYxi37nBd4wrpB0lI4Os8nRA7UWAJK0=", + "lastModified": 1745618823, + "narHash": "sha256-WGKSI0+CY3Ep2YnRASmBRU8oMIvTW4ngFyjA0dVcKgQ=", "owner": "danth", "repo": "stylix", - "rev": "042db377bccc99b1a724b076c89ba803e411d889", + "rev": "11ceb2fde1901dc227421bbbef2d0800339f5126", "type": "github" }, "original": { @@ -979,11 +1000,11 @@ "tinted-schemes": { "flake": false, "locked": { - "lastModified": 1742851696, - "narHash": "sha256-sR4K+OVFKeUOvNIqcCr5Br7NLxOBEwoAgsIyjsZmb8s=", + "lastModified": 1744974599, + "narHash": "sha256-Fg+rdGs5FAgfkYNCs74lnl8vkQmiZVdBsziyPhVqrlY=", "owner": "tinted-theming", "repo": "schemes", - "rev": "c37771c4ae8ff1667e27ddcf24991ebeb94a4e77", + "rev": "28c26a621123ad4ebd5bbfb34ab39421c0144bdd", "type": "github" }, "original": { @@ -995,11 +1016,11 @@ "tinted-tmux": { "flake": false, "locked": { - "lastModified": 1743296873, - "narHash": "sha256-8IQulrb1OBSxMwdKijO9fB70ON//V32dpK9Uioy7FzY=", + "lastModified": 1745111349, + "narHash": "sha256-udV+nHdpqgkJI9D0mtvvAzbqubt9jdifS/KhTTbJ45w=", "owner": "tinted-theming", "repo": "tinted-tmux", - "rev": "af5152c8d7546dfb4ff6df94080bf5ff54f64e3a", + "rev": "e009f18a01182b63559fb28f1c786eb027c3dee9", "type": "github" }, "original": { @@ -1066,11 +1087,11 @@ "xwayland-satellite-unstable": { "flake": false, "locked": { - "lastModified": 1743346993, - "narHash": "sha256-i7rWd/5BcqLgQEtB5L/6gKN5R5GUJcmm34F+iBivH60=", + "lastModified": 1745372360, + "narHash": "sha256-5DX9lYmEbkdANCzME2v3coV0EnWOhS7NsTlGBQuqmjM=", "owner": "Supreeeme", "repo": "xwayland-satellite", - "rev": "45c055696437a08e3989d9b91d9c617b84cc2bc3", + "rev": "c31679aa41966ee9272bb240703755cb1e7c72e3", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 1b08915..7f262c5 100644 --- a/flake.nix +++ b/flake.nix @@ -43,6 +43,15 @@ flake = false; }; + betterfox-nix = { + type = "github"; + owner = "HeitorAugustoLN"; + repo = "betterfox-nix"; + inputs = { + nixpkgs.follows = "nixpkgs"; + }; + }; + niri-flake = { type = "github"; owner = "sodiboo"; diff --git a/home/david/modules/default.nix b/home/david/modules/default.nix index 07b1b99..49c46bb 100644 --- a/home/david/modules/default.nix +++ b/home/david/modules/default.nix @@ -10,6 +10,7 @@ spacer devenv just + showmethekey ]; }; } diff --git a/home/david/modules/programs/niri/config.kdl b/home/david/modules/programs/niri/config.kdl index 3cd3a74..ffb1ba5 100644 --- a/home/david/modules/programs/niri/config.kdl +++ b/home/david/modules/programs/niri/config.kdl @@ -139,6 +139,32 @@ window-rule { geometry-corner-radius 12 clip-to-geometry true } +window-rule { + match app-id="^showmethekey-gtk$" + geometry-corner-radius 0 + clip-to-geometry false + open-floating true + open-focused false + default-column-width { + fixed 300 + } + default-window-height { + fixed 70 + } + draw-border-with-background false + default-floating-position x=20 y=20 relative-to="bottom-right" + focus-ring { + off + } + border { + off + } + shadow { + off + } + tiled-state false + baba-is-float true +} window-rule { match app-id="^org\\.keepassxc\\.KeePassXC$" match app-id="^org\\.gnome\\.World\\.Secrets$" @@ -221,6 +247,9 @@ binds { Mod+Q { close-window } + Mod+O { + toggle-overview + } Mod+Left { focus-column-left } diff --git a/home/modules/default.nix b/home/modules/default.nix index d4fca85..f817748 100644 --- a/home/modules/default.nix +++ b/home/modules/default.nix @@ -6,6 +6,7 @@ imports = (with inputs; [ sops-nix.homeManagerModules.sops + betterfox-nix.homeManagerModules.betterfox ]) ++ [ ./programs diff --git a/home/modules/programs/firefox.nix b/home/modules/programs/firefox.nix index 269fac4..79d7e24 100644 --- a/home/modules/programs/firefox.nix +++ b/home/modules/programs/firefox.nix @@ -21,11 +21,18 @@ in ]; programs.firefox = { enable = true; + betterfox = { + enable = true; + }; languagePacks = [ "zh-CN" "en-US" ]; profiles.default = { + betterfox = { + enable = true; + enableAllSections = true; + }; name = "default"; isDefault = true; extensions.packages = with outputs.packages."${system}"; [ diff --git a/home/modules/programs/helix/config.toml b/home/modules/programs/helix/config.toml index b2f176a..0f1705e 100644 --- a/home/modules/programs/helix/config.toml +++ b/home/modules/programs/helix/config.toml @@ -1,4 +1,4 @@ -# theme = "ayu_evolve" # avoid conflicting with stylix +theme = "ayu_dark" [editor] line-number = "relative" diff --git a/home/modules/programs/helix/default.nix b/home/modules/programs/helix/default.nix index 9c9c855..eeafe47 100644 --- a/home/modules/programs/helix/default.nix +++ b/home/modules/programs/helix/default.nix @@ -29,6 +29,7 @@ cfg = config.youthlic.programs.helix; in { + stylix.targets.helix.enable = false; programs.helix = lib.mkIf cfg.enable { enable = true; package = outputs.packages."${pkgs.system}".helix; diff --git a/home/modules/programs/niri.nix b/home/modules/programs/niri.nix index d80faa6..c6f8757 100644 --- a/home/modules/programs/niri.nix +++ b/home/modules/programs/niri.nix @@ -2,10 +2,12 @@ pkgs, config, lib, + osConfig ? null, ... }: let cfg = config.youthlic.programs.niri; + niri = osConfig.programs.niri.package; in { options = { @@ -21,24 +23,24 @@ in }; }; config = lib.mkIf cfg.enable { - home.packages = with pkgs; [ - swaynotificationcenter - swaybg - xwayland-satellite - niri-unstable - kdePackages.polkit-kde-agent-1 - wl-clipboard - cliphist - ]; + home.packages = + (with pkgs; [ + swaynotificationcenter + swaybg + xwayland-satellite + kdePackages.polkit-kde-agent-1 + wl-clipboard + cliphist + ]) + ++ [ niri ]; qt = { enable = true; }; xdg.portal = { - configPackages = [ pkgs.niri-unstable ]; + configPackages = [ niri ]; enable = true; extraPortals = lib.mkIf ( - !pkgs.niri-unstable.cargoBuildNoDefaultFeatures - || builtins.elem "xdp-gnome-screencast" pkgs.niri-unstable.cargoBuildFeatures + !niri.cargoBuildNoDefaultFeatures || builtins.elem "xdp-gnome-screencast" niri.cargoBuildFeatures ) [ pkgs.xdg-desktop-portal-gnome ]; }; xdg.configFile = @@ -69,7 +71,7 @@ in }; programs.niri = { config = builtins.readFile cfg.config; - package = pkgs.niri-unstable; + package = niri; }; }; } diff --git a/home/modules/programs/waybar.nix b/home/modules/programs/waybar.nix index e3d8287..eb07712 100644 --- a/home/modules/programs/waybar.nix +++ b/home/modules/programs/waybar.nix @@ -37,7 +37,6 @@ in "custom/notification" ]; "wlr/taskbar" = { - # on-click = "${lib.getExe pkgs.niri-unstable} msg action focus-window --id {app_id}"; on-click = "activate"; }; diff --git a/pkgs/_sources/generated.json b/pkgs/_sources/generated.json index b29ad1d..7cb57b5 100644 --- a/pkgs/_sources/generated.json +++ b/pkgs/_sources/generated.json @@ -92,7 +92,7 @@ }, "rime-ice": { "cargoLocks": null, - "date": "2025-04-06", + "date": "2025-04-22", "extract": null, "name": "rime-ice", "passthru": null, @@ -104,12 +104,12 @@ "name": null, "owner": "iDvel", "repo": "rime-ice", - "rev": "51777daedbe4783c3b79f0246d775e4b6d978cbc", - "sha256": "sha256-cFaFgChhpgEiJw+dHl3Hr3T2UQF+Vy6u36JWY+cYBNo=", + "rev": "7f6f4880bd5f6b7a76195c515af2e64b88ce0ec2", + "sha256": "sha256-N7EDvQX598jxNILzwTwAeu/BY9wWVBRUuTApamf4nAY=", "sparseCheckout": [], "type": "github" }, - "version": "51777daedbe4783c3b79f0246d775e4b6d978cbc" + "version": "7f6f4880bd5f6b7a76195c515af2e64b88ce0ec2" }, "tree-sitter-idris": { "cargoLocks": null, diff --git a/pkgs/_sources/generated.nix b/pkgs/_sources/generated.nix index d563e20..e8936d6 100644 --- a/pkgs/_sources/generated.nix +++ b/pkgs/_sources/generated.nix @@ -65,15 +65,15 @@ }; rime-ice = { pname = "rime-ice"; - version = "51777daedbe4783c3b79f0246d775e4b6d978cbc"; + version = "7f6f4880bd5f6b7a76195c515af2e64b88ce0ec2"; src = fetchFromGitHub { owner = "iDvel"; repo = "rime-ice"; - rev = "51777daedbe4783c3b79f0246d775e4b6d978cbc"; + rev = "7f6f4880bd5f6b7a76195c515af2e64b88ce0ec2"; fetchSubmodules = false; - sha256 = "sha256-cFaFgChhpgEiJw+dHl3Hr3T2UQF+Vy6u36JWY+cYBNo="; + sha256 = "sha256-N7EDvQX598jxNILzwTwAeu/BY9wWVBRUuTApamf4nAY="; }; - date = "2025-04-06"; + date = "2025-04-22"; }; tree-sitter-idris = { pname = "tree-sitter-idris";