Commit graph

77 commits

Author SHA1 Message Date
deeplow
1ab14dbd86
Use containers in Qubes until Beta
Reverse the logic in Qubes to run in containers by default and only
perform the conversion with VMs when explicitly set by the env var
QUBES_CONVERSION=1. This will avoid surprises when someone installs
Dangerzone on Qubes expecting it to work out of the box just like any
other Linux.

Fixes #451
2023-07-26 14:02:06 +01:00
Alex Pyrgiotis
26cf3db4b4
Install Qt6 in CI runners and dev environments
Upgrade from Qt5 to Qt6 in our CI runners and dev environments, since
the latest PySide6 versions do not support Qt5. This leaves only our
Debian / Fedora packages relying on Qt5, since there's no PySide6
package for them yet.

There are some caveats to the Qt6 upgrade:

1. Debian Bullseye has a missing dependency to `libgl1`, so we need to
   install it separately.
2. Ubuntu Jammy has a missing dependency to `libxkbcommon-x11-0`, which
   we have to install separately.
3. Ubuntu Focal does not have Qt6, but surprisingly PySide6 works with
   Qt5.
4. All Debian-based distros require `libxcb-cursor0`.

As a side effect, we have to make our `env.py` a bit more complicated,
to cater to these exceptions.

Refs #482
2023-07-25 14:53:17 +03:00
deeplow
206c262554
Bump python version on Windows to 3.11
Python 3.10.12 fixes some CVEs for which Dangerzone does not appear to be
affected, however its binaries are not made available by the python
foundation. Moving to 3.11 should be trivial since this was already
deployed in Fedora 37+.
2023-07-06 14:32:31 +01:00
Alex Pyrgiotis
20b24a6c71
Add development instructions for Qubes integration
Add instructions aimed at developers who want to try out Qubes
integration.

Fixes #411
2023-06-21 15:06:22 +03:00
Chris Kerr
1a82962224
Fix typo
"keying" -> "keyring"

Signed-off-by: deeplow <deeplower@protonmail.com>
2023-05-17 08:52:34 +01:00
Alex Pyrgiotis
96d8cdef94
Suggest users to install Poetry via pipx
Replace the command to install Poetry globally via `pip` in our build
instructions, with a command that installs Poetry under ~/.local/bin
via `pipx`. The rationale is the same as in the previous commit, i.e.,
PEP 668 does not allow it.

Note that in this case, we don't have any CI restrictions, so we could
use the official installer instead. However, for security reasons, we
prefer suggesting `pipx` to the users, and of course give them a list of
alternatives.

Note that for Windows and MacOS we leave the command as is, until we
figure out how PEP 668 applies in there.
2023-03-08 17:36:42 +02:00
deeplow
f307e03215
Windows build: link to adding Wix to PATH 2023-02-23 09:12:04 +00:00
Alex Pyrgiotis
5100e15213
Add missing build dependencies for Ubuntu Focal
Add some missing build dependencies that we encountered for Ubuntu
Focal, but they apply to the rest of the Debian-based distros as well.
2023-02-21 20:20:03 +02:00
deeplow
3b2544a2cd
Add comment about poetry install keyring prompt
Running `poetry install` would show a keyring prompt asking the user for
a password or to create a new keyring. This should not be needed for a
successful install.

discussion context: https://github.com/freedomofpress/dangerzone/pull/284#issue-1477773398
2023-01-18 14:17:59 +00:00
Alex Pyrgiotis
ea99b1e1dd
Narrow down installed system packages
Narrow down the system packages that we install in dev environments. The
rationale is that we get most of the Python dependencies from Poetry, so
we don't need to install them from the system as well.

The packages that we do need to install are non-Python ones, and this
commit adds some that were missing: make, python3-stdeb. Also, we
explicitly install the base Qt5 libraries, in order to get the graphics
and C++ libraries that we can't get from PyPI.
2023-01-16 18:48:09 +02:00
Ro
ffdc1425bb
Update Debian, Fedora instructions, add QubesOS instructions. 2023-01-09 11:13:12 +00:00
Alex Pyrgiotis
82fc69655e
Align Poetry instructions across OSes
Align build instructions about Python Poetry, which where previously
present only on MacOS and Windows. With this commit we:

1. Add Poetry instructions on Linux.
2. Add missing Poetry instructions on Windows, when running Dangerzone
   from source.
2022-11-07 12:03:24 +02:00
deeplow
a6c2b943f4
document new windows dev dep.: MS Visual C++ >= 14
On a windows system when running `pip install` it fails to install
`cx_Logging-3.0` with the error:

    error: Microsoft Visual C++ 14.0 or greater is required. Get it
    with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

