add hellwm

This commit is contained in:
EdenQwQ 2025-03-26 22:30:55 +08:00
parent fcaaafafca
commit 0a0b350b3a
8 changed files with 89 additions and 13 deletions

19
flake.lock generated
View file

@ -582,18 +582,17 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1742914369,
"narHash": "sha256-WQIjFPUxSsiEZccN5lVWT/p1/d99iPmnJ4yd/oTCnkY=",
"owner": "DreamMaoMao",
"repo": "maomaowm",
"rev": "86d4b2d9d0755a2b5b79d244e43cf7c9f81ab138",
"type": "github"
"lastModified": 1742919954,
"narHash": "sha256-uog87uhRIOmJAaWbF+cP3x8TGX4uSqPYncPjKo5YA5U=",
"ref": "refs/heads/wlroots-0.19",
"rev": "ed7e8bf93afc3d428a93501de53d581a8eb53218",
"revCount": 228,
"type": "git",
"url": "file:///home/eden/Repos/maomaowm-test"
},
"original": {
"owner": "DreamMaoMao",
"ref": "wlroots-0.19",
"repo": "maomaowm",
"type": "github"
"type": "git",
"url": "file:///home/eden/Repos/maomaowm-test"
}
},
"mmsg": {

View file

@ -74,7 +74,7 @@
nh.url = "github:viperML/nh";
treefmt-nix.url = "github:numtide/treefmt-nix";
agenix.url = "github:ryantm/agenix";
maomaowm.url = "github:DreamMaoMao/maomaowm/wlroots-0.19";
# maomaowm.url = "git+file:///home/eden/Repos/maomaowm-orig";
# maomaowm.url = "github:EdenQwQ/maomaowm/wlroots-0.19";
maomaowm.url = "git+file:///home/eden/Repos/maomaowm-test";
};
}

View file

@ -43,6 +43,10 @@ in
(niriAction "super + {_, shift +} {minus, equal}" "set-{column\\-width, window\\-height} \"{\\-, +}10%\"")
(niriAction "{ctrl +, alt +} print" "screenshot-{screen, window}")
(niriAction "print" "screenshot")
{
key = "super + ctrl + c";
command = "niri msg pick-color | grep Hex | sd 'Hex: ' '' | sd '\\n' '' | wl-copy";
}
];
};
}

View file

@ -6,5 +6,6 @@
./ai.nix
./swhkd.nix
./maomaowm.nix
./hellwm.nix
];
}

5
os/programs/hellwm.nix Normal file
View file

@ -0,0 +1,5 @@
{ pkgs, ... }:
{
environment.systemPackages = [ pkgs.hellwm ];
services.displayManager.sessionPackages = [ pkgs.hellwm ];
}

View file

@ -1,6 +1,5 @@
{
programs = {
maomaowm.enable = true;
maomaowm.mmsg.enable = true;
};
}

View file

@ -8,4 +8,5 @@
hugmetight-font = pkgs.callPackage ./fonts/hugmetight.nix { };
custom-colorschemes = pkgs.callPackage ./customColorSchemes { };
fiz = pkgs.callPackage ./fiz.nix { };
hellwm = pkgs.callPackage ./hellwm.nix { };
}

67
pkgs/hellwm.nix Normal file
View file

@ -0,0 +1,67 @@
{
stdenv,
lua,
libdrm,
pixman,
wayland,
libinput,
pkg-config,
wlroots_0_18,
libxkbcommon,
wayland-scanner,
wayland-protocols,
lib,
fetchFromGitHub,
}:
stdenv.mkDerivation {
pname = "hellwm";
version = "0.0.1";
src = lib.cleanSource (fetchFromGitHub {
owner = "EdenQwQ";
repo = "hellwm";
rev = "c84f13f6167af6625038d7effcb7494d53cf1856";
hash = "sha256-uFhU7s4rkSpEUQH5mSuCgbE/SNGVV0uTqnpPoS0AWi0=";
});
buildInputs = [
lua
libdrm
pixman
wayland
libinput
pkg-config
wlroots_0_18
libxkbcommon
wayland-scanner
wayland-protocols
];
buildPhase = ''
make
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/wayland-sessions
install -Dm755 hellwm -t $out/bin
install -Dm755 hellcli -t $out/bin
cat > $out/share/wayland-sessions/hellwm.desktop << EOF
[Desktop Entry]
Name=HellWM
Comment=HellWM Wayland Compositor
Exec=$out/bin/hellwm
Type=Application
EOF
'';
passthru = {
providedSessions = [ "hellwm" ];
};
meta = {
description = "HellWM";
homepage = "https://github.com/HellSoftware/HellWM";
maintainers = [ "danihek" ];
};
}