summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuben Pollan <meskio@sindominio.net>2018-09-05 12:07:44 +0200
committerRuben Pollan <meskio@sindominio.net>2018-09-05 19:18:52 +0200
commit6d0ed1d5bde0fedc26d0889dab825096741d0164 (patch)
tree65e52a78d612ec0bb33ff685a83ee9a4f484b925
parent57fd51d14f346e1a661bfd5706853c691287453a (diff)
[pkg] create snaps with the standalone version
-rw-r--r--.gitignore8
-rw-r--r--snap/gui/riseup-vpn.desktop15
-rw-r--r--snap/gui/riseupvpn.svg80
-rwxr-xr-xsnap/hooks/install14
-rwxr-xr-xsnap/hooks/remove6
-rw-r--r--snap/snapcraft.yaml70
-rwxr-xr-xsnap/version.sh5
7 files changed, 198 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 4b7eda5..d8c97e9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,11 @@ __pycache__
helper/helper
helper/pid
win/*-installer.nsi
+
+# snaps
+parts
+prime
+stage
+*.snap
+*.tar.bz2
+snap/.snapcraft
diff --git a/snap/gui/riseup-vpn.desktop b/snap/gui/riseup-vpn.desktop
new file mode 100644
index 0000000..e325b20
--- /dev/null
+++ b/snap/gui/riseup-vpn.desktop
@@ -0,0 +1,15 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=RiseupVPN
+Comment=Anonymous VPN
+Comment[es]=VPN Anonima
+Comment[de]=Anonymous VPN
+Path=/snap/bin
+Exec=riseup-vpn.launcher
+Terminal=false
+Icon=/snap/riseup-vpn/current/snap/gui/riseupvpn.svg
+Categories=Network;Application;
+StartupNotify=true
+Keywords=VPN;riseup;leap
+
diff --git a/snap/gui/riseupvpn.svg b/snap/gui/riseupvpn.svg
new file mode 100644
index 0000000..a19c6c6
--- /dev/null
+++ b/snap/gui/riseupvpn.svg
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="128"
+ height="128"
+ viewBox="0 0 33.866666 33.866668"
+ version="1.1"
+ id="svg896"
+ inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
+ sodipodi:docname="riseupvpn-launcher.svg">
+ <defs
+ id="defs890" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#d7d7d7"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="5.12"
+ inkscape:cx="26.899914"
+ inkscape:cy="56.22909"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ units="px"
+ inkscape:window-width="1869"
+ inkscape:window-height="1025"
+ inkscape:window-x="51"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid1471"
+ empspacing="4" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata893">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-263.13332)">
+ <path
+ style="fill:#006cb2;fill-opacity:1;stroke-width:0.26458335"
+ d="M 15.617988,295.66418 C 9.9401302,292.50672 5.6959906,287.52131 4.7342129,282.87951 4.4622971,281.56718 4.4516145,281.24899 4.4519256,274.47112 l 2.394e-4,-6.47461 0.5616386,-0.36177 c 2.3734615,-1.52883 4.8841786,-2.55103 7.4419094,-3.06699 5.221864,-1.05337 10.639669,0.003 15.485448,3.16684 l 0.398232,0.25998 v 6.50684 c 0,6.8044 -0.01093,7.13134 -0.280843,8.43104 -0.956329,4.6043 -4.632206,9.09553 -10.057782,12.28874 -1.576255,0.9277 -1.527525,0.91863 -2.382844,0.44299 z"
+ id="path5137"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csccssscssscc" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#007cc3;fill-opacity:1;stroke-width:0.26458335"
+ d="m 16.396917,264.17336 c -1.317958,-4.7e-4 -2.635612,0.13103 -3.941076,0.39437 -2.5577318,0.51596 -5.068528,1.53812 -7.4419895,3.06696 l -0.5615828,0.36177 -4.707e-4,6.47466 c -2.394e-4,6.77787 0.010371,7.096 0.2822554,8.40832 0.9617776,4.64181 5.2059168,9.62724 10.8837756,12.7847 h 1.19e-4 c 0.368953,0.20517 0.569745,0.32326 0.805249,0.31706 v -31.80747 c -0.0088,-2e-5 -0.01755,-4.8e-4 -0.02641,-4.8e-4 z"
+ id="path887" />
+ <path
+ style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458338"
+ d="m 16.989143,272.54844 c 0,0 -0.315707,-0.61165 -0.336761,-0.69601 -0.02106,-0.0844 -0.189431,-0.94909 -0.189431,-0.94909 l 0.210485,-0.37963 0.463046,-0.696 0.673531,-0.52727 0.168377,-0.0633 1.620684,-0.61164 0.147331,-0.14764 -0.168385,-0.25308 -0.231523,-0.12655 -0.424879,-0.10907 -1.064407,-0.10907 -0.825967,0.007 -0.568293,0.12654 -0.505146,-0.18981 -0.63143,-0.0844 -0.9261,-0.0211 -0.463054,-0.0211 -0.778761,0.29527 -1.178677,1.37091 -0.147339,0.52727 -0.08418,0.464 -0.399908,0.86473 -0.252577,0.82254 -0.126285,0.88582 v 0.18982 l -0.610384,0.92799 -0.336761,0.69601 v 0.99126 l 0.10523,2.04581 0.189431,0.73821 0.378861,0.6749 0.4841,0.44292 0.210477,0.8647 0.799815,1.77155 0.947154,1.13886 0.06311,0.0633 0.336761,1.70835 -1.157623,2.10911 -0.363408,0.28169 -0.272426,0.22054 -0.467179,-0.0129 -0.260603,0.13452 -0.316122,0.0134 -0.190994,0.19047 -0.408963,-0.0616 -0.4044091,-0.0196 -0.311982,0.24606 -0.044916,0.36556 0.207365,-0.23472 0.3488649,-0.10158 0.03654,0.33552 0.5512672,-0.18726 0.316122,-0.0134 0.557721,0.0667 c 0,0 0.483518,-0.0316 0.567216,-0.0407 0.0837,-0.009 0.597276,0.0411 0.597276,0.0411 l 0.376644,-0.041 0.199723,0.0844 0.267456,-0.0716 0.290265,0.13818 0.418488,-0.0455 0.05401,-0.28169 -0.01596,-0.14678 0.28571,0.0962 0.232049,0.18692 0.150642,0.21701 -0.0088,-0.27495 -0.182953,-0.31946 c 0,0 -0.125159,-0.17737 -0.208857,-0.16824 -0.0837,0.009 -0.408971,-0.0616 -0.408971,-0.0616 l -0.223321,0.088 -0.243857,-0.10085 -0.239677,0.13226 -0.220665,-0.0822 -0.106491,-0.20049 -0.153322,-0.0471 0.164763,-0.42962 0.378861,-0.52859 0.505146,-0.84364 0.442,-0.5273 0.168385,-0.21088 c 0,0 0.210477,-0.31633 0.210477,-0.40071 0,-0.0844 0.04212,-0.97016 0.04212,-0.97016 l -0.273623,-0.56947 -0.126285,-0.46402 2.441546,0.59059 h 0.147331 l 2.083731,1.49744 0.294669,0.37959 0.10523,1.49729 -0.04212,0.33746 -0.147338,0.27419 -0.105358,0.16875 -0.09101,0.23675 -0.06215,0.1583 -0.386712,0.11988 -0.393086,-0.0709 -0.238209,-0.0294 -0.437428,0.0633 -0.184118,0.19713 -0.07084,0.24475 0.05712,0.24744 0.09172,-0.24769 0.124641,-0.16724 0.121984,-0.0388 0.0094,0.21174 0.163957,0.10406 0.338995,-0.15563 0.166646,-0.0242 0.05409,0.22658 0.508999,-0.01 0.345035,-0.11394 0.282886,0.0443 0.410893,0.047 0.142823,-0.0417 0.112881,-0.10156 0.182442,0.37841 0.0024,-0.42654 -0.176722,-0.48581 -0.256358,-0.15463 0.04324,-0.12712 -0.189423,-0.35849 0.02106,-1.37079 1.052392,1.2444 1.389154,1.09674 c 0,0 0.947146,0.33749 1.03133,0.33749 0.08419,0 0.736677,-0.0844 0.736677,-0.0844 l 0.420954,-0.69598 -0.315715,-0.94908 0.126284,-0.31642 -0.673531,-0.88574 -1.426794,-1.45279 -0.341213,-1.14141 0.02106,-0.78037 -0.315707,-0.82257 -0.357816,-0.65376 0.210477,-0.65377 -0.168377,-0.94904 -0.717785,-1.61568 0.265151,-0.0448 -0.444984,-0.77034 0.289101,-0.0918 -0.508218,-0.82847 0.213764,-0.11524 -0.380944,-0.62543 0.124202,-0.0696 -0.460971,-0.37337 0.168384,-0.0875 -1.199723,-0.84051 z"
+ id="path5892"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccccccccccsccccccccccccscccccccccccccccccccccccccccccccccccccccccccscccccccccccccccccccccccc" />
+ </g>
+</svg>
diff --git a/snap/hooks/install b/snap/hooks/install
new file mode 100755
index 0000000..c435f00
--- /dev/null
+++ b/snap/hooks/install
@@ -0,0 +1,14 @@
+#!/usr/bin/env python3
+# DO NOT MODIFY MANUALLY
+# This helper installs the polkit policy file
+# for the RiseupVPN snap.
+# It is generated automatically
+# by the script at "pkg/riseupvpn/pack_installers"
+from base64 import decodestring as decode
+
+POLKIT = b'PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBvbGljeWNv\nbmZpZyBQVUJMSUMKICItLy9mcmVlZGVza3RvcC8vRFREIFBvbGljeUtpdCBQb2xpY3kgQ29uZmln\ndXJhdGlvbiAxLjAvL0VOIgogImh0dHA6Ly93d3cuZnJlZWRlc2t0b3Aub3JnL3N0YW5kYXJkcy9Q\nb2xpY3lLaXQvMS9wb2xpY3ljb25maWcuZHRkIj4KPHBvbGljeWNvbmZpZz4KCiAgPHZlbmRvcj5M\nRUFQIFByb2plY3Q8L3ZlbmRvcj4KICA8dmVuZG9yX3VybD5odHRwOi8vbGVhcC5zZS88L3ZlbmRv\ncl91cmw+CgogIDxhY3Rpb24gaWQ9InNlLmxlYXAuYml0bWFzay5yaXNldXB2cG4ucG9saWN5Ij4K\nICAgIDxkZXNjcmlwdGlvbj5SdW5zIGJpdG1hc2sgaGVscGVyIHRvIGxhdW5jaCBmaXJld2FsbCBh\nbmQgb3BlbnZwbiAoUmlzZXVwVlBOKTwvZGVzY3JpcHRpb24+CiAgICA8ZGVzY3JpcHRpb24geG1s\nOmxhbmc9ImVzIj5FamVjdXRhIGVsIGFzaXN0ZW50ZSBkZSBiaXRtYXNrIHBhcmEgbGFuemFyIGVs\nIGZpcmV3YWxsIHkgb3BlbnZwbiAoUmlzZXVwVlBOKTwvZGVzY3JpcHRpb24+CiAgICA8bWVzc2Fn\nZT5SaXNldXBWUE4gbmVlZHMgdGhhdCB5b3UgYXV0aGVudGljYXRlIHRvIHN0YXJ0PC9tZXNzYWdl\nPgogICAgPG1lc3NhZ2UgeG1sOmxhbmc9ImVzIj5SaXNldXBWUE4gbmVjZXNpdGEgYXV0b3JpemFj\naW9uIHBhcmEgY29tZW56YXI8L21lc3NhZ2U+CiAgICA8aWNvbl9uYW1lPnBhY2thZ2UteC1nZW5l\ncmljPC9pY29uX25hbWU+IAogICAgPGRlZmF1bHRzPgogICAgICA8YWxsb3dfYW55PnllczwvYWxs\nb3dfYW55PgogICAgICA8YWxsb3dfaW5hY3RpdmU+eWVzPC9hbGxvd19pbmFjdGl2ZT4KICAgICAg\nPGFsbG93X2FjdGl2ZT55ZXM8L2FsbG93X2FjdGl2ZT4KICAgIDwvZGVmYXVsdHM+CiAgICA8YW5u\nb3RhdGUga2V5PSJvcmcuZnJlZWRlc2t0b3AucG9saWN5a2l0LmV4ZWMucGF0aCI+L3NuYXAvYmlu\nL3Jpc2V1cC12cG4uYml0bWFzay1yb290PC9hbm5vdGF0ZT4KICA8L2FjdGlvbj4KPC9wb2xpY3lj\nb25maWc+Cg==\n'
+
+with open('/usr/share/polkit-1/actions/se.leap.bitmask.riseupvpn.policy', 'w') as polkit:
+ lines = decode(POLKIT).split(b"\n")
+ for line in lines:
+ polkit.write(line.decode() + "\n")
diff --git a/snap/hooks/remove b/snap/hooks/remove
new file mode 100755
index 0000000..029a954
--- /dev/null
+++ b/snap/hooks/remove
@@ -0,0 +1,6 @@
+#!/bin/sh
+set -e
+
+echo "Executing remove hook for RiseupVPN"
+rm "/usr/share/polkit-1/actions/se.leap.bitmask.riseupvpn.policy"
+echo "done"
diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml
new file mode 100644
index 0000000..e5ff973
--- /dev/null
+++ b/snap/snapcraft.yaml
@@ -0,0 +1,70 @@
+name: riseup-vpn
+version: 'git'
+version-script: ./snap/version.sh
+summary: RiseupVPN, secure VPN. Powered by Bitmask.
+description: |
+ RiseupVPN is an easy, fast, and secure VPN service from riseup.net.
+ RiseupVPN does not require a user account, keep logs, or track you in
+ any way. The service is paid for entirely by donations from users like
+ you.
+
+grade: stable
+confinement: classic
+icon: snap/gui/riseupvpn.svg
+
+parts:
+ desktop-gtk3:
+ stage-packages:
+ - libc6
+ prime:
+ - '*'
+ - -usr/include
+ - -usr/lib/locale
+ - -usr/share/X11/locale
+ - -usr/share/doc
+ - -usr/share/locale
+ - -usr/share/man
+
+ bitmask-root:
+ after: [desktop-gtk3]
+ plugin: dump
+ override-prime: |
+ wget -O ./bin/bitmask-root https://0xacab.org/leap/bitmask-dev/raw/master/src/leap/bitmask/vpn/helpers/linux/bitmask-root
+ chmod +x ./bin/bitmask-root
+
+ openvpn:
+ plugin: nil
+ stage-packages:
+ - openvpn
+ - libc6
+ prime:
+ - -usr/share/doc
+ - -usr/share/man
+
+ bitmask-systray:
+ after: [desktop-gtk3]
+ plugin: go
+ go-buildtags: [standalone]
+ go-packages: ["github.com/ProtonMail/go-autostart", "github.com/apparentlymart/go-openvpn-mgmt/openvpn", "0xacab.org/leap/bitmask-systray"]
+ # prepare: XXX run systray tests here
+ build-packages:
+ - pkg-config
+ - patchelf
+ - libpcre3-dev
+ - libappindicator3-dev
+ - libgtk-3-dev
+ stage-packages:
+ - libc6
+ - libpcre3
+ - libappindicator3-1
+ - zlib1g
+
+apps:
+ launcher:
+ command: ./bin/bitmask-systray
+ environment:
+ LD_LIBRARY_PATH: "$SNAP/usr/lib/$(gcc -print-multiarch):$SNAP/lib/$(gcc -print-multiarch):$LD_LIBRARY_PATH"
+ openvpn:
+ command: ./usr/sbin/openvpn
+ bitmask-root:
+ command: ./bin/bitmask-root
diff --git a/snap/version.sh b/snap/version.sh
new file mode 100755
index 0000000..655cb9c
--- /dev/null
+++ b/snap/version.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+git clone https://0xacab.org/leap/bitmask-systray 2> /dev/null > /dev/null
+git -C bitmask-systray describe --tags
+rm -rf bitmask-systray