summaryrefslogtreecommitdiff
path: root/nix
Commit message (Collapse)AuthorAge
* Exclude already built sources for static buildSascha Grunert2021-11-09
| | | | | | | | | We now do not copy the `bin` directory to the target nix sources to avoid skipping the build because "everything is up to date". Fixes https://github.com/containers/podman/issues/12198 Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
* rootlessport: reduce memory usage of the processPaul Holzinger2021-10-12
| | | | | | | | | | | | | | | | | | | | | | Don't use reexec for the rootlessport process, instead make it a separate binary to reduce the memory usage. The problem with reexec is that it will import all packages that podman uses and therefore loads a lot of stuff into the heap. The rootlessport process however only needs the rootlesskit library. The memory usage is a concern since the rootlessport process will spawn two process per container which has ports forwarded. The processes stay until the container dies. On my laptop the current reexec version uses 47800 KB RSS. The new separate binary only uses 4540 KB RSS. This is more than a 90% improvement. The Makefile has been updated to compile the new binary and install it to the libexec directory. Fixes #10790 [NO TESTS NEEDED] Signed-off-by: Paul Holzinger <pholzing@redhat.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-07-14
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-06-10
| | | | | | | | - Bugfix `make nixpkgs` which pin with branch `nixos-21.05` - Code lint with `nixpkgs-fmt` - Code sync between x86\_64 and aarch64 Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-05-12
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-04-14
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* [NO TESTS NEEDED] Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-04-06
| | | | | | | | - Bugfix `make nixpkgs` which pin with branch `nixos-20.09` - Code lint with `nixpkgs-fmt` - Code sync between x86\_64 and aarch64 Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-03-07
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2021-02-03
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Cirrus: Build static podman-remoteChris Evich2021-01-28
| | | | | | | | | | | | | | | Prior to this commit, the "Static Build" task only produced a `bin/podman`. Update this to also include a `bin/podman-remote` binary. Update the pr-should-include-tests checker to ignore the `nix` directory, which isn't applicable. Lastly, restore the static build task to 'required' for CI success. Leaving the comment inplace in case it needs to be bypassed in the future on short notice. Signed-off-by: Chris Evich <cevich@redhat.com>
* Fix static build cache by using cachixSascha Grunert2021-01-27
| | | | | | | | | | | | | | | | | | | | It looks like we always hit the caching issue in Cirrus CI described within #8313. A solution around that is to use cachix, which has been pre-populated from my local machine. To push all (runtime and build) dependencies, we can leverage a pre-populated store by: ``` > nix-store -qR --include-outputs $(nix-instantiate nix/default.nix) | cachix push podman ``` The cache can be re-used by everybody to rapidly build static Podman binaries: https://app.cachix.org/cache/podman [NO TESTS NEEDED] Signed-off-by: Sascha Grunert <mail@saschagrunert.de>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-12-29
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-12-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR introduce 3 changes: - Upgrade Nix stable channel from 20.03 to 20.09. NixOS 20.09 released at 2020-10-27, see <https://nixos.org/manual/nixos/stable/release-notes.html#sec-release-20.09> for more information. - Replace `git` with `gitMinimal`. All 6 projects (i.e. crun/conmon/skopeo/buildah/podman/cri-o) are having `git` as dependency for failsafe during bootstrap. BTW <https://github.com/NixOS/nixpkgs/pull/104896> replace `asciidoc` with `asciidoctor` so trigger the dependency chain to `glib` and so failed (see below). Switching to `gitMinimal` skip this dependency chain to `glib`, which also speed up overall build process. - Adding `-pthread` for `glib` `conmon` couldn't skip the error by replacing `git` with `gitMinimal` since it do depend on `glib`. Since `glib` trigger error message "undefined reference to 'pthread\_create'", therefore adding `pthread` to `CFLAGS` could solve the problem. Also see: - <https://github.com/containers/crun/pull/550> - <https://github.com/containers/conmon/pull/218> - <https://github.com/containers/skopeo/pull/1120> - <https://github.com/containers/buildah/pull/2831> - <https://github.com/containers/podman/pull/8526> - <https://github.com/cri-o/cri-o/pull/4395> Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-11-05
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Use osusergo build tag for static buildSascha Grunert2020-11-02
| | | | | | | We now use the `osusergo` build tag to not use the glibc functions which occur in the warnings but them from golang the os/user package. Signed-off-by: Sascha Grunert <sgrunert@suse.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-10-08
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-09-18
| | | | | | Also backport changes from https://github.com/cri-o/cri-o/pull/4065/files#diff-1d37e48f9ceff6d8030570cd36286a61R189-R197 Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-08-22
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
* Update nix pin with `make nixpkgs`Wong Hoi Sing Edison2020-08-11
| | | | | | | Also sync nix `packageOverrides` across skopeo/buildah/podman/cri-o for utilizing local build cache. Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
* Speedup static build by utilizing CI cache on `/nix` folderWong Hoi Sing Edison2020-08-03
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
* Cleanup nix derivation for static buildsWong Hoi Sing Edison2020-07-18
| | | | Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
* Add netgo build tag to static binarySascha Grunert2020-05-12
| | | | | | | This allows us to system independently resolve DNS requests in static Podman binaries. Signed-off-by: Sascha Grunert <sgrunert@suse.com>
* Add podman static buildSascha Grunert2020-05-11
We’re now able to build a static podman binary based on a custom nix derivation. This is integrated in cirrus as well, whereas a later target would be to provide a self-contained static binary bundle which can be installed on any Linux x64-bit system. Fixes: https://github.com/containers/libpod/issues/1399 Signed-off-by: Sascha Grunert <sgrunert@suse.com>