Compare commits
5 commits
4e0045a4da
...
416f3d2bf5
Author | SHA1 | Date | |
---|---|---|---|
416f3d2bf5 | |||
5ff4e1b1b8 | |||
dbf2bd18a7 | |||
6318693191 | |||
05fa716ed5 |
48
flake.lock
48
flake.lock
|
@ -310,11 +310,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728685293,
|
||||
"narHash": "sha256-1WowL96pksT/XCi+ZXHgqiQ9NiU5oxWuNIQYWqOoEYc=",
|
||||
"lastModified": 1728791962,
|
||||
"narHash": "sha256-nr5QiXwQcZmf6/auC1UpX8iAtINMtdi2mH+OkqJQVmU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "2b13611eaed8326789f76f70d21d06fbb14e3e47",
|
||||
"rev": "64c6325b28ebd708653dd41d88f306023f296184",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -337,11 +337,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728632221,
|
||||
"narHash": "sha256-LnBVdKPsreziZkYbeFqiSYP7tPFlprt9ej2QGd2aNlw=",
|
||||
"lastModified": 1728833717,
|
||||
"narHash": "sha256-GkS9SnKRb/PrdcqptLPNxweDdf3Zx2Lk5szEt07P4mE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "lanzaboote",
|
||||
"rev": "3326a0b3974fc04d991990f6497fe1a7d9892439",
|
||||
"rev": "6634ab618862f1d041c286567a58c554e6136068",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -398,11 +398,11 @@
|
|||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728701596,
|
||||
"narHash": "sha256-f9+AgUcbJu86nm9ud6YxrvMy9VVXcHitc4FqePjE+3M=",
|
||||
"lastModified": 1728829629,
|
||||
"narHash": "sha256-y3fWim/0mDCSLjvqkmylN5mmVOfvwJG9Mt+Z8qIn44U=",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"rev": "071151385afd024ce943205a59c6fadc6a9187ee",
|
||||
"rev": "0a50b261ac5b6cdcc8eb7921a4f022c92b29d1ab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -431,11 +431,11 @@
|
|||
"niri-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1728546258,
|
||||
"narHash": "sha256-iE6O7EBokq/HjjwouHfd7EGmED7TUkB9icSbUfPHWSo=",
|
||||
"lastModified": 1728822376,
|
||||
"narHash": "sha256-HQc10OfFNie5YocsrJQCN6BOi+CZ0uuGGHGbJFXjgUI=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "859c0be0e5fa5ccf3c59f0ae1764551a930656fd",
|
||||
"rev": "d7156df8428cb9e6665a212e66c74bdb25842be8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -466,11 +466,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1728269138,
|
||||
"narHash": "sha256-oKxDImsOvgUZMY4NwXVyUc/c1HiU2qInX+b5BU0yXls=",
|
||||
"lastModified": 1728729581,
|
||||
"narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "ecfcd787f373f43307d764762e139a7cdeb9c22b",
|
||||
"rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -525,11 +525,11 @@
|
|||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1728627514,
|
||||
"narHash": "sha256-r+SF9AnHrTg+bk6YszoKfV9lgyw+yaFUQe0dOjI0Z2o=",
|
||||
"lastModified": 1728740863,
|
||||
"narHash": "sha256-u+rxA79a0lyhG+u+oPBRtTDtzz8kvkc9a6SWSt9ekVc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c505ebf777526041d792a49d5f6dd4095ea391a7",
|
||||
"rev": "a3f9ad65a0bf298ed5847629a57808b97e6e8077",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -557,11 +557,11 @@
|
|||
},
|
||||
"nur": {
|
||||
"locked": {
|
||||
"lastModified": 1728719926,
|
||||
"narHash": "sha256-JLucwu9WRQB6z7043wvHyss5/wr4xVZjyJmlb550CNQ=",
|
||||
"lastModified": 1728841501,
|
||||
"narHash": "sha256-AXjgkcMoOgckYrSVL71+PSVybvvdNREPvhPDvNws+2M=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "b1d7aba2c87bbeabc2ca0ca25f3949c6a66a3d1e",
|
||||
"rev": "3500d4bc8ccba8c873743e7f8973af51ac1b4aab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -672,11 +672,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728700003,
|
||||
"narHash": "sha256-Ox1pvEHxLK6lAdaKQW21Zvk65SPDag+cD8YA444R/og=",
|
||||
"lastModified": 1728786660,
|
||||
"narHash": "sha256-qY+1e0o6oV5ySlErhj/dsWsPLWjrMKzq4QI7a1t9/Ps=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "fc1e58ebabe0cef4442eedea07556ff0c9eafcfe",
|
||||
"rev": "174a8d9cec9e2c23877a7b887c52b68ef0421d8b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -95,7 +95,7 @@
|
|||
overlays = load ./overlay "overlay";
|
||||
legacyPackages = eachSystem (system: platform:
|
||||
import nixpkgs {
|
||||
localSystem = builtins.currentSystem or platform;
|
||||
localSystem = builtins.currentSystem or system;
|
||||
crossSystem = platform;
|
||||
overlays = [ self.overlays.default ];
|
||||
config.allowUnsupportedSystem = true;
|
||||
|
@ -120,6 +120,13 @@
|
|||
targetHost = config.networking.fqdnOrHostName;
|
||||
targetUser = null;
|
||||
};
|
||||
|
||||
nixpkgs = let
|
||||
platform = self.lib.platforms.x86_64-linux;
|
||||
in {
|
||||
buildPlatform = builtins.currentSystem or platform.system;
|
||||
hostPlatform = platform;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -4,13 +4,22 @@ let inherit (nixpkgs) lib;
|
|||
in lib.mapAttrs (system: platform: lib.systems.elaborate platform) {
|
||||
"x86_64-linux" = {
|
||||
system = "x86_64-linux";
|
||||
config = "x86_64-unknown-linux-musl";
|
||||
useLLVM = true;
|
||||
linker = "lld";
|
||||
};
|
||||
|
||||
"aarch64-linux" = {
|
||||
system = "aarch64-linux";
|
||||
config = "aarch64-unknown-linux-musl";
|
||||
useLLVM = true;
|
||||
linker = "lld";
|
||||
};
|
||||
|
||||
"riscv64-linux" = {
|
||||
system = "riscv64-linux";
|
||||
config = "riscv64-unknown-linux-musl";
|
||||
useLLVM = true;
|
||||
linker = "lld";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
iosched
|
||||
kernel
|
||||
locale-en_EU
|
||||
musl
|
||||
network
|
||||
nix
|
||||
openssh
|
||||
|
|
7
nixos/module/musl.nix
Normal file
7
nixos/module/musl.nix
Normal file
|
@ -0,0 +1,7 @@
|
|||
{ ...}: { modulesPath, ... }: {
|
||||
disabledModules = [
|
||||
(modulesPath + "/config/ldso.nix")
|
||||
(modulesPath + "/programs/nix-ld.nix")
|
||||
(modulesPath + "/config/stub-ld.nix")
|
||||
];
|
||||
}
|
9
overlay/aarch.nix
Normal file
9
overlay/aarch.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{ nixpkgs, ... }: final: prev:
|
||||
let
|
||||
inherit (nixpkgs) lib;
|
||||
inherit (prev.stdenv) hostPlatform;
|
||||
in lib.optionalAttrs hostPlatform.isAarch ({
|
||||
umockdev = prev.umockdev.overrideAttrs {
|
||||
doCheck = false;
|
||||
};
|
||||
})
|
|
@ -10,4 +10,6 @@ nixpkgs.lib.composeManyExtensions [
|
|||
self.overlays.mimalloc
|
||||
self.overlays.modern-minimal
|
||||
self.overlays.fixes
|
||||
self.overlays.riscv
|
||||
self.overlays.aarch
|
||||
] final prev
|
||||
|
|
|
@ -1,8 +1,17 @@
|
|||
{ nixpkgs, ... }: final: prev:
|
||||
let
|
||||
inherit (nixpkgs.lib) optionalAttrs toList;
|
||||
inherit (nixpkgs) lib;
|
||||
inherit (lib) toList;
|
||||
inherit (prev.stdenv) hostPlatform;
|
||||
in {
|
||||
netbsd = prev.netbsd.overrideScope (final: prev: {
|
||||
compatIfNeeded = [ final.compat ];
|
||||
|
||||
compat = prev.compat.overrideAttrs (prevAttrs: {
|
||||
makeFlags = prevAttrs.makeFlags ++ [ "OBJCOPY=:" ];
|
||||
});
|
||||
});
|
||||
|
||||
numactl = prev.numactl.overrideAttrs (prevAttrs: {
|
||||
patches = prevAttrs.patches or [ ] ++ [
|
||||
(final.fetchpatch {
|
||||
|
@ -12,24 +21,16 @@ in {
|
|||
];
|
||||
});
|
||||
|
||||
redis = prev.redis.overrideAttrs ({
|
||||
doCheck = false;
|
||||
python3 = prev.python3.overrideAttrs (prevAttrs: {
|
||||
postFixup = prevAttrs.postFixup + ''
|
||||
pushd "$out/lib/${prevAttrs.passthru.libPrefix}"
|
||||
test -e "$sysconfigdataName" || ln -s _sysconfigdata__linux_.py "$sysconfigdataName.py"
|
||||
popd
|
||||
'';
|
||||
});
|
||||
|
||||
python312 = prev.python312.override {
|
||||
packageOverrides = final: prev: {
|
||||
pywebview = prev.pywebview.overrideAttrs ({
|
||||
doCheck = false;
|
||||
doInstallCheck = false;
|
||||
});
|
||||
} // optionalAttrs hostPlatform.isRiscV64 {
|
||||
psutil = prev.psutil.overrideAttrs (prevAttrs: {
|
||||
disabledTests = prevAttrs.disabledTests or [ ] ++ [
|
||||
"net_if_addrs"
|
||||
"net_if_stats"
|
||||
];
|
||||
});
|
||||
};
|
||||
redis = prev.redis.overrideAttrs {
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
sioyek = prev.sioyek.overrideAttrs (prevAttrs: {
|
||||
|
@ -39,33 +40,18 @@ in {
|
|||
};
|
||||
});
|
||||
|
||||
time = prev.time.overrideAttrs (prevAttrs: {
|
||||
env = prevAttrs.env or { } // {
|
||||
CFLAGS = toList prevAttrs.env.CFLAGS or [ ] ++ [
|
||||
"-Wno-error=implicit-function-declaration"
|
||||
] |> toString;
|
||||
};
|
||||
});
|
||||
|
||||
zeromq = prev.zeromq.overrideAttrs (prevAttrs: {
|
||||
postPatch = prevAttrs.postPatch or "" + ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail 'CACHELINE_SIZE EQUAL "undefined"' 'CACHELINE_SIZE STREQUAL "undefined"'
|
||||
'';
|
||||
});
|
||||
} // optionalAttrs hostPlatform.isRiscV64 ({
|
||||
boehmgc = prev.boehmgc.overrideAttrs (prevAttrs: {
|
||||
postPatch = prevAttrs.postPatch or "" + ''
|
||||
sed -E -i '/^TESTS \+= gctest/d' \
|
||||
tests/tests.am
|
||||
'';
|
||||
});
|
||||
|
||||
elfutils = prev.elfutils.overrideAttrs ({
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
libseccomp = prev.libseccomp.overrideAttrs ({
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
libuv = prev.libuv.overrideAttrs ({
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
xdg-utils = prev.xdg-utils.override {
|
||||
procmail = final.emptyDirectory;
|
||||
};
|
||||
})
|
||||
}
|
||||
|
|
44
overlay/riscv.nix
Normal file
44
overlay/riscv.nix
Normal file
|
@ -0,0 +1,44 @@
|
|||
{ nixpkgs, ... }: final: prev:
|
||||
let
|
||||
inherit (nixpkgs) lib;
|
||||
inherit (prev.stdenv) hostPlatform;
|
||||
in lib.optionalAttrs hostPlatform.isRiscV ({
|
||||
python312 = prev.python312.override {
|
||||
packageOverrides = final: prev: {
|
||||
psutil = prev.psutil.overrideAttrs (prevAttrs: {
|
||||
disabledTests = prevAttrs.disabledTests or [ ] ++ [
|
||||
"net_if_addrs"
|
||||
"net_if_stats"
|
||||
];
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
boehmgc = prev.boehmgc.overrideAttrs (prevAttrs: {
|
||||
postPatch = prevAttrs.postPatch or "" + ''
|
||||
sed -E -i '/^TESTS \+= gctest/d' \
|
||||
tests/tests.am
|
||||
'';
|
||||
});
|
||||
|
||||
elfutils = prev.elfutils.overrideAttrs {
|
||||
doCheck = false;
|
||||
doInstallCheck = false;
|
||||
};
|
||||
|
||||
libseccomp = prev.libseccomp.overrideAttrs {
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
libuv = prev.libuv.overrideAttrs {
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
umockdev = prev.umockdev.overrideAttrs {
|
||||
doCheck = false;
|
||||
};
|
||||
|
||||
xdg-utils = prev.xdg-utils.override {
|
||||
procmail = final.emptyDirectory;
|
||||
};
|
||||
})
|
Loading…
Reference in a new issue