32 lines
953 B
Nix
32 lines
953 B
Nix
{ pkgs ? import <nixpkgs> {} }: 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 {
|
|
buildInputs = with pkgs; [
|
|
go
|
|
just
|
|
docker-compose
|
|
sqlite
|
|
];
|
|
}
|