let pkgsSrc = fetchTarball { # As of 2022-07-19 url = "https://github.com/NixOS/nixpkgs/archive/d2db10786f27619d5519b12b03fb10dc8ca95e59.tar.gz"; sha256 = "0s9gigs3ylnq5b94rfcmxvrmmr3kzhs497gksajf638d5bv7zcl5"; }; pkgs = import pkgsSrc { overlays = [ (self: super: { gomod = super.callPackage ./nix/builder { }; }) ]; }; in rec { bin = pkgs.gomod.buildGoApplication { pname = "bottin-bin"; version = "0.1.0"; src = builtins.filterSource (path: type: (builtins.match ".*/test/.*\\.(go|sum|mod)" path) == null) ./.; modules = ./gomod2nix.toml; CGO_ENABLED=0; meta = with pkgs.lib; { description = "Interface web pour gérer le LDAP: changer son mot de passe, ses infos de profil, inviter des gens, administration"; homepage = "https://git.deuxfleurs.fr/Deuxfleurs/guichet"; license = licenses.gpl3Plus; platforms = platforms.linux; }; }; pkg = pkgs.stdenv.mkDerivation { pname = "bottin"; version = "0.1.0"; unpackPhase = "true"; installPhase = '' mkdir -p $out/ cp ${bin}/bin/bottin $out/bottin ''; }; docker = pkgs.dockerTools.buildImage { name = "dxflrs/bottin"; config = { Cmd = [ "${pkg}/bottin" ]; }; }; }