Skip to content

Commit b48c8eb

Browse files
authored
Add some examples of exporting files from OCI container images as sysexts (#4)
* Add a `crane` sysext which exports `crane` from a multiarch OCI image * Bump minimum Forklift version * Add pkg+depl for a new ublue-dx-fonts sysext * Export the entire filetree of the sysext-dir-ublue-dx-fonts container image * Add a system extension for Neovim from Alpine Linux * Bump forklift in CI checks
1 parent decadca commit b48c8eb

File tree

10 files changed

+67
-3
lines changed

10 files changed

+67
-3
lines changed

.github/workflows/check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
strategy:
1717
fail-fast: false
1818
matrix:
19-
forklift-version: [0.7.2-alpha.0]
19+
forklift-version: [0.7.2-alpha.5]
2020
runs-on: ubuntu-latest
2121
defaults:
2222
run:
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ID=_any
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package:
2+
description: A systemd sysext providing crane, a tool for interacting with OCI container images and registries
3+
# Note: maintainers describes the maintainer(s) of the Forklift package, not the upstream software
4+
maintainers:
5+
- name: Ethan Li
6+
7+
license: Apache-2.0
8+
sources:
9+
- https://github.com/google/go-containerregistry
10+
11+
deployment:
12+
provides:
13+
file-exports:
14+
- description: systemd sysext, named "crane"
15+
source: extension
16+
target: extensions/crane
17+
- description: crane binary
18+
source-type: oci-image
19+
# Warning: we use the latest label only because docker.io/chainguard/crane doesn't provide
20+
# any other labels; in real-world use, you should provide a label which doesn't change, for
21+
# reproducibility (and also because Forklift's download cache never updates downloads of
22+
# images for any given label)
23+
url: cgr.dev/chainguard/crane:latest
24+
source: usr/bin/crane
25+
target: extensions/crane/usr/bin/crane

deployments/crane.deploy.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
package: /deployments/crane-systemd-extension
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package:
2+
description: A systemd sysext providing a musl-linked Neovim from Alpine Linux
3+
# Note: maintainers describes the maintainer(s) of the Forklift package, not the upstream software
4+
maintainers:
5+
- name: Ethan Li
6+
7+
license: (Apache-2.0 AND Vim)
8+
sources:
9+
- https://github.com/neovim/neovim
10+
11+
deployment:
12+
provides:
13+
file-exports:
14+
- description: systemd sysext
15+
source-type: oci-image
16+
url: ghcr.io/ethanjli/sysext-dir-neovim:sha-b29b12d
17+
source: /
18+
target: extensions/neovim

deployments/neovim.deploy.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
package: /deployments/neovim-systemd-extension
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package:
2+
description: A systemd sysext providing various fonts curated for bluefin-dx/aurora-dx
3+
# Note: maintainers describes the maintainer(s) of the Forklift package, not the upstream software
4+
maintainers:
5+
- name: Ethan Li
6+
7+
# Note: I'm too lazy to go through all the font packages to determine their licenses and sources
8+
# for the package declaration; this is just a demo anyways!
9+
10+
deployment:
11+
provides:
12+
file-exports:
13+
- description: systemd sysext
14+
source-type: oci-image
15+
url: ghcr.io/ethanjli/sysext-dir-ublue-dx-fonts:sha-736cc2d
16+
source: /
17+
target: extensions/ublue-dx-fonts

deployments/ublue-dx-fonts.deploy.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
package: /deployments/ublue-dx-fonts-systemd-extension

forklift-pallet.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
forklift-version: v0.7.2-alpha.0
1+
forklift-version: v0.7.2-alpha.4
22

33
pallet:
44
path: github.com/ethanjli/pallet-example-exports

forklift-repository.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
forklift-version: v0.7.2-alpha.0
1+
forklift-version: v0.7.2-alpha.4
22

33
repository:
44
path: github.com/ethanjli/pallet-example-exports

0 commit comments

Comments
 (0)