77 Commits

Author SHA1 Message Date
Sven-Hendrik Haase
4fbd8d2d7d
Don't use xz -9 - it takes too long to no benefit 2020-10-18 03:24:15 +02:00
Sven-Hendrik Haase
dcf7c44d12
Ignore Dockerfile.base and Dockerfile.base-devel
We don't be checking these in as they are generated by the build.
2020-10-14 01:16:28 +02:00
Sven-Hendrik Haase
72d1d5eb2d
Observe security concept 2020-10-14 01:15:22 +02:00
Sven-Hendrik Haase
9f60536bd5 Merge branch 'verify-rootfs' into 'add-base-devel-tags'
Generate and verify checksum for the rootfs

See merge request archlinux/archlinux-docker!40
2020-10-13 22:44:52 +00:00
Kristian Klausen
9b52d5674a Generate and verify checksum for the rootfs 2020-10-13 16:11:15 +02:00
Sven-Hendrik Haase
d51a887efb
Add base-devel tag 2020-08-31 18:20:52 +02:00
hashworks
a0d65ca9a9 Merge branch 'no-root-build' into 'master'
Merge no-root-build branch into master

Closes #22

See merge request archlinux/archlinux-docker!38
2020-08-28 23:21:02 +00:00
Justin Kromlinger
6448568daa
Merge remote-tracking branch 'origin/master' into no-root-build 2020-08-12 09:41:41 +02:00
Santiago Torres-Arias
79e8df9a00 Merge branch 'gitlabCI' into 'no-root-build'
Add GitLabCI definition

See merge request archlinux/archlinux-docker!37
2020-07-30 16:39:11 +00:00
Justin Kromlinger
59e29b7a9b
Switch to compress-rootfs in CI since xz is now using --threads 2020-07-30 18:05:57 +02:00
Justin Kromlinger
0fa3f77f16
Add GitLabCI definition
Additionally drops the GitHub and Travis CI definitions since they are no longer
needed.
2020-07-30 18:02:58 +02:00
hashworks
005e032e98 Merge branch 'github/fork/TheLinuxNinja/dockerfile-typo' into 'no-root-build'
a handful of fixes and improvements found while testing this branch

See merge request archlinux/archlinux-docker!16
2020-07-30 15:58:32 +00:00
Justin Kromlinger
cbaf17832e
Add the ability to adjust the thread count of xz, drop -e
`xz --extreme` would only save us about 1MB but take ~50% longer.
2020-07-30 17:55:36 +02:00
Justin Kromlinger
026d2788df
Add fakeroot as a build dependency 2020-07-30 17:55:18 +02:00
Justin Kromlinger
fa1ed71419
Merge remote-tracking branch 'origin/no-root-build' into github/fork/TheLinuxNinja/dockerfile-typo 2020-07-30 17:47:49 +02:00
Santiago Torres
9bd11c95c2
Dockerfile: manually symlink os-release 2020-06-08 10:54:44 -04:00
Santiago Torres
8f683e3cdc
packages: +likely necessary pkgs from base group 2019-11-26 17:03:20 -05:00
Santiago Torres
9091d1ebb9
Makefile: add archlinux.tar target, force xz 2019-11-26 17:02:56 -05:00
Santiago Torres
4ebfbe5883
packages: add base group 2019-11-26 16:02:21 -05:00
Eli Schwartz
2fc6d9f3ee
pacstrap: usie NoExtract to prune dead weight
A docker container does not need tons of locales in order to do its job,
nor does it need extensive (or any) documentation.

With this change, a bare pacstrapped directory drops from 500MB to 390MB
2019-11-25 14:42:44 -05:00
Santiago Torres
b20da68230
Merge pull request #13 from eli-schwartz/noextract
pacstrap: set up the image using NoExtract rules to prune dead weight
2019-11-25 14:33:14 -05:00
Santiago Torres
e5ee97ef26
github-actions: add rootfs target to make
This is relevant for the no-root-build.
2019-10-23 21:04:36 -04:00
Christian Rebischke
ed424bc02f
add Github Actions
Signed-off-by: Christian Rebischke <chris@nullday.de>
2019-10-23 21:03:48 -04:00
Santiago Torres
368a504fa3
Makefile: use fakeroot for tar-ing rootfs
When tar-ing the rootfs, the permissions preserved are from the worker
process. This is not the intended behavior, as we want to preserve the
permissions of the root user to most of the files. Use fakeroot during
the tar process to automagically map the uid of the user to that of
root's.

Fixes #22