Installing this dependency solves the issue.
2022-10-25 10:23:02 +01:00
Guthrie McAfee Armstrong
e552411db2
Support Python 3.10
PySide2 5.15.2.1 added support for Python 3.10
2022-10-25 10:23:00 +01:00
Micah Lee
6713cce503
Updates to the macOS and Windows build scripts and documentation 2022-08-26 14:06:06 -07:00
Guthrie McAfee Armstrong
e63c931800
Remove psutil, termcolor, and wmi dependencies 2022-08-19 15:16:19 +01:00
Guthrie McAfee Armstrong
395eba0a74
Remove requests dependency 2022-08-19 15:16:14 +01:00
Micah Lee
bc8b9d62b4
Switch Windows package from pyinstaller to cx_freeze 2021-12-13 15:23:45 -08:00
Micah Lee
3e11dc11e0
Switch back to PyInstaller from PyPi 2021-11-29 15:04:20 -08:00
Micah Lee
2a5891dfc3
Typo 2021-11-29 14:55:49 -08:00
Micah Lee
bd0b032c30
For testing, install deps with peotry, and run with poetry, without building a package 2021-11-24 15:39:23 -08:00
Micah Lee
61839f5b24
Change multistep windows build into one step 2021-11-24 12:21:38 -08:00
Micah Lee
4572922042
Update Windows code signing 2021-11-24 11:42:02 -08:00
Micah Lee
b3b52c3963
Rename build scripts 2021-11-23 15:47:25 -08:00
Micah Lee
7441796fbe
Support Windows 2021-11-23 15:39:23 -08:00
Micah Lee
9acfd2764e
Make the new code work in linux 2021-11-22 18:51:47 -05:00
Micah Lee
83759d1a33
Delete vm-builder folder, and make build-image.sh build the dangerzone image 2021-11-22 14:23:17 -08:00
Micah Lee
8248d58f21
Copy vpnkit from Docker Desktop instead of compiling on M1 Macs 2021-11-18 16:25:12 -08:00
Micah Lee
f1cbbdf43c
Start to support building for M1 chips, using Docker Desktop instead of vagrant 2021-11-18 15:53:00 -08:00
Micah Lee
47d6eb0d8b
Build vpnkit and hyperkit from source, remove Docker Desktop dependency to build, and add --allow-vm-login flag 2021-11-18 11:47:51 -08:00
Micah Lee
83bd021803
Update build instructions to say Intel chip is required, and delete accidentally commited vagrant files 2021-11-17 14:03:56 -08:00
Micah Lee
fd1dec7438
Move vm-builder up a dir, and start replacing Docker Desktop with building hyperkit and vpnkit manually 2021-11-17 13:41:45 -08:00
Micah Lee
46681bc771 Start making Windows VM work with virtualbox 2021-08-09 14:05:07 -07:00
Micah Lee
173f31ff41 Start porting VM to Windows 2021-08-09 12:04:17 -07:00
Micah Lee
588206a9e8
Start implementing built-in container in Linux, without a VM 2021-08-04 14:42:46 -07:00
Micah Lee
1c39895206
Refactor how VM image is created to split it into different files, and write ssh-to-host.py script 2021-07-01 11:02:08 -07:00
Micah Lee
e8f7d96f90
Fix building VM ISO, and start implementing start_vm 2021-06-29 17:37:00 -07:00
Micah Lee
7b2211fc1f
Rename rip_docker to install/vm-builder, and start making a build script that uses it 2021-06-29 17:01:47 -07:00
Micah Lee
cf28d47ffc
Merge branch 'master' into 118_rip_docker_desktop 2021-06-29 16:52:25 -07:00
Micah Lee
f4739e749a
Start adding systray 2021-06-29 16:52:10 -07:00
Micah Lee
9536a4db41
Add install Docker Desktop to Windows/Mac build instructions 2021-06-21 12:53:43 -07:00
Micah Lee
d50b0c1bed
Remove docker dependency in Linux and replace with podman 2021-06-17 14:12:44 -07:00
Micah Lee
2d8649179a Update docs 2021-06-17 10:31:14 -07:00
Micah Lee
3105a2c229 Change a bunch of stuff so Windows will work again 2021-06-16 16:55:25 -07:00
Micah Lee
a437906d1d
Version bump to 0.2, update changelog, and fix all linux builds 2021-06-16 11:16:38 -07:00
Micah Lee
46c73329a5
Switch from termcolor to colorama 2021-06-10 10:24:28 -07:00
Micah Lee
69ee4a064e
Add dangerzone-container as a poetry script, and remove unneeded deps from build instructions 2020-12-30 10:40:59 -08:00
Micah Lee
d7e79385d2
Use python 3.9 for macOS, because of PyInstaller update, and make build_app.py executable 2020-12-28 15:27:35 -08:00
Micah Lee
76c74df71a
Fix CircleCI and test in Fedora 2020-10-29 17:01:47 -07:00
Micah Lee
ee215a4870
Update macOS instructions for installing python, and fix how DMG gets created 2020-10-29 15:54:12 -07:00