refactor: format nix code with alejandra and optimize src path

This commit is contained in:
Yappaholic 2025-06-17 22:46:26 +03:00
parent f202a16abe
commit 6c99eeaeb3
4 changed files with 109 additions and 109 deletions

View file

@ -13,14 +13,13 @@
}; };
}; };
outputs = outputs = {
{
self, self,
flake-parts, flake-parts,
treefmt-nix, treefmt-nix,
... ...
}@inputs: } @ inputs:
flake-parts.lib.mkFlake { inherit inputs; } { flake-parts.lib.mkFlake {inherit inputs;} {
imports = [ imports = [
inputs.flake-parts.flakeModules.easyOverlay inputs.flake-parts.flakeModules.easyOverlay
]; ];
@ -30,14 +29,13 @@
nixosModules.maomaowm = import ./nix/nixos-modules.nix self; nixosModules.maomaowm = import ./nix/nixos-modules.nix self;
}; };
perSystem = perSystem = {
{
config, config,
pkgs, pkgs,
... ...
}: }: let
let inherit
inherit (pkgs) (pkgs)
callPackage callPackage
; ;
maomaowm = callPackage ./nix { maomaowm = callPackage ./nix {
@ -45,12 +43,11 @@
inherit (inputs.mmsg.packages.${pkgs.system}) mmsg; inherit (inputs.mmsg.packages.${pkgs.system}) mmsg;
}; };
shellOverride = old: { shellOverride = old: {
nativeBuildInputs = old.nativeBuildInputs ++ [ ]; nativeBuildInputs = old.nativeBuildInputs ++ [];
buildInputs = old.buildInputs ++ [ ]; buildInputs = old.buildInputs ++ [];
}; };
treefmtEval = treefmt-nix.lib.evalModule pkgs ./treefmt.nix; treefmtEval = treefmt-nix.lib.evalModule pkgs ./treefmt.nix;
in in {
{
packages.default = maomaowm; packages.default = maomaowm;
overlayAttrs = { overlayAttrs = {
inherit (config.packages) maomaowm; inherit (config.packages) maomaowm;
@ -61,6 +58,6 @@
devShells.default = maomaowm.overrideAttrs shellOverride; devShells.default = maomaowm.overrideAttrs shellOverride;
formatter = treefmtEval.config.build.wrapper; formatter = treefmtEval.config.build.wrapper;
}; };
systems = [ "x86_64-linux" ]; systems = ["x86_64-linux"];
}; };
} }

View file

@ -18,15 +18,17 @@
ninja, ninja,
wlroots, wlroots,
mmsg, mmsg,
}: }: let
let
pname = "maomaowm"; pname = "maomaowm";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
inherit pname; inherit pname;
version = "nightly"; version = "nightly";
src = ../.; src = builtins.path {
path = ../.;
name = "source";
};
nativeBuildInputs = [ nativeBuildInputs = [
meson meson
@ -53,7 +55,7 @@ stdenv.mkDerivation {
]; ];
passthru = { passthru = {
providedSessions = [ "maomao" ]; providedSessions = ["maomao"];
inherit mmsg; inherit mmsg;
}; };
@ -62,7 +64,7 @@ stdenv.mkDerivation {
description = "A streamlined but feature-rich Wayland compositor"; description = "A streamlined but feature-rich Wayland compositor";
homepage = "https://github.com/DreamMaoMao/maomaowm"; homepage = "https://github.com/DreamMaoMao/maomaowm";
license = lib.licenses.mit; license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ]; maintainers = [];
platforms = lib.platforms.unix; platforms = lib.platforms.unix;
}; };
} }

View file

