From 502e0c6185fa67652b1ef4b2683e285fb003432e Mon Sep 17 00:00:00 2001 From: Johannes Hendrik Gerard van der Weide Date: Sun, 26 Nov 2023 20:53:52 +0100 Subject: [PATCH] Failed attempt (keeping in the git history incase I want to try again at some point) at adding cross compilation using cross (and thus podman which needed allot of stuff) --- flake.nix | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 2377ae5..02aebdc 100644 --- a/flake.nix +++ b/flake.nix @@ -39,7 +39,31 @@ { # Development environment output devShells = forAllSystems ({ pkgs }: { - default = pkgs.mkShell { + default = let + podmanSetupScript = let + registriesConf = pkgs.writeText "registries.conf" '' + [registries.search] + registries = ['docker.io'] + [registries.block] + registries = [] + ''; + in pkgs.writeScript "podman-setup" '' + #!${pkgs.runtimeShell} + # Dont overwrite customised configuration + if ! test -f ~/.config/containers/policy.json; then + install -Dm555 ${pkgs.skopeo.src}/default-policy.json ~/.config/containers/policy.json + fi + if ! test -f ~/.config/containers/registries.conf; then + install -Dm555 ${registriesConf} ~/.config/containers/registries.conf + fi + ''; + + # Provides a fake "docker" binary mapping to podman + dockerCompat = pkgs.runCommandNoCC "docker-podman-compat" {} '' + mkdir -p $out/bin + ln -s ${pkgs.podman}/bin/podman $out/bin/docker + ''; + in pkgs.mkShell { # The Nix packages provided in the environment packages = (with pkgs; [ # Fluff @@ -66,15 +90,22 @@ # If on wayland libxkbcommon wayland + # Cross compilation + cargo-cross + podman # needed by cargo-cross # Rust + rustup rustToolchain ]) ++ pkgs.lib.optionals pkgs.stdenv.isDarwin (with pkgs; [ libiconv ]); shellHook = '' + # Required export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${pkgs.lib.makeLibraryPath [ pkgs.alsaLib pkgs.udev pkgs.vulkan-loader ]}" + ${podmanSetupScript} + # Aliases and other fluff/ease of use alias runIntel="nixVulkanIntel cargo run" alias runMommyIntel="nixVulkanIntel cargo mommy run" onefetch