Simplify Qubes install instructions

Many instructions relied on the fact that the developer would have to
copy over the RPC policies and install the dependencies manually on the
template. This is no longer needed since a Qubes-built package ships
the necessary RPC policies and dependencies.

Removing the dependencies installation also helps with documentation
maintenance since it would be yet another place where we would need to
keep the dependency list up to date.
This commit is contained in:
deeplow 2023-12-07 12:53:53 +00:00
parent 5849800606
commit 555cd33eb6
No known key found for this signature in database
GPG key ID: 577982871529A52A

View file

@ -188,24 +188,14 @@ The following instructions require typing commands in a terminal in dom0.
dz.ConvertDev * @anyvm @dispvm:dz-dvm allow dz.ConvertDev * @anyvm @dispvm:dz-dvm allow
``` ```
#### In the `fedora-38-dz` template
1. Install dependencies:
```
sudo dnf install -y rpm-build podman python3 python3-devel \
python3-poetry-core pipx qt6-qtbase-gui libreoffice python3-magic \
python3-keyring tesseract*
```
2. Shutdown the `fedora-38-dz` template:
```
shutdown -h now
```
#### In the `dz` app qube #### In the `dz` app qube
In the following steps you'll setup the development environment and
install a dangerzone build. This will make the development faster since it
loads the server code dynamically each time it's run, instead of having
to build and install a server package each time the developer wants to
test it.
1. Clone the Dangerzone project: 1. Clone the Dangerzone project:
``` ```
@ -213,35 +203,28 @@ The following instructions require typing commands in a terminal in dom0.
cd dangerzone cd dangerzone
``` ```
2. Copy the Qubes RPC calls into the template for the **disposable** qube 2. Follow the Fedora instructions for setting up the development environment
that will be used for document sanitization (`dz-dvm`):
``` 3. Build a dangerzone `.rpm` for qubes with the command
qvm-copy qubes/*
```sh
./install/linux/build-rpm.py --qubes
``` ```
And then choose `dz-dvm` as the target. 4. Copy the produced `.rpm` file into `fedora-38-dz`
```sh
#### In the `dz-dvm` template qvm-copy dist/*.x86_64.rpm
1. Create the directory that will contain the Dangerzone RPC calls, if it does
not exist already:
```
sudo mkdir -p /rw/usrlocal/etc/qubes-rpc/
``` ```
2. Move the files we copied in the previous step to their proper place: #### In the `fedora-38-dz` template
``` 1. Install the `.rpm` package you just copied
sudo cp ~/QubesIncoming/dz/* /rw/usrlocal/etc/qubes-rpc/
```sh
sudo dnf install ~/QubesIncoming/dz/*.rpm
``` ```
3. Shutdown the `dz-dvm` qube: 2. Shutdown the `fedora-38-dz` template
```
shutdown -h now
```
### Developing Dangerzone ### Developing Dangerzone
@ -272,31 +255,10 @@ For changes in the server side components, you can simply edit them locally,
and they will be mirrored to the disposable qube through the `dz.ConvertDev` and they will be mirrored to the disposable qube through the `dz.ConvertDev`
RPC call. RPC call.
The only reason to update the `fedora-38-dz` template from there on is if: The only reason to build a new Qubes RPM and install it in the `fedora-38-dz`
template for development is if:
1. The project requires new server-side components. 1. The project requires new server-side components.
2. The code for `dz.ConvertDev` needs to be updated. Copy the updated file 2. The code for `qubes/dz.ConvertDev` needs to be updated.
as we've shown in the steps above.
### Installing Dangerzone system-wide
If you want to test the .rpm you just created, you can do the following:
On the `dz` app cube, copy the built `dangerzone.rpm` to `fedora-38-dz`
template:
```
qvm-copy-to-vm fedora-38-dz dist/dangerzone*.noarch.rpm
```
On the `fedora-38-dz` template, install the copied .rpm:
```
sudo dnf install -y ~/QubesIncoming/dz/dangerzone-*.rpm
```
Shutdown the `fedora-38-dz` template and the `dz` app qube, and then you can
refresh the applications on the `dz` qube, find Dangerzone in the list, and use
it to convert a document.
## macOS ## macOS