Compare commits

...
Author SHA1 Message Date
dependabot[bot]andAustin Horstman 3ee51fbdac flake: bump nixpkgs from d7a713c to 687f05a
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `d7a713c` to `687f05a`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/d7a713c0b7e47c908258e71cba7a2d77cc8d71d5...687f05a9184cad4eaf905c48b63649e3a86f5433)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: 687f05a9184cad4eaf905c48b63649e3a86f5433
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 22:25:08 -05:00
dependabot[bot]andAustin Horstman d1686dc7d3 flake: bump nixpkgs from 8fd9daa to d7a713c
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `8fd9daa` to `d7a713c`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/8fd9daa3db09ced9700431c5b7ad0e8ba199b575...d7a713c0b7e47c908258e71cba7a2d77cc8d71d5)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: d7a713c0b7e47c908258e71cba7a2d77cc8d71d5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-15 23:20:20 -05:00
Isaac Shiells ThomasandAustin Horstman e1fd7350f4 wayle: add module
Co-authored-by: Perchun Pak <github@perchun.it>

(cherry-picked from commit 83b3ecce2e)
2026-05-12 12:26:36 -05:00
dependabot[bot]andAustin Horstman e29db51cc0 flake: bump nixpkgs from 0c88e1f to 8fd9daa
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `0c88e1f` to `8fd9daa`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/0c88e1f2bdb93d5999019e99cb0e61e1fe2af4c5...8fd9daa3db09ced9700431c5b7ad0e8ba199b575)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: 8fd9daa3db09ced9700431c5b7ad0e8ba199b575
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-12 12:20:22 -05:00
dependabot[bot]andRobert Helgesson 389b83002e flake: bump nixpkgs from 755f5aa to 0c88e1f
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `755f5aa` to `0c88e1f`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/755f5aa91337890c432639c60b6064bb7fe67769...0c88e1f2bdb93d5999019e99cb0e61e1fe2af4c5)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: 0c88e1f2bdb93d5999019e99cb0e61e1fe2af4c5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-10 10:28:13 +02:00
Robin StummandAustin Horstman cc09c0f9b7 wlsunset: require WAYLAND_DISPLAY env var
(cherry picked from commit 561bd67464)
2026-05-03 18:38:58 -05:00
Robin StummandAustin Horstman 76df9b63d1 foot: require WAYLAND_DISPLAY env var
(cherry picked from commit a53beb6353)
2026-05-03 18:38:58 -05:00
Robin StummandAustin Horstman c7902887d9 foot: configurable systemd target
(cherry picked from commit beae317ddb)
2026-05-03 18:38:58 -05:00
Austin Horstman 0585fbf645 tests/vicinae: stub extensions
Don't need CI dying because of random vicinae extensions.

(cherry picked from commit 7229dde629)
2026-05-02 20:25:28 -05:00
dependabot[bot]andAustin Horstman 3a93da858f flake: bump nixpkgs from bcd464c to 755f5aa
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `bcd464c` to `755f5aa`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/bcd464ccd2a1a7cd09aa2f8d4ffba83b761b1d0e...755f5aa91337890c432639c60b6064bb7fe67769)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: 755f5aa91337890c432639c60b6064bb7fe67769
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-02 20:25:28 -05:00
home-manager-ci[bot]andRobert Helgesson 0d02ec1d0a flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/107cba9eb4a8d8c9f8e9e61266d78d340867913a?narHash=sha256-Tsq9BCz0q47ej1uFF39m4tuhcwru/ls6vCCJzutEpaw%3D' (2026-03-29)
  → 'github:NixOS/nixpkgs/bcd464ccd2a1a7cd09aa2f8d4ffba83b761b1d0e?narHash=sha256-d3Yx83vSrN%2B2z/loBh4mJpyRqr9aAJqlke4TkpFmRJA%3D' (2026-04-01)
2026-04-05 23:43:31 +02:00
home-manager-ci[bot]andAustin Horstman 49ca96b271 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/1073dad219cb244572b74da2b20c7fe39cb3fa9e?narHash=sha256-tFwzTI0DdDzovdE9%2BRas6CUss0yn8P9XV4Ja6RjA%2BnU%3D' (2026-03-24)
  → 'github:NixOS/nixpkgs/107cba9eb4a8d8c9f8e9e61266d78d340867913a?narHash=sha256-Tsq9BCz0q47ej1uFF39m4tuhcwru/ls6vCCJzutEpaw%3D' (2026-03-29)
