-
Notifications
You must be signed in to change notification settings - Fork 3
upki(snap): initial snapcraft.yaml for client #51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit adds an initial snapcraft.yaml for
the UPKI client binary.
The snap is strictly confined, with access to
$HOME and the network.
It also has a 'personal-files' plug which
must be manually connected for now, but which we
can have auto-connected once the snap is published
in the store.
For now, you can test as such:
# Build the snap
cd upki
snapcraft pack
# Install and connect interfaces
sudo snap install --dangerous ./upki_0.1.0_amd64.snap
sudo snap connect upki:dot-cache-upki
# Fetch filters and do a check
upki fetch
curl -w '%{certs}' https://google.com | upki revocation-check high
|
@julian-klode FYI |
|
Is it conventional for these to live upstream? |
|
It's mixed - many upstream projects do have the snapcraft in the upstream repo (they're pretty lightweight), but I don't have a strong opinion if you'd prefer the packaging concerns were kept separately.. I could always move the snap to a dedicated repo under Canonical |
|
It looks like this is focusing on the user-specific config/cache. Do you also have a plan for having a OS-global cache with a systemd unit to run regular updates? |
|
I could certainly add a plug for |
The docs that @ctz wrote up seem to indicate the current path is supposed to be something like |
|
My plan is to add a timer service to the snap, per: https://snapcraft.io/docs/services-and-daemons |
This commit adds a snapcraft.yaml for upki-mirror. The snap is set up such that a user could manually invoke the binary, or write their own service/timer should they wish, but the snap also includes a service which runs each day at 03:00. That service will fetch the upstream CRLite filters into /var/snap/upki-mirror/common/data. By using the $SNAP_COMMON directory, the data persists across snap revisions and is snapshotted. By default, all users can read the data in this directory, which should make it easy to setup a web server to serve the contents.
|
Hmm, after a bit more playing, there is a limitation on the |
See https://specifications.freedesktop.org/basedir/latest/ -- it's a pretty established standard. If we deviate from that, we need a very very good reason. |
It's also kind of explicitly for desktops, right? I've used Linux servers for 20+ years and have never encountered Anyway, I feel like @jnsgruk and @julian-klode as distro folks probably have more expertise on this than we have... |
|
Yeh, I think /etc/xdg is a bit odd for server-ish daemons, personally. |
This commit adds an initial snapcraft.yaml for
the UPKI client binary.
The snap is strictly confined, with access to
$HOME and the network.
It also has a 'personal-files' plug which
must be manually connected for now, but which we
can have auto-connected once the snap is published
in the store.
For now, you can test as such: