UPJDSNND26COADIWXJI6MPOHQ6REMYL76EWTY6PHKHORRLEENVWQC
../04-cmake-and-cross/wttr-delft.nix
# This file looks very similar to what official packages in nixpkgs look like
{ stdenv
, cmake
, pkgconfig
, curl
}:
stdenv.mkDerivation rec {
name = "wttr-delft";
src = builtins.path { path = ../src; name = name; };
# Build-time dependencies
# Since we include CMake, Nix will automatically do all the right things:
# We don't need a custom 'buildPhase' or 'installPhase' anymore.
nativeBuildInputs = [ cmake pkgconfig ];
# Dependencies
buildInputs = [ curl.dev ];
# Strict separation of
# nativeBuildInputs (needed at build time only) and
# buildInputs (needed at runtime as well)
strictDeps = true;
}
../03-nix-container/podman-setup-script.nix
{ pkgs }:
let
registriesConf = pkgs.writeText "registries.conf" ''
[registries.search]
registries = ['docker.io']
[registries.block]
registries = []
'';
storageConf = pkgs.writeText "storage.conf" ''
[storage]
driver = "overlay"
# rootless_storage_path="$XDG_DATA_HOME/containers/storage"
'';
in pkgs.writeShellScript "podman-setup" ''
# Dont overwrite customised configuration
if ! test -f ~/.config/containers/policy.json; then
>&2 echo "Installing missing ~/.config/containers/policy.json"
install -Dm644 ${pkgs.skopeo.src}/default-policy.json ~/.config/containers/policy.json
fi
if ! test -f ~/.config/containers/registries.conf; then
>&2 echo "Installing missing ~/.config/containers/registries.conf"
install -Dm644 ${registriesConf} ~/.config/containers/registries.conf
fi
if ! test -f ~/.config/containers/storage.conf; then
>&2 echo "Installing missing ~/.config/containers/storage.conf"
install -Dm644 ${storageConf} ~/.config/containers/storage.conf
fi
''
../04-cmake-and-cross/flake.lock
{
"nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1690062721,
"narHash": "sha256-plfgmeiWUgCENRIdZ08rKTwt6G+1Imt9HqcbNIDusko=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1d56444d15859eb2e1c929c375a019616af2b59f",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"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",
"version": 7
}