2026-04-01 16:02:13 -05:00
home-manager-ci[bot]andAustin Horstman 7afd8cebb9 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/4590696c8693fea477850fe379a01544293ca4e2?narHash=sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ%3D' (2026-03-23)
  → 'github:NixOS/nixpkgs/1073dad219cb244572b74da2b20c7fe39cb3fa9e?narHash=sha256-tFwzTI0DdDzovdE9%2BRas6CUss0yn8P9XV4Ja6RjA%2BnU%3D' (2026-03-24)
2026-03-30 08:03:50 -05:00
home-manager-ci[bot]andAustin Horstman a0bb0d1151 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/812b3986fd1568f7a858f97fcf425ad996ba7d25?narHash=sha256-NV/J%2BtTER0P5iJhUDL/8HO5MDjDceLQPRUYgdmy5wXw%3D' (2026-03-20)
  → 'github:NixOS/nixpkgs/4590696c8693fea477850fe379a01544293ca4e2?narHash=sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ%3D' (2026-03-23)
2026-03-26 16:03:49 -05:00
home-manager-ci[bot]andAustin Horstman cf9686ba26 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fea3b367d61c1a6592bc47c72f40a9f3e6a53e96?narHash=sha256-GNU%2BooRmrHLfjlMsKdn0prEKVa0faVanm0jrgu1J/gY%3D' (2026-03-18)
  → 'github:NixOS/nixpkgs/812b3986fd1568f7a858f97fcf425ad996ba7d25?narHash=sha256-NV/J%2BtTER0P5iJhUDL/8HO5MDjDceLQPRUYgdmy5wXw%3D' (2026-03-20)
