+27
-27
flake.lock
+27
-27
flake.lock
···
1
1
{
2
2
"nodes": {
3
-
"flake-utils": {
3
+
"flake-parts": {
4
4
"inputs": {
5
-
"systems": "systems"
5
+
"nixpkgs-lib": "nixpkgs-lib"
6
6
},
7
7
"locked": {
8
-
"lastModified": 1710146030,
9
-
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
10
-
"owner": "numtide",
11
-
"repo": "flake-utils",
12
-
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
8
+
"lastModified": 1743550720,
9
+
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
10
+
"owner": "hercules-ci",
11
+
"repo": "flake-parts",
12
+
"rev": "c621e8422220273271f52058f618c94e405bb0f5",
13
13
"type": "github"
14
14
},
15
15
"original": {
16
-
"owner": "numtide",
17
-
"repo": "flake-utils",
16
+
"owner": "hercules-ci",
17
+
"repo": "flake-parts",
18
18
"type": "github"
19
19
}
20
20
},
21
21
"nixpkgs": {
22
22
"locked": {
23
-
"lastModified": 1711497579,
24
-
"narHash": "sha256-H6/9jraWg7e6pxFGEArpyXwQ/5dy/u5Un67WiLsuPGA=",
23
+
"lastModified": 1747825515,
24
+
"narHash": "sha256-BWpMQymVI73QoKZdcVCxUCCK3GNvr/xa2Dc4DM1o2BE=",
25
25
"owner": "NixOS",
26
26
"repo": "nixpkgs",
27
-
"rev": "e80d1b630036fe33badbc168dfcd071d463b92cf",
27
+
"rev": "cd2812de55cf87df88a9e09bf3be1ce63d50c1a6",
28
28
"type": "github"
29
29
},
30
30
"original": {
31
31
"owner": "NixOS",
32
+
"ref": "nixos-25.05",
32
33
"repo": "nixpkgs",
33
-
"rev": "e80d1b630036fe33badbc168dfcd071d463b92cf",
34
34
"type": "github"
35
35
}
36
36
},
37
-
"root": {
38
-
"inputs": {
39
-
"flake-utils": "flake-utils",
40
-
"nixpkgs": "nixpkgs"
41
-
}
42
-
},
43
-
"systems": {
37
+
"nixpkgs-lib": {
44
38
"locked": {
45
-
"lastModified": 1681028828,
46
-
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
47
-
"owner": "nix-systems",
48
-
"repo": "default",
49
-
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
39
+
"lastModified": 1743296961,
40
+
"narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=",
41
+
"owner": "nix-community",
42
+
"repo": "nixpkgs.lib",
43
+
"rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa",
50
44
"type": "github"
51
45
},
52
46
"original": {
53
-
"owner": "nix-systems",
54
-
"repo": "default",
47
+
"owner": "nix-community",
48
+
"repo": "nixpkgs.lib",
55
49
"type": "github"
50
+
}
51
+
},
52
+
"root": {
53
+
"inputs": {
54
+
"flake-parts": "flake-parts",
55
+
"nixpkgs": "nixpkgs"
56
56
}
57
57
}
58
58
},
+49
-37
flake.nix
+49
-37
flake.nix
···
3
3
4
4
{
5
5
inputs = {
6
-
# Whenever an upstream change is merged, update this to
7
-
# the relevant commit and remove the packages from the
8
-
# ...ToUpstream lists below
9
-
nixpkgs.url = "github:NixOS/nixpkgs/e80d1b630036fe33badbc168dfcd071d463b92cf";
10
-
flake-utils.url = "github:numtide/flake-utils";
6
+
# Whenever an upstream change is merged, update this and
7
+
# remove the packages from the ...ToUpstream lists below
8
+
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
9
+
flake-parts.url = "github:hercules-ci/flake-parts";
11
10
};
12
11
13
-
outputs = { self, nixpkgs, flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system:
14
-
let
15
-
pkgs = nixpkgs.legacyPackages.${system};
16
-
17
-
devTools = with pkgs; [
18
-
# Tools that are required in order to develop with Monado, but that are not required to build Monado itself
19
-
# These cannot be upstreamed into nixpkgs, as they are not required to build Monado
20
-
# See https://github.com/NixOS/nix/issues/7501 for a discussion on this
21
-
clang
22
-
cmake-format
23
-
git
24
-
gradle
25
-
gradle-completion
12
+
outputs =
13
+
inputs@{ nixpkgs, flake-parts, ... }:
14
+
flake-parts.lib.mkFlake { inherit inputs; } {
15
+
systems = [
16
+
"x86_64-linux"
17
+
"aarch64-linux"
18
+
"x86_64-darwin"
19
+
"aarch64-darwin"
26
20
];
21
+
perSystem =
22
+
{ pkgs, lib, ... }:
23
+
let
24
+
devTools = with pkgs; [
25
+
# Tools that are required in order to develop with Monado
26
+
# but are not required to build Monado itself
27
+
clang-tools
28
+
cmake-format
29
+
git
30
+
gradle
31
+
gradle-completion
32
+
];
27
33
28
-
nativeBuildInputsToUpstream = with pkgs; [
29
-
# If there are any nativeBuildInputs that are not in nixpkgs, add them here
30
-
# nativeBuildInputs are packages that are needed to develop and/or build the project (i.e. tooling)
31
-
];
34
+
nativeBuildInputsToUpstream = with pkgs; [
35
+
# If there are any nativeBuildInputs that are not in nixpkgs, add them here
36
+
# nativeBuildInputs are packages that are needed to develop and/or build the project (i.e. tooling)
37
+
];
32
38
33
-
buildInputsToUpstream = with pkgs; [
34
-
# If there are any buildInputs that are not in nixpkgs, add them here
35
-
# buildInputs are any packages that are needed at runtime (i.e. dependencies)
36
-
];
39
+
buildInputsToUpstream = with pkgs; [
40
+
# If there are any buildInputs that are not in nixpkgs, add them here
41
+
# buildInputs are any packages that are needed at runtime (i.e. dependencies)
42
+
];
37
43
38
-
package = pkgs.monado.overrideAttrs (oldAttrs: {
39
-
src = ./.;
44
+
package = pkgs.monado.overrideAttrs (oldAttrs: {
45
+
src = ./.;
46
+
47
+
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ nativeBuildInputsToUpstream;
48
+
buildInputs = oldAttrs.buildInputs ++ buildInputsToUpstream;
49
+
cmakeFlags = lib.remove "-DXRT_HAVE_STEAM:BOOL=TRUE" oldAttrs.cmakeFlags;
40
50
41
-
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ nativeBuildInputsToUpstream ++ devTools;
42
-
buildInputs = oldAttrs.buildInputs ++ buildInputsToUpstream;
51
+
patches = [ ];
52
+
});
53
+
in
54
+
{
55
+
packages.default = package;
56
+
devShells.default = package.overrideAttrs (oldAttrs: {
57
+
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ devTools;
58
+
});
43
59
44
-
patches = [];
45
-
});
46
-
in {
47
-
packages.default = package;
48
-
devShells.default = package;
49
-
}
50
-
);
60
+
formatter = pkgs.nixfmt-rfc-style;
61
+
};
62
+
};
51
63
}