removed niri build directly (build from flake instead)

This commit is contained in:
twoneis 2023-11-19 22:39:55 +01:00
parent 90d53f13f4
commit ed98f5bc65
5 changed files with 11 additions and 4001 deletions

194
flake.lock generated
View file

@ -21,24 +21,6 @@
"type": "github" "type": "github"
} }
}, },
"crane_2": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1699548976,
"narHash": "sha256-xnpxms0koM8mQpxIup9JnT0F7GrKdvv0QvtxvRuOYR4=",
"owner": "ipetkov",
"repo": "crane",
"rev": "6849911446e18e520970cc6b7a691e64ee90d649",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems"
@ -57,24 +39,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1681202837,
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -106,16 +70,16 @@
"rust": "rust" "rust": "rust"
}, },
"locked": { "locked": {
"lastModified": 1700427651, "lastModified": 1700158862,
"narHash": "sha256-9DuupHqIMZScOQqZv3lU5c0yggxiEjtt/AxfNrcUoSI=", "narHash": "sha256-mtBzW2UoW0FXLuVuinSUFVOW/1wKo/7nlxq7ZIzpBr0=",
"owner": "twoneis", "owner": "pop-os",
"repo": "niri", "repo": "cosmic-comp",
"rev": "905fdf56d91144eb03b47a0310f6786577f5f820", "rev": "92c16bd4adabbd00123284176a2e4cc52b5131c7",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "twoneis", "owner": "pop-os",
"repo": "niri", "repo": "cosmic-comp",
"type": "github" "type": "github"
} }
}, },
@ -134,21 +98,6 @@
"type": "github" "type": "github"
} }
}, },
"nix-filter_2": {
"locked": {
"lastModified": 1694857738,
"narHash": "sha256-bxxNyLHjhu0N8T3REINXQ2ZkJco0ABFPn6PIe2QUfqo=",
"owner": "numtide",
"repo": "nix-filter",
"rev": "41fd48e00c22b4ced525af521ead8792402de0ea",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "nix-filter",
"type": "github"
}
},
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1700392353, "lastModified": 1700392353,
@ -181,56 +130,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib": {
"locked": {
"dir": "lib",
"lastModified": 1698611440,
"narHash": "sha256-jPjHjrerhYDy3q9+s5EAsuhyhuknNfowY6yt6pjn9pc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0cbe9f69c234a7700596e943bfae7ef27a31b735",
"type": "github"
},
"original": {
"dir": "lib",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1698931758,
"narHash": "sha256-pwl9xS9JFMXXR1lUP/QOqO9hiZKukEcVUU1A0DKQwi4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b644d97bda6dae837d577e28383c10aa51e5e2d2",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1681358109,
"narHash": "sha256-eKyxW4OohHQx9Urxi7TQlFBTDWII+F+x2hklDOQPB50=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "96ba1c52e54e74c3197f4d43026b3f3d92e83ff9",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"parts": { "parts": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
@ -252,31 +151,12 @@
"type": "github" "type": "github"
} }
}, },
"parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1698882062,
"narHash": "sha256-HkhafUayIqxXyHH1X8d9RDl1M2CkFgZLjKD3MzabiEo=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8c9fa2545007b49a5db5f650ae91f227672c3877",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"niri": "niri", "niri": "niri",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs"
"strata": "strata"
} }
}, },
"rust": { "rust": {
@ -301,49 +181,6 @@
"type": "github" "type": "github"
} }
}, },
"rust_2": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1699755324,
"narHash": "sha256-DJBtQB5VIUXJZwVrhgkKOH8g2wTJFHe+5Dc2oJjpcNs=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "d15b1b2be8daba77c80ee6716616e5c841d3ab14",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"strata": {
"inputs": {
"crane": "crane_2",
"nix-filter": "nix-filter_2",
"nixpkgs": [
"nixpkgs"
],
"parts": "parts_2",
"rust": "rust_2"
},
"locked": {
"lastModified": 1699790243,
"narHash": "sha256-cYmECyLm1veuxAaDfcun4ACDo5UQflKKW3mhaq+ZSzA=",
"owner": "stratawm",
"repo": "strata",
"rev": "14b230a8011b461c7515e6c5847c636d056f41a4",
"type": "github"
},
"original": {
"owner": "stratawm",
"repo": "strata",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
@ -358,21 +195,6 @@
"repo": "default", "repo": "default",
"type": "github" "type": "github"
} }
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -16,7 +16,7 @@
}; };
niri = { niri = {
url = "github:pop-os/cosmic-comp"; url = "github:twoneis/niri";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
}; };