2026-03-23 09:03:08 -05:00
dependabot[bot]andAustin Horstman aaecd47a49 ci: bump cachix/cachix-action from 16 to 17
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 16 to 17.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v16...v17)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-version: '17'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 09:02:41 -05:00
home-manager-ci[bot]andAustin Horstman a91b3ea73a flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3e20095fe3c6cbb1ddcef89b26969a69a1570776?narHash=sha256-SEzUWw2Rf5Ki3bcM26nSKgbeoqi2uYy8IHVBqOKjX3w%3D' (2026-03-13)
  → 'github:NixOS/nixpkgs/fea3b367d61c1a6592bc47c72f40a9f3e6a53e96?narHash=sha256-GNU%2BooRmrHLfjlMsKdn0prEKVa0faVanm0jrgu1J/gY%3D' (2026-03-18)

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-19 18:32:24 -05:00
Austin Horstman 0d8ecc86c5 lib: extend lib to include hm maintainers
Upstream change is validating all maintainers against lib.maintainers,
need to merge our maintainer list in to pass doc building.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
(cherry picked from commit c4ab19c919)
2026-03-19 18:28:19 -05:00
stuebinmandRobert Helgesson 084e7e6df9 treewide: remove unneeded string escapes
(this is to reduce warnings produced by Lix)
2026-03-19 21:54:07 +01:00
dependabot[bot]andMatthieu Coudron 0759e0e137 ci: bump dorny/paths-filter from 3 to 4
Bumps [dorny/paths-filter](https://github.com/dorny/paths-filter) from 3 to 4.
- [Release notes](https://github.com/dorny/paths-filter/releases)
- [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md)
- [Commits](https://github.com/dorny/paths-filter/compare/v3...v4)

---
updated-dependencies:
- dependency-name: dorny/paths-filter
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 18:24:05 +01:00
home-manager-ci[bot]andMatthieu Coudron 4326ce5373 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/44bae273f9f82d480273bab26f5c50de3724f52f?narHash=sha256-vMrm7Pk2hjBRPnCSjhq1pH0bg350Z%2BpXhqZ9ICiqqCs%3D' (2026-03-09)
  → 'github:NixOS/nixpkgs/3e20095fe3c6cbb1ddcef89b26969a69a1570776?narHash=sha256-SEzUWw2Rf5Ki3bcM26nSKgbeoqi2uYy8IHVBqOKjX3w%3D' (2026-03-13)
2026-03-16 14:13:28 +01:00
dependabot[bot]andMatthieu Coudron 5e8ae50c5c ci: bump actions/create-github-app-token from 2 to 3
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2 to 3.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 14:12:29 +01:00
Ondřej KvapilandAustin Horstman 1f8f9e0012 difftastic: allow repeating options
The type was overly restrictive, see
https://github.com/nix-community/home-manager/pull/7947/changes#r2858054388

(cherry picked from commit f3a30376bb)
2026-03-15 15:46:38 -05:00
home-manager-ci[bot]andAustin Horstman 5c0f63f8d5 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/71caefce12ba78d84fe618cf61644dce01cf3a96?narHash=sha256-yf3iYLGbGVlIthlQIk5/4/EQDZNNEmuqKZkQssMljuw%3D' (2026-03-06)
  → 'github:NixOS/nixpkgs/44bae273f9f82d480273bab26f5c50de3724f52f?narHash=sha256-vMrm7Pk2hjBRPnCSjhq1pH0bg350Z%2BpXhqZ9ICiqqCs%3D' (2026-03-09)
2026-03-11 16:28:08 -05:00
home-manager-ci[bot]andAustin Horstman 8f736f0071 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c581273b8d5bdf1c6ce7e0a54da9841e6a763913?narHash=sha256-ywy9troNEfpgh0Ee%2BzaV1UTgU8kYBVKtvPSxh6clYGU%3D' (2026-03-02)
  → 'github:NixOS/nixpkgs/71caefce12ba78d84fe618cf61644dce01cf3a96?narHash=sha256-yf3iYLGbGVlIthlQIk5/4/EQDZNNEmuqKZkQssMljuw%3D' (2026-03-06)
2026-03-08 10:54:40 -05:00
home-manager-ci[bot]andAustin Horstman 080657a041 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/1267bb4920d0fc06ea916734c11b0bf004bbe17e?narHash=sha256-7DaQVv4R97cii/Qdfy4tmDZMB2xxtyIvNGSwXBBhSmo%3D' (2026-02-25)
  → 'github:NixOS/nixpkgs/c581273b8d5bdf1c6ce7e0a54da9841e6a763913?narHash=sha256-ywy9troNEfpgh0Ee%2BzaV1UTgU8kYBVKtvPSxh6clYGU%3D' (2026-03-02)
2026-03-04 08:04:18 -06:00
home-manager-ci[bot]andAustin Horstman a07a44a839 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e764fc9a405871f1f6ca3d1394fb422e0a0c3951?narHash=sha256-sdaqdnsQCv3iifzxwB22tUwN/fSHoN7j2myFW5EIkGk%3D' (2026-02-24)
  → 'github:NixOS/nixpkgs/1267bb4920d0fc06ea916734c11b0bf004bbe17e?narHash=sha256-7DaQVv4R97cii/Qdfy4tmDZMB2xxtyIvNGSwXBBhSmo%3D' (2026-02-25)
2026-03-01 09:48:45 -06:00
Nick DeGrootandAustin Horstman 9b9142b5fe chromium: fix null package
(cherry picked from commit 7b34e428f3)
2026-02-28 12:22:21 -06:00
24 changed files with 307 additions and 46 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Create GitHub App token
uses: actions/create-github-app-token@v2
uses: actions/create-github-app-token@v3
if: vars.CI_APP_ID
id: app-token
with:
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
- uses: cachix/install-nix-action@v31
with:
nix_path: nixpkgs=channel:nixos-unstable
- uses: cachix/cachix-action@v16
- uses: cachix/cachix-action@v17
with:
name: nix-community
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
github.event.pull_request.state == 'open'
steps:
- name: Create GitHub App token
uses: actions/create-github-app-token@v2
uses: actions/create-github-app-token@v3
if: vars.CI_APP_ID
id: app-token
with:
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
tests: ${{ steps.changes.outputs.tests }}
steps:
- uses: actions/checkout@v6
- uses: dorny/paths-filter@v3
- uses: dorny/paths-filter@v4
id: changes
with:
filters: |
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
branch: [master, release-25.05]
steps:
- name: Create GitHub App token
uses: actions/create-github-app-token@v2
uses: actions/create-github-app-token@v3
if: vars.CI_APP_ID
id: app-token
with:
+1 -1
View File
@@ -27,7 +27,7 @@ jobs:
pr_branch: update/maintainers-${{ github.ref_name }}
steps:
- name: Create GitHub App token
uses: actions/create-github-app-token@v2
uses: actions/create-github-app-token@v3
if: vars.CI_APP_ID
id: app-token
with:
Generated
+3 -3
View File
@@ -2,11 +2,11 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1771903837,
"narHash": "sha256-sdaqdnsQCv3iifzxwB22tUwN/fSHoN7j2myFW5EIkGk=",
"lastModified": 1779102034,
"narHash": "sha256-vZJZjLo513IeI8hjzHFc6TDezUd4uCE2Eq4SNO3DNNg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e764fc9a405871f1f6ca3d1394fb422e0a0c3951",
"rev": "687f05a9184cad4eaf905c48b63649e3a86f5433",
"type": "github"
},
"original": {
+11 -2
View File
@@ -7,7 +7,16 @@ let
mkHmLib = import ./.;
in
nixpkgsLib.extend (
self: super: {
hm = mkHmLib { lib = self; };
self: super:
let
hmLib = mkHmLib { lib = self; };
in
{
hm = hmLib;
# Nixpkgs now validates meta.maintainers against lib.maintainers.
# Mirror Home Manager-only maintainers there so existing lib.hm.maintainers
# references continue to satisfy the upstream type check.
maintainers = super.maintainers // hmLib.maintainers;
}
)
@@ -0,0 +1,13 @@
{ pkgs, ... }:
{
time = "2026-03-20T02:34:29+00:00";
condition = pkgs.stdenv.hostPlatform.isLinux;
message = ''
A new module is available: 'services.wayle'.
Wayle is a fast, configurable desktop environment shell for Wayland
compositors. Built in Rust with Relm4 and focused on performance,
modularity, and a great user experience. A successor to HyprPanel without
the pain or dependency on Hyprland.
'';
}
+11 -4
View File
@@ -40,7 +40,7 @@ let
finalPackage = mkOption {
inherit visible;
type = types.package;
type = types.nullOr types.package;
readOnly = true;
description = ''
Resulting customized ${name} package
@@ -220,15 +220,22 @@ let
};
in
lib.mkIf cfg.enable {
programs.${browser}.finalPackage = lib.mkIf (cfg.package != null) (
assertions = [
{
assertion = !(cfg.package == null && cfg.commandLineArgs != [ ]);
message = "Cannot set `commandLineArgs` when `package` is null for ${browser}.";
}
];
programs.${browser}.finalPackage =
if cfg.commandLineArgs != [ ] then
cfg.package.override {
commandLineArgs = lib.concatStringsSep " " cfg.commandLineArgs;
}
else
cfg.package
);
cfg.package;
home.packages = lib.mkIf (cfg.finalPackage != null) [
cfg.finalPackage
+1 -1
View File
@@ -22,7 +22,7 @@ in
options = {
picture = lib.mkOption {
type = with lib.types; nullOr (either path (strMatching "^http(s)?:\/\/.*$"));
type = with lib.types; nullOr (either path (strMatching "^http(s)?://.*$"));
default = null;
example = "/System/Library/Desktop Pictures/Solid Colors/Stone.png";
description = ''
+8 -5
View File
@@ -67,11 +67,14 @@ in
options = mkOption {
type =
with types;
attrsOf (oneOf [
str
int
bool
]);
let
atom = oneOf [
str
int
bool
];
in
attrsOf (either atom (listOf atom));
default = { };
example = {
color = "dark";
+21 -4
View File
@@ -16,7 +16,23 @@ in
package = lib.mkPackageOption pkgs "foot" { };
server.enable = lib.mkEnableOption "Foot terminal server";
server = {
enable = lib.mkEnableOption "Foot terminal server";
systemdTarget = lib.mkOption {
type = lib.types.str;
default = config.wayland.systemd.target;
defaultText = lib.literalExpression "config.wayland.systemd.target";
example = "sway-session.target";
description = ''
The systemd target that will automatically start the Foot server service.
When setting this value to `"sway-session.target"`,
make sure to also enable {option}`wayland.windowManager.sway.systemd.enable`,
otherwise the service may never be started.
'';
};
};
settings = lib.mkOption {
type = iniFormat.type;
@@ -59,8 +75,9 @@ in
Unit = {
Description = "Fast, lightweight and minimalistic Wayland terminal emulator.";
Documentation = "man:foot(1)";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
PartOf = [ cfg.server.systemdTarget ];
After = [ cfg.server.systemdTarget ];
ConditionEnvironment = "WAYLAND_DISPLAY";
};
Service = {
@@ -70,7 +87,7 @@ in
};
Install = {
WantedBy = [ "graphical-session.target" ];
WantedBy = [ cfg.server.systemdTarget ];
};
};
};
+140
View File
@@ -0,0 +1,140 @@
{
config,
lib,
pkgs,
...
}:
let
inherit (builtins) elem;
inherit (lib.attrsets) recursiveUpdate;
inherit (lib) lists getExe';
inherit (lib.modules) mkIf;
inherit (lib.options) mkEnableOption mkOption mkPackageOption;
cfg = config.services.wayle;
tomlFormat = pkgs.formats.toml { };
in
{
meta.maintainers = with lib.maintainers; [
perchun
];
options.services.wayle = {
enable = mkEnableOption "wayle shell";
package = mkPackageOption pkgs "wayle" { };
autoInstallDependencies = mkOption {
type = lib.types.bool;
default = true;
example = false;
description = ''
Whether to automatically install soft dependencies used by wayle that
will be required based on your config.
'';
};
settings = mkOption {
inherit (tomlFormat) type;
description = ''
Standard configuration options for wayle.
'';
default = { };
example = {
styling = {
theme-provider = "wayle";
palette = {
bg = "#16161e";
fg = "#c0caf5";
primary = "#7aa2f7";
};
};
bar = {
scale = 1;
location = "top";
rounding = "sm";
layout = [
{
monitor = "*";
left = [ "clock" ];
center = [ "media" ];
right = [ "battery" ];
}
];
};
modules.clock = {
format = "%H:%M";
icon-show = true;
label-show = true;
};
};
};
};
config = mkIf cfg.enable (
let
# Define default settings.
# This is not used to generate the config.toml file for wayle, only for
# internal module configuration that require (possibly user unset)
# default settings. These are the same defaults wayle uses.
settings_with_fallbacks = recursiveUpdate {
wallpaper.engine-enabled = false;
styling.theme-provider = "wayle";
} cfg.settings;
in
{
assertions = [
(lib.hm.assertions.assertPlatform "services.wayle" pkgs lib.platforms.linux)
];
home.packages = (
[ cfg.package ]
# Install the appropriate theme-provider, if set.
++ (lists.optional (
cfg.autoInstallDependencies
&& elem settings_with_fallbacks.styling.theme-provider [
"matugen"
"wallust"
"pywal"
]
) pkgs.${settings_with_fallbacks.styling.theme-provider})
);
# Main config file.
xdg.configFile."wayle/config.toml" = mkIf (cfg.settings != { }) {
source = tomlFormat.generate "wayle-config" cfg.settings;
};
# Systemd service for main wayle shell.
systemd.user.services.wayle = {
Unit = {
Description = ''
Wayland Elements - A compositor agnostic shell with extensive customization
'';
Documentation = "https://github.com/wayle-rs/wayle";
PartOf = [ config.wayland.systemd.target ];
After = [ config.wayland.systemd.target ];
ConditionEnvironment = "WAYLAND_DISPLAY";
};
Service = {
ExecStart = "${getExe' cfg.package "wayle"} shell";
Restart = "on-failure";
};
Install = {
WantedBy = [ config.wayland.systemd.target ];
};
};
# Wallpaper-engine dependency.
services.swww.enable = mkIf (
cfg.autoInstallDependencies && settings_with_fallbacks.wallpaper.engine-enabled
) (lib.mkDefault true);
}
);
}
+1
View File
@@ -129,6 +129,7 @@ in
Description = "Day/night gamma adjustments for Wayland compositors.";
After = [ cfg.systemdTarget ];
PartOf = [ cfg.systemdTarget ];
ConditionEnvironment = "WAYLAND_DISPLAY";
};
Service = {
@@ -8,6 +8,10 @@
options = {
color = "always";
display = "side-by-side";
override = [
"*.mill:Scala"
"*.yuck:Emacs Lisp"
];
};
};
@@ -17,7 +21,7 @@
assertFileExists home-files/.config/git/config
assertFileContains home-files/.config/git/config '[diff]'
# Should have diff.external set
assertFileRegex home-files/.config/git/config 'external = .*/difft.*--color.*--display'
assertFileRegex home-files/.config/git/config 'external = .*/difft.*--color.*--display.*--override.*mill:Scala.*--override.*yuck:Emacs Lisp.*'
# Should NOT have difftool config when diffToolMode is explicitly false
assertFileNotRegex home-files/.config/git/config 'tool = "difftastic"'
assertFileNotRegex home-files/.config/git/config '\[difftool "difftastic"\]'
@@ -8,6 +8,7 @@ Restart=on-failure
[Unit]
After=graphical-session.target
ConditionEnvironment=WAYLAND_DISPLAY
Description=Fast, lightweight and minimalistic Wayland terminal emulator.
Documentation=man:foot(1)
PartOf=graphical-session.target
+1 -1
View File
@@ -30,7 +30,7 @@
nmt.script =
let
goCfgDir = if !pkgs.stdenv.isDarwin then ".config/go" else "Library/Application\ Support/go";
goCfgDir = if !pkgs.stdenv.isDarwin then ".config/go" else "Library/Application Support/go";
in
''
assertFileExists "home-files/${goCfgDir}/env"
@@ -14,7 +14,7 @@
nmt.script =
let
goCfgDir = if !pkgs.stdenv.isDarwin then ".config/go" else "Library/Application\ Support/go";
goCfgDir = if !pkgs.stdenv.isDarwin then ".config/go" else "Library/Application Support/go";
in
''
assertFileExists "home-files/${goCfgDir}/env"
@@ -1,9 +1,16 @@
{
pkgs,
config,
...
}:
let
mkExtensionStub =
name:
pkgs.runCommandLocal name { } ''
mkdir -p $out
echo '{}' > $out/package.json
'';
in
{
programs.vicinae = {
enable = true;
@@ -61,22 +68,8 @@
};
extensions = [
(config.lib.vicinae.mkRayCastExtension {
name = "gif-search";
sha256 = "sha256-G7il8T1L+P/2mXWJsb68n4BCbVKcrrtK8GnBNxzt73Q=";
rev = "4d417c2dfd86a5b2bea202d4a7b48d8eb3dbaeb1";
})
(config.lib.vicinae.mkExtension {
name = "test-extension";
src =
pkgs.fetchFromGitHub {
owner = "schromp";
repo = "vicinae-extensions";
rev = "f8be5c89393a336f773d679d22faf82d59631991";
sha256 = "sha256-zk7WIJ19ITzRFnqGSMtX35SgPGq0Z+M+f7hJRbyQugw=";
}
+ "/test-extension";
})
(mkExtensionStub "cdnjs")
(mkExtensionStub "test-extension")
];
};
@@ -84,7 +77,7 @@
assertFileExists "home-files/.config/vicinae/vicinae.json"
assertFileExists "home-files/.config/systemd/user/vicinae.service"
assertFileExists "home-files/.local/share/vicinae/themes/catppuccin-mocha.toml"
assertFileExists "home-files/.local/share/vicinae/extensions/gif-search/package.json"
assertFileExists "home-files/.local/share/vicinae/extensions/cdnjs/package.json"
assertFileExists "home-files/.local/share/vicinae/extensions/test-extension/package.json"
'';
}
@@ -0,0 +1,44 @@
{ config, ... }:
{
services.wayle = {
enable = true;
package = config.lib.test.mkStubPackage { name = "wayle"; };
settings = {
styling = {
theme-provider = "wayle";
palette = {
bg = "#16161e";
fg = "#c0caf5";
primary = "#7aa2f7";
};
};
bar = {
scale = 1;
location = "top";
rounding = "sm";
layout = {
monitor = "*";
left = [ "clock" ];
center = [ "media" ];
right = [ "battery" ];
};
};
modules.clock = {
format = "%H:%M";
icon-show = true;
label-show = true;
};
};
};
nmt.script = ''
assertFileContent \
"home-files/.config/wayle/config.toml" \
${./basic-config.toml}
'';
}
@@ -0,0 +1,23 @@
[bar]
location = "top"
rounding = "sm"
scale = 1
[bar.layout]
center = ["media"]
left = ["clock"]
monitor = "*"
right = ["battery"]
[modules.clock]
format = "%H:%M"
icon-show = true
label-show = true
[styling]
theme-provider = "wayle"
[styling.palette]
bg = "#16161e"
fg = "#c0caf5"
primary = "#7aa2f7"
+5
View File
@@ -0,0 +1,5 @@
{ lib, pkgs, ... }:
lib.optionalAttrs pkgs.stdenv.hostPlatform.isLinux {
wayle-basic-config = ./basic-config.nix;
}
@@ -6,5 +6,6 @@ ExecStart=@wlsunset@/bin/wlsunset -L 128.8 -T 6000 -g 0.6 -l 12.3 -t 3500
[Unit]
After=test.target
ConditionEnvironment=WAYLAND_DISPLAY
Description=Day/night gamma adjustments for Wayland compositors.
PartOf=test.target