Signed-off-by: Santiago Torres <santiago@archlinux.org>
2019-10-23 20:24:42 -04:00
Sven-Hendrik Haase
95a5091f02
Merge pull request #20 from shibumi/shibumi/use-github-actions
add Github Actions
2019-10-12 18:02:57 +02:00
Christian Rebischke
82340e87fa
add Github Actions
Signed-off-by: Christian Rebischke <chris@nullday.de>
2019-10-12 15:29:12 +02:00
Santiago Torres
a2b08c5fc1
Makefile:compress:use the existing archlinux.tar
The requirements for the compress rule used to rebuild the rootfs
regardless. Update the requirement to use the existing archlinux archive
for compression
2019-10-06 12:32:39 -04:00
Santiago Torres
19fb8aeb46
Makefile: add fix for CVE-2019-5021
The previous instances of the docker image allowed for passwordless root
login. Update the default shadow setting so the root account to disallow
this.
2019-10-06 12:31:21 -04:00
Santiago Torres
3a7de54a80
Merge pull request #15 from TheLinuxNinja/fix-hook
fix pacman hook to not delete the /var/cache/pacman/pkg directory - …
2019-08-10 15:41:01 -04:00
Linux Ninja
eaa38cb44e add xz params to tighten archive size (saves 5M currently), use all available CPU cores, overwrite existing file
Signed-off-by: Linux Ninja <linuxninja@bryangay.com>
2019-08-10 03:16:54 -04:00
Linux Ninja
b2e07647e9 add fakechroot dependency in README.md, prevent 'already exists' error when running ln -s by adding -f in Makefile, combine two layers of Dockerfile and fix typo of pugring.gpg~
Signed-off-by: Linux Ninja <linuxninja@bryangay.com>
2019-08-10 02:57:40 -04:00
Linux Ninja
5d1c81df79 fix pacman hook to not delete the /var/cache/pacman/pkg directory - Fixes https://bugs.archlinux.org/task/63311
Signed-off-by: Linux Ninja <linuxninja@bryangay.com>
2019-08-10 02:19:09 -04:00
Santiago Torres
b274212ca5
Merge branch 'master' into no-root-build 2019-06-25 19:47:49 -04:00
Santiago Torres
8ec2549c3e
Dockerfile,Makefile: use a compressed tarball
When building the image for publishing in the infrastructure, we need a
rootfs that's <100MB, due to github filesize restrictions (this, plus
the fact that there's no git-lfs support for building in the docker
library toolchain). Compress the rootfs image so that it can be
hosted on github.
2019-06-25 19:21:44 -04:00
Eli Schwartz
b6727d838f
pacstrap: set up the image using NoExtract rules to prune dead weight
A docker container does not need tons of locales in order to do its job,
nor does it need extensive (or any) documentation.

With this change, a bare pacstrapped directory drops from 500MB to 390MB
2019-02-28 15:25:30 -05:00
Santiago Torres
cb1c8b8b37
Merge branch 'master' into no-root-build 2019-02-22 18:08:41 -05:00
putty182
e612e65be1 Add docker as a build dependency 2019-02-16 11:22:44 +01:00
Santiago Torres
c1f7a83627
Merge pull request #10 from SantiagoTorres/add-license
LICENSE: add license
2019-02-11 12:35:40 -05:00
Santiago Torres
a607a865fd
LICENSE: add license 2018-11-11 14:31:59 -05:00
Pierre Schmitz
c92bb1c858 GH-9: Prefer rackspace over leaseweb 2018-11-09 20:50:48 +01:00
Pierre Schmitz
2c01a091eb GH-9: Add rackspace mirror
Add secondary mirror that itself redirects to various locations:
https://www.archlinux.org/mirrors/rackspace.com/
2018-11-09 20:41:27 +01:00
Santiago Torres
ebcde63f6c
FIX:Dockerfile/Makefile: fix ci-test requirements
The old Dockerfile and Makefile pair didn't meet the requirements of the
ci-test. Namely, the (very sensible )requirement of not shipping a
private key was missing, the sysusers hook wasn't executed properly and
the /var/cache/pacman/pkg folder was remoed (and it's specified in the
pacman MTREE package)
v1.0
2018-06-04 14:04:27 -04:00
Santiago Torres
f65025bafe
FIX:fix docker build commands
I commited the wrong Dockerfile.
2018-06-04 13:17:30 -04:00
Santiago Torres
602cda864e
FIX: add fakeroot and fakechroot deps for ci-test 2018-06-04 12:43:19 -04:00
Christian Rebischke
b040116481
removed fakechroot again 2018-06-04 17:25:51 +02:00
Christian Rebischke
5e9c8ffad0
added fakechroot as dependency for ci-test 2018-06-04 17:21:38 +02:00
Santiago Torres
6f95231859
FIX:Makefile: add PWD environment variable
The previous makefile assumed that PWD was populated. This doesn't
happen in certain cases (e.g., when running as a systemd unit). Make
sure we have the PWD variable set before running any target.
2018-06-03 21:38:45 -04:00
Santiago Torres
0afc2ce276
ENH: update root-less build
This commit adds:

- Systemd sysusers hook is ran on the dockerfile
- The dockerfile also populates the archlinux keyring
- Remove the libalpm hooks as they are uneccessary now
- Moved the package cleanup before the tar step on the makefile
2018-04-17 20:05:57 -04:00
Santiago Torres
6b583c70e7
WIP: Makefile: allow for rootless build 2018-03-27 00:48:01 -04:00
Santiago Torres
0535b255ae
ENH: makefile/Dockerfile: allow for non-root build
The old makefile required commands to be run as a superuser, which
may become problematic when deploying on the archlinux infrastructure.
Use fakeroot and regular pacman commands to allow for to bootstrap a
rootfs.
2018-03-23 20:55:32 -04:00