View file

@ -3,7 +3,9 @@ let
niri = inputs.niri.packages.x86_64-linux.default; niri = inputs.niri.packages.x86_64-linux.default;
in{ in{
environment.systemPackages = [ niri ]; environment.systemPackages = [ niri ];
/*
services.xserver.displayManager.sessionPackages = [ services.xserver.displayManager.sessionPackages = [
niri niri
]; ];
*/
} }

File diff suppressed because it is too large Load diff

View file

@ -1,143 +0,0 @@
{ pkgs
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage {
pname = "niri";
version = "unstable-2023-11-17";
src = fetchFromGitHub {
owner = "YaLTeR";
repo = "niri";
rev = "19cafffe0f3f1eefc6984dc446134b0fd93d1e28";
hash = "sha256-mDeJh3N6Zt3FNpyFmRkY8zOLIBad3CoV45WjB+RUkhA=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"smithay-0.3.0" = "sha256-1BEJEdmGCt6jtPEcBt4R1d/LdKWLLJYJpcOn4SbvkRk=";
};
};
nativeBuildInputs = [
pkgs.pkg-config
rustPlatform.bindgenHook
];
buildInputs = with pkgs; [
libxkbcommon
pipewire
systemd
seatd
udev
wayland
libinput
libglvnd
mesa # libgbm
xwayland
fontconfig
];
runtimeDependencies = with pkgs; [
libglvnd
mesa
];
RUSTFLAGS = map (a: "-C link-arg=${a}") [
"-Wl,--push-state,--no-as-needed"
"-lEGL"
"-lwayland-client"
"-Wl,--pop-state"
];
postInstall =
let
niriSession = ''
#!/bin/sh
if [ -n "$SHELL" ] &&
grep -q "$SHELL" /etc/shells &&
! (echo "$SHELL" | grep -q "false") &&
! (echo "$SHELL" | grep -q "nologin"); then
if [ "$1" != '-l' ]; then
exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
else
shift
fi
fi
# Make sure there's no already running session.
if systemctl --user -q is-active niri.service; then
echo 'A niri session is already running.'
exit 1
fi
# Reset failed state of all user units.
systemctl --user reset-failed
# Set the current desktop for xdg-desktop-portal.
export XDG_CURRENT_DESKTOP=niri
# Ensure the session type is set to Wayland for xdg-autostart apps.
export XDG_SESSION_TYPE=wayland
# Import the login manager environment.
systemctl --user import-environment
# DBus activation environment is independent from systemd. While most of
# dbus-activated services are already using `SystemdService` directive, some
# still don't and thus we should set the dbus environment with a separate
# command.
if hash dbus-update-activation-environment 2>/dev/null; then
dbus-update-activation-environment --all
fi
# Start niri and wait for it to terminate.
systemctl --user --wait start niri.service
# Unset environment that we've set.
systemctl --user unset-environment WAYLAND_DISPLAY XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
'';
niriDesktop = ''
[Desktop Entry]
Name=Niri
Comment=A scrollable-tiling Wayland compositor
Exec=niri-session
Type=Application
DesktopNames=niri
'';
niriPortals = ''
[preferred]
default=gnome;gtk;
'';
niriService = ''
[Unit]
Description=A scrollable-tiling Wayland compositor
BindsTo=graphical-session.target
Before=graphical-session.target
Wants=graphical-session-pre.target
After=graphical-session-pre.target
Wants=xdg-desktop-autostart.target
Before=xdg-desktop-autostart.target
[Service]
Type=notify
ExecStart=/usr/bin/env niri
'';
in ''
echo "${niriSession}" > $out/bin/niri-session
chmod a=xr $out/bin/niri-session
mkdir -p $out/share/wayland-sessions
echo "${niriDesktop}" > $out/share/wayland-sessions/niri.desktop
mkdir -p $out/share/xdg-desktop-portal
echo "${niriPortals}" > $out/share/wayland-sessions/niri-portals.conf
mkdir -p $out/lib/systemd/user
echo "${niriService}" > $out/lib/systemd/user/niri.service
'';
passthru.providedSessions = [ "niri" ];
}