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

meta-ticket: tracking progress/strategy for running Martus in Qubes #1836

Closed
mfc opened this Issue Mar 15, 2016 · 10 comments

Comments

Projects
None yet
4 participants
@mfc
Member

mfc commented Mar 15, 2016

The secure human rights information collection tool Martus requires openjdk 1.8 and the javafx package (packaged for Debian as openjfx).

Currently Fedora 23 comes with openjdk version 1.8.0_72 but running Martus java -jar martus.jar fails because it doesn't have the javafx, which is unclear to me how to install.

Currently Debian 8 comes with openjdk version 1.7.0_95 which is insufficient to run Martus.

Current potential solutions I see are:

  • change Debian 8 template to unstable or testing and install newer version of openjdk
  • figure out where javafx lives in dnf / rpm land and install it in a Fedora 23 template
  • install openjfx and openjdk-8-jre via Debian backports -- SUCCESS
  • install Oracle's proprietary java implementation in a new Debian template -- would like to avoid
  • run Martus' Windows version within a Windows 7 qube (requires a Windows 7 license and installing W7 within Qubes) -- would like to avoid

These issues were first reported and discussed with Martus developers at the Internet Freedom Festival.

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Mar 16, 2016

Member

Can you ask the Martus developers please to get their application into the official Debian repositories? That would make integration so much easier!

There is also Debian Anonymity Tools Team (and perhaps other Debian Developers) that might be interested and willing to help. They could try to get in touch with them.

Member

adrelanos commented Mar 16, 2016

Can you ask the Martus developers please to get their application into the official Debian repositories? That would make integration so much easier!

There is also Debian Anonymity Tools Team (and perhaps other Debian Developers) that might be interested and willing to help. They could try to get in touch with them.

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Mar 16, 2016

Member

Yes, this has been highlighted to them. Also them packaging it and serving it from their own repo as an intermediary step. They may need help with that process so that's useful link for them.

Member

mfc commented Mar 16, 2016

Yes, this has been highlighted to them. Also them packaging it and serving it from their own repo as an intermediary step. They may need help with that process so that's useful link for them.

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Apr 22, 2016

Member

successfully change Debian 8 template to unstable and install newer version of openjdk

this fails because Debian 8 testing version of openjdk-8-jre also does not come with javafx: Caused by: java.lang.ClassNotFoundException: javafx.fxml.Initializable

installing openjfx for javafx functionality brings in a bunch of competing dependencies that takes down the template making it unusable.

Member

mfc commented Apr 22, 2016

successfully change Debian 8 template to unstable and install newer version of openjdk

this fails because Debian 8 testing version of openjdk-8-jre also does not come with javafx: Caused by: java.lang.ClassNotFoundException: javafx.fxml.Initializable

installing openjfx for javafx functionality brings in a bunch of competing dependencies that takes down the template making it unusable.

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Apr 22, 2016

Member

figure out where javafx lives in dnf / rpm land and install it in a Fedora 23 template

javafx is not build for Fedora yet: https://bugzilla.redhat.com/show_bug.cgi?id=1145303

Member

mfc commented Apr 22, 2016

figure out where javafx lives in dnf / rpm land and install it in a Fedora 23 template

javafx is not build for Fedora yet: https://bugzilla.redhat.com/show_bug.cgi?id=1145303

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Apr 22, 2016

Member

install openjfx and openjdk-8-jre via Debian backports

!! Works !!

  1. create a Debian 8 martus template using the Qubes VM Manager or running qvm-clone debian-8 debian-8-martus in dom0
  2. add backports to the sources for the new template by opening a terminal in the new template, run sudo vi /etc/apt/sources.list and add: deb http://http.debian.net/debian jessie-backports main (if you are new to vi text editing, type i to be able to edit, and when done editing press ESC then type :x and press ENTER)
  3. update source list: sudo apt-get update
  4. install openjdk and openjfx from backports: sudo apt-get -t jessie-backports install openjdk-8-jre openjfx
  5. You may need to install unzip to be able to unzip Martus after you download it: sudo apt-get install unzip
  6. create new qube/appvm based on your debian-8-martus template with whatever color and networking you want (sys-whonix probably preferred) using the Qubes VM Manager or running qvm-create -t debian-8-martus -l blue martus and qvm-prefs -s martus netvm sys-whonix in dom0
  7. download the latest Martus version from https://martus.org
  8. unzip the Martus package unzip Martus-5.1.1.zip
  9. cd into new folder cd Martus-5.1.1
  10. run Martus: java -jar martus.jar
