Diff
diff --git a/flake.nix b/flake.nix
index 8ba4419..b337c2f 100644
--- a/flake.nix
+++ b/flake.nix
@@ -44,55 +44,57 @@
lib,
pkgs,
...
- }:
- with lib; let
- cfg = config.services.xserver.windowManager.oxwm;
- oxwmDesktopItem = pkgs.writeTextFile {
- name = "oxwm.desktop";
- destination = "/share/xsessions/oxwm.desktop";
- text = ''
- [Desktop Entry]
- Name=OXWM
- Comment=A dynamic window manager written in Rust
- Exec=${cfg.package}/bin/oxwm
- Type=Application
- DesktopNames=OXWM
- '';
- passthru.providedSessions = ["oxwm"];
- };
- in {
- options.services.xserver.windowManager.oxwm = {
- enable = mkEnableOption "oxwm window manager";
- package = mkOption {
- type = types.package;
- default = self.packages.${pkgs.system}.default;
- description = "The oxwm package to use";
- };
- };
- config = mkIf cfg.enable {
- services.xserver.windowManager.session = [
- {
- name = "oxwm";
- start = ''
- ${cfg.package}/bin/oxwm &
- waitPID=$!
- '';
- }
- ];
- services.displayManager.sessionPackages = [oxwmDesktopItem];
+ }: let
+ inherit (lib) mkEnableOption mkOption mkIf types;
- environment.systemPackages = [
- cfg.package
- pkgs.rustc
- pkgs.cargo
- pkgs.pkg-config
- pkgs.xorg.libX11
- pkgs.xorg.libXft
- pkgs.xorg.libXrender
- pkgs.freetype
- pkgs.fontconfig
- ];
+ cfg = config.services.xserver.windowManager.oxwm;
+ oxwmDesktopItem = pkgs.writeTextFile {
+ name = "oxwm.desktop";
+ destination = "/share/xsessions/oxwm.desktop";
+ text = ''
+ [Desktop Entry]
+ Name=OXWM
+ Comment=A dynamic window manager written in Rust
+ Exec=${cfg.package}/bin/oxwm
+ Type=Application
+ DesktopNames=OXWM
+ '';
+ passthru.providedSessions = ["oxwm"];
+ };
+ in {
+ options.services.xserver.windowManager.oxwm = {
+ enable = mkEnableOption "oxwm window manager";
+ package = mkOption {
+ type = types.package;
+ default = self.packages.${pkgs.system}.default;
+ description = "The oxwm package to use";
};
};
+
+ config = mkIf cfg.enable {
+ services.xserver.windowManager.session = [
+ {
+ name = "oxwm";
+ start = ''
+ ${cfg.package}/bin/oxwm &
+ waitPID=$!
+ '';
+ }
+ ];
+ services.displayManager.sessionPackages = [oxwmDesktopItem];
+
+ environment.systemPackages = [
+ cfg.package
+ pkgs.rustc
+ pkgs.cargo
+ pkgs.pkg-config
+ pkgs.xorg.libX11
+ pkgs.xorg.libXft
+ pkgs.xorg.libXrender
+ pkgs.freetype
+ pkgs.fontconfig
+ ];
+ };
+ };
};
}