File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22 description = "Noctalia - A lightweight Wayland shell and bar" ;
33
44 inputs = {
5- nixpkgs . url = "github:NixOS/nixpkgs/ nixos-unstable" ;
5+ nixpkgs . url = "https://channels. nixos.org/nixos -unstable/nixexprs.tar.xz " ;
66 } ;
77
8- outputs = { self , nixpkgs } :
8+ outputs =
9+ { self , nixpkgs } :
910 let
1011 inherit ( nixpkgs ) lib ;
12+
1113 systems = [
1214 "x86_64-linux"
1315 "aarch64-linux"
1416 ] ;
15- forEachSystem = perSystem :
17+
18+ forEachSystem =
19+ perSystem :
1620 lib . genAttrs systems (
17- system : let
21+ system :
22+ let
1823 pkgs = nixpkgs . legacyPackages . ${ system } ;
1924 in
20- perSystem { inherit pkgs system ; }
25+ perSystem { inherit pkgs system ; }
2126 ) ;
27+
28+ mkDate =
29+ longDate :
30+ nixpkgs . lib . concatStringsSep "-" [
31+ ( builtins . substring 0 4 longDate )
32+ ( builtins . substring 4 2 longDate )
33+ ( builtins . substring 6 2 longDate )
34+ ] ;
35+
36+ version = mkDate ( self . lastModifiedDate or "19700101" ) + "" + ( self . shortRev or "dirty" ) ;
2237 in
2338 {
2439 overlays . default = final : prev : {
25- noctalia = final . callPackage ./nix/package.nix { } ;
40+ noctalia = final . callPackage ./nix/package.nix { inherit version ; } ;
2641 } ;
2742
2843 packages = forEachSystem (
29- { pkgs , ... } : {
30- default = pkgs . callPackage ./nix/package.nix { } ;
44+ { pkgs , ... } :
45+ {
46+ default = pkgs . callPackage ./nix/package.nix { inherit version ; } ;
3147 }
3248 ) ;
3349
3450 devShells = forEachSystem (
35- { pkgs , system } : {
51+ { pkgs , system } :
52+ {
3653 default = pkgs . callPackage ./nix/devshell.nix {
3754 noctalia = self . packages . ${ system } . default ;
3855 } ;
3956 }
4057 ) ;
4158
4259 apps = forEachSystem (
43- { pkgs , system } : {
60+ { system , ... } :
61+ {
4462 default = {
4563 type = "app" ;
4664 program = lib . getExe self . packages . ${ system } . default ;
Original file line number Diff line number Diff line change 1- { pkgs , noctalia } :
2-
1+ {
2+ pkgs ,
3+ noctalia ,
4+ } :
35pkgs . mkShell {
46 inputsFrom = [ noctalia ] ;
5-
6- buildInputs = with pkgs ; [
7+
8+ nativeBuildInputs = with pkgs ; [
9+ # Workflow & Hooks
710 just
11+ lefthook
12+
13+ # Formatting (required by justfile)
814 clang-tools
15+ gnugrep
16+ gnused
17+ findutils
18+
19+ # Debugging
920 gdb
1021 ] ;
1122
1223 shellHook = ''
13- echo "Noctalia development environment"
14- echo ""
15- echo "Available commands:"
16- echo " just configure - Configure debug build"
17- echo " just build - Build debug"
18- echo " just run - Run debug build"
19- echo " just configure release - Configure release build"
20- echo " just build release - Build release"
21- echo " just run release - Run release build"
22- echo ""
23- echo "Note: Use 'just build' instead of 'nix build' due to sdbus-c++ API compatibility"
24+ # Point to local assets so binaries find resources without installation
25+ export NOCTALIA_ASSETS_DIR="$PWD/assets"
26+
27+ echo " Noctalia dev-shell | 'just --list' to see available tasks"
2428 '' ;
2529}
Original file line number Diff line number Diff line change 1- { lib ,
2- stdenv ,
3- meson ,
4- ninja ,
5- pkg-config ,
6- wayland-scanner ,
7- wayland ,
8- wayland-protocols ,
9- libGL ,
10- libglvnd ,
11- freetype ,
12- fontconfig ,
13- cairo ,
14- pango ,
15- libxkbcommon ,
16- sdbus-cpp_2 ,
17- systemd ,
18- pipewire ,
19- pam ,
20- curl ,
21- libwebp
1+ {
2+ lib ,
3+ stdenv ,
4+ version ,
5+ meson ,
6+ ninja ,
7+ pkg-config ,
8+ wayland-scanner ,
9+ wayland ,
10+ wayland-protocols ,
11+ libGL ,
12+ libglvnd ,
13+ freetype ,
14+ fontconfig ,
15+ cairo ,
16+ pango ,
17+ libxkbcommon ,
18+ sdbus-cpp_2 ,
19+ systemd ,
20+ pipewire ,
21+ pam ,
22+ curl ,
23+ libwebp ,
2224} :
2325
2426stdenv . mkDerivation {
2527 pname = "noctalia" ;
26- version = "5.0.0" ;
28+ inherit version ;
2729
28- src = ../. ;
30+ src = lib . cleanSource ../. ;
2931
3032 postPatch = ''
3133 # Remove -march=native and -mtune=native for reproducible builds
@@ -58,12 +60,12 @@ stdenv.mkDerivation {
5860 ] ;
5961
6062 mesonBuildType = "release" ;
61-
63+
6264 ninjaFlags = [ "-v" ] ;
6365
6466 meta = with lib ; {
6567 description = "A lightweight Wayland shell and bar built directly on Wayland + OpenGL ES" ;
66- homepage = "https://github.com/anomalyco /noctalia-shell" ;
68+ homepage = "https://github.com/noctalia-dev /noctalia-shell" ;
6769 license = licenses . mit ;
6870 platforms = platforms . linux ;
6971 mainProgram = "noctalia" ;
You can’t perform that action at this time.
0 commit comments