Member

mfc commented Apr 22, 2016

install openjfx and openjdk-8-jre via Debian backports

!! Works !!

  1. create a Debian 8 martus template using the Qubes VM Manager or running qvm-clone debian-8 debian-8-martus in dom0
  2. add backports to the sources for the new template by opening a terminal in the new template, run sudo vi /etc/apt/sources.list and add: deb http://http.debian.net/debian jessie-backports main (if you are new to vi text editing, type i to be able to edit, and when done editing press ESC then type :x and press ENTER)
  3. update source list: sudo apt-get update
  4. install openjdk and openjfx from backports: sudo apt-get -t jessie-backports install openjdk-8-jre openjfx
  5. You may need to install unzip to be able to unzip Martus after you download it: sudo apt-get install unzip
  6. create new qube/appvm based on your debian-8-martus template with whatever color and networking you want (sys-whonix probably preferred) using the Qubes VM Manager or running qvm-create -t debian-8-martus -l blue martus and qvm-prefs -s martus netvm sys-whonix in dom0
  7. download the latest Martus version from https://martus.org
  8. unzip the Martus package unzip Martus-5.1.1.zip
  9. cd into new folder cd Martus-5.1.1
  10. run Martus: java -jar martus.jar

@mfc mfc closed this Apr 22, 2016

@mfc mfc added the C: doc label Apr 22, 2016

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Apr 22, 2016

Member

let's get the instructions into a doc

Member

mfc commented Apr 22, 2016

let's get the instructions into a doc

@marmarek marmarek added this to the Documentation/website milestone Apr 24, 2016

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Apr 24, 2016

Member

Looks like a perfect case for VM managing using Salt: #1541
Lets not get better be an enemy of good and still include above steps in documentation. But I'll use this as an example configuration and will report back when finished.

Member

marmarek commented Apr 24, 2016

Looks like a perfect case for VM managing using Salt: #1541
Lets not get better be an enemy of good and still include above steps in documentation. But I'll use this as an example configuration and will report back when finished.

@marmarek marmarek reopened this Apr 24, 2016

andrewdavidwong added a commit to QubesOS/qubes-doc that referenced this issue Apr 24, 2016

marmarek added a commit to QubesOS/qubesos.github.io that referenced this issue Apr 24, 2016

autoupdate: _doc
_doc:
    tag axon_4d44d9d8
    tagger Axon <axon@openmailbox.org> 1461484809 +0000

    Tag for commit 4d44d9d896c3057d98ad1649a8341736a8e89988
    gpg: Signature made Sun 24 Apr 2016 10:00:09 AM CEST using RSA key ID 2A019A17
    gpg: Good signature from "Axon (Qubes Documentation Signing Key)"

    4d44d9d Create Martus page (QubesOS/qubes-issues#1836)
@andrewdavidwong

This comment has been minimized.

Show comment
Hide comment
@andrewdavidwong

andrewdavidwong Apr 24, 2016

Member

Doc page created. Please edit as appropriate.

Member

andrewdavidwong commented Apr 24, 2016

Doc page created. Please edit as appropriate.

@mfc

This comment has been minimized.

Show comment
Hide comment
@mfc

mfc Apr 24, 2016

Member

Looks perfect, thanks axon. you can add it to the website docs.

@marmarek sounds good! maybe we can close this ticket and when you are creating examples for salt configuration we can put it there?

Member

mfc commented Apr 24, 2016

Looks perfect, thanks axon. you can add it to the website docs.

@marmarek sounds good! maybe we can close this ticket and when you are creating examples for salt configuration we can put it there?

andrewdavidwong added a commit to QubesOS/qubes-doc that referenced this issue Apr 24, 2016

marmarek added a commit to QubesOS/qubesos.github.io that referenced this issue Apr 24, 2016

autoupdate: _doc
_doc:
    tag axon_6d4918d3
    tagger Axon <axon@openmailbox.org> 1461519932 +0000

    Tag for commit 6d4918d388c9f892eb1488ec1d27ed0a5cd28f22
    gpg: Signature made Sun 24 Apr 2016 07:45:32 PM CEST using RSA key ID 2A019A17
    gpg: Good signature from "Axon (Qubes Documentation Signing Key)"

    6d4918d Add Martus page to ToC (QubesOS/qubes-issues#1836)
@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Apr 24, 2016

Member

Yes, that's ok.

Member

marmarek commented Apr 24, 2016

Yes, that's ok.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment