Commit Graph

45 Commits

Author SHA1 Message Date
6fc9d2ebff
README.org: Add section about local image usage; cleanup 2024-01-04 21:59:33 -05:00
2bc5f9229c
Makefile: Do not mount /etc/ssl when running 2024-01-04 21:41:32 -05:00
1d3d3b47b3
Dockerfile: Adjust file permissions; add comments; tidy formatting 2024-01-01 23:18:40 -05:00
6a1565e246
CI: Clean up tests 2024-01-01 22:59:04 -05:00
ee4497528b
manifest-dev.scm: Add gzip to development manifest
Its used in 'Makefile' as part of the tar.gz creation.
2024-01-01 22:58:31 -05:00
6272f96bd1
README.org: Adjust comments on ssl 2024-01-01 22:57:35 -05:00
a46ace63db
CI: Test (remove no-verify; use /guix-builder/ ca-cert path)
I expect this to fail.
2024-01-01 21:35:01 -05:00
1d3e4dfc41
CI: Test (no-verify - just to see if it completes) 2024-01-01 21:31:07 -05:00
66fc529c76
CI: Test 2024-01-01 21:10:05 -05:00
978349daf7
CI: Test 2024-01-01 21:03:12 -05:00
1270853de2
CI: test 2024-01-01 20:43:32 -05:00
3627870909
CI: Test 2024-01-01 20:41:46 -05:00
f646927e9a
Makefile: Add deploy target, which pushes the resulting OCI image 2024-01-01 20:37:17 -05:00
8176119556
Dockerfile: Use CMD instead of ENTRYPOINT
This corrects ci behaviour, allowing this image to now be used like this:

docker run --rm -it guix-builder:latest <cmd>

Where <cmd> is any executable on the containers PATH.
2024-01-01 20:35:12 -05:00
735222139a
CI: Test - set GIT_SSL_CAINFO 2024-01-01 16:37:51 -05:00
10fee2e05a
CI: Test - set CURL_CA_BUNDLE 2024-01-01 16:36:06 -05:00
851930e9f8
CI: Test - reduce log output 2024-01-01 16:27:20 -05:00
ac2e91f81e
CI: Test 2024-01-01 16:26:36 -05:00
25b2676f57
CI: Test 2024-01-01 16:22:48 -05:00
3234cdc55d
CI: Test 2024-01-01 16:12:37 -05:00
c0fedbe2a4
CI: Test - turn on verbose debugging in a simple git clone 2024-01-01 15:58:57 -05:00
0907af701d
CI: Test 2024-01-01 15:56:38 -05:00
847b73cebd
CI: Test 2024-01-01 15:52:46 -05:00
0c4f57224a
CI: Test 2024-01-01 15:50:29 -05:00
09df8f0166
CI: Remove test git checkout
This will now run on a corrected guix-builder container I manually put in place on the runner.
2024-01-01 15:35:17 -05:00
60f52947ec
README.org: Update blurb on ssl certificates 2024-01-01 15:13:19 -05:00
c9b3062f11
Makefile: Use ssl certificates from within the container by default
When a guix-builder container runs without the store attached, it should still be able to use
ssl certificates. This was not possible prior to this change without adjusting the
SSL_CERT_FILE and SSL_CERT_DIR environment variables to be prefixed with '/guix-builder'.
Preferably and as implemented in this commit, we can keep standard values of these
environment variables and provide a link from /etc/ssl -> /guix-builder/etc/ssl where the
certificate files reference /guix-builder/gnu/store instead of /gnu/store.

This allows correct functioning in either case of the store being mounted or not. Its
important to note that if a users mounts their guix hosts certificates, they must also mount
its store as the certificate files in /etc/ssl/certs will be links to files in the store.
2024-01-01 15:08:20 -05:00
e270484870
CI: Test plain old git checkout 2023-12-31 22:47:15 -05:00
a7a2b42cd0
README.org: Add a note about ssl certificates 2023-12-31 15:01:45 -05:00
8359f98fe0
Dockerfile: Allow ssl to be used 2023-12-31 15:01:01 -05:00
a90118aebe
CI: Initial (incomplete) implementation 2023-12-31 14:45:57 -05:00
ae21f99ddb
Makefile: move required steps prior to docker build to separate target 2023-12-31 14:44:55 -05:00
73cc450f6f
channels.scm: Update guix channel 2023-12-31 14:34:06 -05:00
a82b4c2efa
Makefile: Add size PHONY target 2023-12-31 14:34:03 -05:00
692577c025
Dockerfile: Set the env var GUIX_LOCALES to the now installed locales
* Makefile: Provide a symlink for the profiles lib/locale
2023-12-31 14:33:12 -05:00
c32f86bc79
manifest.scm: Add utf8 glibc-locals for US and CA 2023-12-31 14:15:34 -05:00
a53e0fd61b
manifest.scm: Reorder package listing (noop change) 2023-12-31 14:15:15 -05:00
86f051167b
Correct hidden dependency on host /gnu/store
Unbeknownst to me, the docker image produced by previous versions of guix-builder actually
had a hidden dependency on the hosts /gnu/store. I have not been able to fully characterize
it, but the following proves it to be true.

This fails with an error 139, segfault:
  docker run -it guix-builder:latest

However it succeeds when provided the hosts guix store:
  docker run -it -v /gnu/store:/gnu/store:ro guix-builder:latest

By using GUIX_EXECUTION_ENGINE=proot (which is implied by the '-RR' option to 'guix pack'),
we avoid the segfaults and hidden dependency on the hosts /gnu/store. Sadly using proot will
have performance impacts, but I'm not sure yet to what extent this will impact my usecase.
2023-12-29 21:32:46 -05:00
f2786e17ae
Place /etc/passwd file inside the container for root user
This is needed because ssh requires the user that runs it to exist in /etc/passwd.
2023-12-29 12:03:48 -05:00
6c8faca7a4
manifest.scm: Add openssh 2023-12-29 11:30:42 -05:00
ba31548ad5
CI: Cleanup Dockerfile and Makefile (following 5764deb) 2023-12-29 11:30:17 -05:00
d09abac1d3
CI: trigger workflow by adding node and git to manifest.scm 2023-12-28 22:03:15 -05:00
5764deb836
ci: Add initial (but testing) ci workflow 2023-12-28 22:01:18 -05:00
d1b46ce129
Ensure /bin->/guix-builder/bin exists within the container 2023-12-28 20:55:50 -05:00
75361f9a8a
Initial commit 2023-07-15 16:37:59 -04:00