-
Notifications
You must be signed in to change notification settings - Fork 0
Include updated release key in base template #12
Conversation
Fedora-30 is end-of-life
Now expires on 2021-06-30
securedrop-keyring is already a dependency of securedrop-config, but we should still explicitly install it here.
@emkll mentioned in chat today that this is ready for review, so marking as such |
Of course, the draft state was intentional. Proceeding with review now, I'll amend as described if test plan shows no problems. |
Ran into an error while testing:
That's after I applied the patch to use your personal key. Have definitely encountered this before, my guess is there's another patch i'll have to add locally to skip verifying a signed tag on the remote. Let me know what you think, @emkll, I mostly want to capture these steps in a PR template to make it obvious for future maintainers. |
Ah, was using an outdated tag to attempt the build. Resolved, proceeding with local review... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test plan checks out!
- Template installs successfully in dom0
- Set VM to HVM and kernel to
''
- Template boots in grsecurity kernel
- apt-key finger shows the release key in its own keyring
- the old key is not present
- securedrop-keyring package is installed
Holding off on merge since some commits should be dropped. Please proceed, @emkll, and ping if further review required.
We may have a regression here. After testing, I went to shut down the template, and was surprised to receive a sudo prompt:
That doesn't look right—all qubes templates have passwordless sudo by default, so let's investigate what went sideways in the build I just did. |
Dismissing approval to block merge, to investigate sudo regression
Good catch @conorsch ! It seems like the newer builds to not include the This package is pulled in via the I've noticed we are tracking
[1] : QubesOS/qubes-builder-debian@14baf17#diff-96406aed0a83d2b44865692a74531942R2 |
Great investigation, thanks for the detailed report, @emkll.
In terms of unblocking the current template rebuild work, the proposal you make in 3 makes the most sense to keep the wheels turning. I'll amend the PR to evaluate the behavior as described. Going forward, I'd prefer that we pin, as described in 1, and commit to rebuilding at a regular interval. Since we're going to be updating the VM kernels shortly, that's a fine time to revisit the build logic. Let's consider some research time on the next sprint to transfer some knowledge on the builder process, and perhaps get clarity on 2, as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amended to include the additional upstream package @emkll identified. Tacked on a sanity check task for sudo passwords to the test plan, all looks good:
- Template installs successfully in dom0
- Set VM to HVM and kernel to
''
- Template boots in grsecurity kernel
- apt-key finger shows the release key in its own keyring
- the old key is not present
- securedrop-keyring package is installed
-
sudo echo hello
does not prompt for sudo password
Approving, back over to you @emkll to drop commits prior to merge.
Due to a regression with sudo password handling, we now explicitly pull in the `qubes-vm-recommended` package, which pulls in `qubes-core-agent-passwordless-root` via dependencies. This is a quick fix, and we should investigate the upstream builder logic more deeply to resolve fully.
Thanks @conorsch for the fix, dropped the commit tracking the feature branch, will merge, tag, and build. |
Status
Ready for Review
Description
Towards freedomofpress/securedrop-workstation#579
Adds securedrop-keyring to the TemplateVM, updates the key used to bootstrap the repo with the updated release key.
Test Plan
In order to test, will require a Fedora-31 dev VM (as per README updates). I have already successfully tested the steps below.
build-workstation-template
script as below to import my GPG key instead of the release key (see [1]). We will sign a tag w/ release key once the changes are reviewed and merged.make template
''
sudo echo hello
does not prompt for sudo passwordNext steps after initial review:
[1] : import/trust dev key for testing purposes: