You've already forked fedora-bootc
Split niri and gnome builds using a matrix workflow, for now.
This commit is contained in:
35
Containerfile.gnome
Normal file
35
Containerfile.gnome
Normal file
@@ -0,0 +1,35 @@
|
||||
ARG FEDORA_BASE=43
|
||||
|
||||
# Allow build scripts to be referenced without being copied into the final image
|
||||
FROM scratch AS ctx
|
||||
COPY build_files /
|
||||
COPY /sys_files /sys_files
|
||||
COPY cosign.pub /cosign.pub
|
||||
|
||||
# Base Image
|
||||
FROM quay.io/fedora-ostree-desktops/silverblue:$FEDORA_BASE
|
||||
|
||||
### [IM]MUTABLE /opt
|
||||
## Some bootable images, like Fedora, have /opt symlinked to /var/opt, in order to
|
||||
## make it mutable/writable for users. However, some packages write files to this directory,
|
||||
## thus its contents might be wiped out when bootc deploys an image, making it troublesome for
|
||||
## some packages. Eg, google-chrome, docker-desktop.
|
||||
##
|
||||
## Uncomment the following line if one desires to make /opt immutable and be able to be used
|
||||
## by the package manager.
|
||||
|
||||
RUN rm /opt && mkdir /opt
|
||||
|
||||
### MODIFICATIONS
|
||||
## make modifications desired in your image and install packages by modifying the build.sh script
|
||||
## the following RUN directive does all the things required to run "build.sh" as recommended.
|
||||
|
||||
RUN --mount=type=bind,from=ctx,source=/,target=/ctx \
|
||||
--mount=type=cache,dst=/var/cache \
|
||||
--mount=type=cache,dst=/var/log \
|
||||
--mount=type=tmpfs,dst=/tmp \
|
||||
/ctx/gnome/build.sh && /ctx/gnome/cleanup.sh
|
||||
|
||||
### LINTING
|
||||
## Verify final image and contents are correct.
|
||||
RUN bootc container lint
|
||||
Reference in New Issue
Block a user