summaryrefslogtreecommitdiff
path: root/snap/snapcraft.yaml
blob: 452c1ccead8dd4e1300f95eb1c838d8f4f271fec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
name: midori
version: bzr
version-script: |
  VERSION=$(grep -r "^set(VERSION" CMakeLists.txt | sed -r "s@.+ ([0-9.]+)\)@\1@")
  REVISION=$(bzr revno)
  echo $VERSION~r$REVISION
summary: a lightweight, fast, and free web browser
description: |
  Midori is a fast little WebKit browser with support for HTML5. It can manage
  many open tabs and windows. The URL bar completes history, bookmarks, search
  engines and open tabs out of the box. Web developers can use the powerful
  web inspector that is a part of WebKit. Individual pages can easily be turned
  into web apps and new profiles can be created on demand.

  A number of extensions are included by default:

  * Adblock with support for ABP filter lists and custom rules is built-in.
  * You can download files with Aria2 or SteadyFlow.
  * User scripts and styles support a la Greasemonkey.
  * Managing cookies and scripts via NoJS and Cookie Security Manager.
  * Switching open tabs in a vertical panel or a popup window.

grade: stable
confinement: strict
icon: icons/scalable/apps/midori.svg

apps:
  midori:
    command: desktop-launch snapcraft-preload midori
    plugs:
      - home
      - pulseaudio
      - network
      - camera
      - removable-media
      - unity7
      - wayland
      - mir
      - screen-inhibit-control
      - password-manager-service
      - gsettings
      - network-bind
      - location-observe
      - network-status
    desktop: share/applications/midori.desktop
    environment:
      LD_LIBRARY_PATH: $SNAP/usr/lib/x86_64-linux-gnu/webkit2gtk-4.0/:$LD_LIBRARY_PATH
      # Work-around GPU crash https://bugs.webkit.org/show_bug.cgi?id=126122
      WEBKIT_DISABLE_COMPOSITING_MODE: 1
      GTK_CSD: 1
      # No Netscape plugins
      MOZ_PLUGIN_PATH: /

slots:
  dbus:
    name: de.twotoasts.midori
    bus: session

parts:
  midori:
    plugin: cmake
    configflags:
      - -DCMAKE_INSTALL_DATADIR=/usr/share
      - -DHALF_BRO_INCOM_WEBKIT2=1
    build-packages:
      - valac
      - libwebkit2gtk-4.0-dev
      - libsoup-gnome2.4-dev
      - libzeitgeist-2.0-dev
      - libgcr-3-dev
    install: |
      echo "[settings]\n" \
      "toolbar-items=" \
      "TabNew,Back,NextForward,ReloadStop,BookmarkAdd,Location,Trash,CompactMenu\n" \
      "show-statusbar=false\n" \
      > $SNAPCRAFT_PART_INSTALL/etc/xdg/midori/config
    stage-packages:
      - libwebkit2gtk-4.0-37
      - libcanberra-gtk3-module
      - libc-bin
      - myspell-en-us
      - gnome-icon-theme-symbolic
      - gstreamer1.0-x
      - gstreamer1.0-plugins-base
      - gstreamer1.0-plugins-good
      - gstreamer1.0-plugins-bad
      - gstreamer1.0-plugins-ugly
      - gstreamer1.0-pulseaudio
      - pulseaudio-module-x11
      - libmirclient9
    stage:
      - -share/applications/midori-private.desktop
      - -usr/lib/x86_64-linux-gnu/libcups.so.2
      - -usr/share/doc/libcups2/changelog.Debian.gz
      - -usr/share/doc
    after:
      - desktop-gtk3
      - snapcraft-preload
  snapcraft-preload:
    source: https://github.com/kalikiana/snapcraft-preload.git
    source-branch: webkitgtk2
    plugin: cmake
    build-packages:
      - gcc-multilib
      - g++-multilib