@ -1,11 +1,9 @@
self: self: {
{
lib, lib,
config, config,
pkgs, pkgs,
... ...
}: }: let
let
inherit (self.packages.${pkgs.system}) maomaowm; inherit (self.packages.${pkgs.system}) maomaowm;
cfg = config.wayland.windowManager.maomaowm; cfg = config.wayland.windowManager.maomaowm;
variables = lib.concatStringsSep " " cfg.systemd.variables; variables = lib.concatStringsSep " " cfg.systemd.variables;
@ -15,8 +13,7 @@ let
${lib.optionalString cfg.systemd.enable systemdActivation} ${lib.optionalString cfg.systemd.enable systemdActivation}
${cfg.autostart_sh} ${cfg.autostart_sh}
''; '';
in in {
{
options = { options = {
wayland.windowManager.maomaowm = with lib; { wayland.windowManager.maomaowm = with lib; {
enable = mkOption { enable = mkOption {
@ -53,7 +50,7 @@ in
"XCURSOR_THEME" "XCURSOR_THEME"
"XCURSOR_SIZE" "XCURSOR_SIZE"
]; ];
example = [ "--all" ]; example = ["--all"];
description = '' description = ''
Environment variables imported into the systemd and D-Bus user environment. Environment variables imported into the systemd and D-Bus user environment.
''; '';
@ -95,23 +92,23 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
home.packages = [ maomaowm ]; home.packages = [maomaowm];
home.activation = home.activation =
lib.optionalAttrs (cfg.autostart_sh != "") { lib.optionalAttrs (cfg.autostart_sh != "") {
createMaomaoScript = lib.hm.dag.entryAfter [ "clearMaomaoConfig" ] '' createMaomaoScript = lib.hm.dag.entryAfter ["clearMaomaoConfig"] ''
cat ${autostart_sh} > $HOME/.config/maomao/autostart.sh cat ${autostart_sh} > $HOME/.config/maomao/autostart.sh
chmod +x $HOME/.config/maomao/autostart.sh chmod +x $HOME/.config/maomao/autostart.sh
''; '';
} }
// lib.optionalAttrs (cfg.settings != "") { // lib.optionalAttrs (cfg.settings != "") {
createMaomaoConfig = lib.hm.dag.entryAfter [ "clearMaomaoConfig" ] '' createMaomaoConfig = lib.hm.dag.entryAfter ["clearMaomaoConfig"] ''
cat > $HOME/.config/maomao/config.conf <<EOF cat > $HOME/.config/maomao/config.conf <<EOF
${cfg.settings} ${cfg.settings}
EOF EOF
''; '';
} }
// { // {
clearMaomaoConfig = lib.hm.dag.entryAfter [ "writeBoundary" ] '' clearMaomaoConfig = lib.hm.dag.entryAfter ["writeBoundary"] ''
rm -rf $HOME/.config/maomao rm -rf $HOME/.config/maomao
mkdir -p $HOME/.config/maomao mkdir -p $HOME/.config/maomao
''; '';
@ -119,12 +116,14 @@ in
systemd.user.targets.maomao-session = lib.mkIf cfg.systemd.enable { systemd.user.targets.maomao-session = lib.mkIf cfg.systemd.enable {
Unit = { Unit = {
Description = "maomao compositor session"; Description = "maomao compositor session";
Documentation = [ "man:systemd.special(7)" ]; Documentation = ["man:systemd.special(7)"];
BindsTo = [ "graphical-session.target" ]; BindsTo = ["graphical-session.target"];
Wants = [ Wants =
[
"graphical-session-pre.target" "graphical-session-pre.target"
] ++ lib.optional cfg.systemd.xdgAutostart "xdg-desktop-autostart.target"; ]
After = [ "graphical-session-pre.target" ]; ++ lib.optional cfg.systemd.xdgAutostart "xdg-desktop-autostart.target";
After = ["graphical-session-pre.target"];
Before = lib.optional cfg.systemd.xdgAutostart "xdg-desktop-autostart.target"; Before = lib.optional cfg.systemd.xdgAutostart "xdg-desktop-autostart.target";
}; };
}; };

View file

@ -1,14 +1,11 @@
self: self: {
{
config, config,
lib, lib,
pkgs, pkgs,
... ...
}: }: let
let
cfg = config.programs.maomaowm; cfg = config.programs.maomaowm;
in in {
{
options = { options = {
programs.maomaowm = { programs.maomaowm = {
enable = lib.mkEnableOption "maomaowm, a wayland compositor based on dwl"; enable = lib.mkEnableOption "maomaowm, a wayland compositor based on dwl";
@ -21,16 +18,22 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = [ environment.systemPackages =
[
cfg.package cfg.package
] ++ (if (builtins.hasAttr "mmsg" cfg.package) then [ cfg.package.mmsg ] else [ ]); ]
++ (
if (builtins.hasAttr "mmsg" cfg.package)
then [cfg.package.mmsg]
else []
);
xdg.portal = { xdg.portal = {
enable = lib.mkDefault true; enable = lib.mkDefault true;
wlr.enable = lib.mkDefault true; wlr.enable = lib.mkDefault true;
configPackages = [ cfg.package ]; configPackages = [cfg.package];
}; };
security.polkit.enable = lib.mkDefault true; security.polkit.enable = lib.mkDefault true;
@ -38,10 +41,9 @@ in
programs.xwayland.enable = lib.mkDefault true; programs.xwayland.enable = lib.mkDefault true;
services = { services = {
displayManager.sessionPackages = [ cfg.package ]; displayManager.sessionPackages = [cfg.package];
graphical-desktop.enable = lib.mkDefault true; graphical-desktop.enable = lib.mkDefault true;
}; };
}; };
} }