* [bug#27767] [PATCH] gnu: Add eolie.
@ 2017-07-19 21:56 Ricardo Wurmus
2017-07-20 0:50 ` rennes
2017-07-20 10:02 ` [bug#27767] " Roel Janssen
0 siblings, 2 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2017-07-19 21:56 UTC (permalink / raw)
To: 27767; +Cc: Ricardo Wurmus
* gnu/packages/gnome.scm (eolie): New variable.
---
gnu/packages/gnome.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 345dc6a74..be00fcff5 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3886,6 +3886,67 @@ the same backend as XSANE uses. This means that all existing scanners will
work and the interface is well tested.")
(license license:gpl3+)))
+(define-public eolie
+ (package
+ (name "eolie")
+ (version "0.9.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/gnumdk/eolie/"
+ "releases/download/"
+ (version-major+minor version)
+ "/eolie-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1lb3rd2as12vq24fcf9nmlhggf8vka3kli2i92i8iylwi7nq5n2a"))))
+ (build-system glib-or-gtk-build-system)
+ (arguments
+ `(#:modules ((guix build glib-or-gtk-build-system)
+ (guix build utils)
+ (ice-9 match))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'wrap 'wrap-more
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ ;; These libraries must be on LD_LIBRARY_PATH.
+ (libs '("gtkspell3" "webkitgtk" "libsoup" "libsecret"
+ "atk" "gtk+" "gsettings-desktop-schemas"
+ "gobject-introspection"))
+ (path (string-join
+ (map (lambda (lib)
+ (string-append (assoc-ref inputs lib) "/lib"))
+ libs)
+ ":")))
+ (wrap-program (string-append out "/bin/eolie")
+ `("LD_LIBRARY_PATH" ":" prefix (,path))
+ `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
+ #t)))))
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gobject-introspection" ,gobject-introspection)
+ ("glib-networking" ,glib-networking)
+ ("cairo" ,cairo)
+ ("gtk+" ,gtk+)
+ ("atk" ,atk) ; propagated by gtk+, but we need it in LD_LIBRARY_PATH
+ ("python" ,python-wrapper)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pycairo" ,python-pycairo)
+ ("libsecret" ,libsecret)
+ ("gtkspell3" ,gtkspell3)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("webkitgtk" ,webkitgtk)))
+ (home-page "https://github.com/gnumdk/eolie/")
+ (synopsis "Web browser for GNOME")
+ (description
+ "Eolie is a new web browser for GNOME. It features Firefox sync support,
+a secret password store, an adblocker, and a modern UI.")
+ (license license:gpl3+)))
+
(define-public epiphany
(package
(name "epiphany")
--
2.13.3
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [bug#27767] [PATCH] gnu: Add eolie.
2017-07-19 21:56 [bug#27767] [PATCH] gnu: Add eolie Ricardo Wurmus
@ 2017-07-20 0:50 ` rennes
2017-07-20 6:42 ` bug#27767: " Ricardo Wurmus
2017-07-20 10:02 ` [bug#27767] " Roel Janssen
1 sibling, 1 reply; 5+ messages in thread
From: rennes @ 2017-07-20 0:50 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 27767
Hello,
It works well for me. Thanks
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#27767: [PATCH] gnu: Add eolie.
2017-07-20 0:50 ` rennes
@ 2017-07-20 6:42 ` Ricardo Wurmus
0 siblings, 0 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2017-07-20 6:42 UTC (permalink / raw)
To: rennes; +Cc: 27767-done
rennes <rennes@openmailbox.org> writes:
> Hello,
> It works well for me. Thanks
Thanks for testing it. I pushed it with commit ab466d79e.
--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
https://elephly.net
^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#27767] [PATCH] gnu: Add eolie.
2017-07-19 21:56 [bug#27767] [PATCH] gnu: Add eolie Ricardo Wurmus
2017-07-20 0:50 ` rennes
@ 2017-07-20 10:02 ` Roel Janssen
2017-07-20 13:15 ` Ricardo Wurmus
1 sibling, 1 reply; 5+ messages in thread
From: Roel Janssen @ 2017-07-20 10:02 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 27767
Hi Ricardo!
I guess I'm too late, but here are some comments.
Ricardo Wurmus writes:
> * gnu/packages/gnome.scm (eolie): New variable.
> ---
> gnu/packages/gnome.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 61 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 345dc6a74..be00fcff5 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -3886,6 +3886,67 @@ the same backend as XSANE uses. This means that all existing scanners will
> work and the interface is well tested.")
> (license license:gpl3+)))
>
> +(define-public eolie
> + (package
> + (name "eolie")
> + (version "0.9.0")
> + (source (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/gnumdk/eolie/"
> + "releases/download/"
> + (version-major+minor version)
> + "/eolie-" version ".tar.xz"))
> + (sha256
> + (base32
> + "1lb3rd2as12vq24fcf9nmlhggf8vka3kli2i92i8iylwi7nq5n2a"))))
> + (build-system glib-or-gtk-build-system)
> + (arguments
> + `(#:modules ((guix build glib-or-gtk-build-system)
> + (guix build utils)
> + (ice-9 match))
> + #:phases
> + (modify-phases %standard-phases
> + (add-after 'wrap 'wrap-more
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + ;; These libraries must be on LD_LIBRARY_PATH.
> + (libs '("gtkspell3" "webkitgtk" "libsoup" "libsecret"
> + "atk" "gtk+" "gsettings-desktop-schemas"
> + "gobject-introspection"))
> + (path (string-join
> + (map (lambda (lib)
> + (string-append (assoc-ref inputs lib) "/lib"))
> + libs)
> + ":")))
> + (wrap-program (string-append out "/bin/eolie")
> + `("LD_LIBRARY_PATH" ":" prefix (,path))
This makes it work, but is this something we want to do here?
There seems to be a deeper issue with how libraries are found.
> + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))
> + `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
> + #t)))))
> + (native-inputs
> + `(("intltool" ,intltool)
> + ("itstool" ,itstool)
> + ("pkg-config" ,pkg-config)))
> + (inputs
> + `(("gobject-introspection" ,gobject-introspection)
> + ("glib-networking" ,glib-networking)
> + ("cairo" ,cairo)
> + ("gtk+" ,gtk+)
> + ("atk" ,atk) ; propagated by gtk+, but we need it in LD_LIBRARY_PATH
> + ("python" ,python-wrapper)
> + ("python-pygobject" ,python-pygobject)
> + ("python-pycairo" ,python-pycairo)
> + ("libsecret" ,libsecret)
> + ("gtkspell3" ,gtkspell3)
> + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
> + ("webkitgtk" ,webkitgtk)))
> + (home-page "https://github.com/gnumdk/eolie/")
> + (synopsis "Web browser for GNOME")
> + (description
> + "Eolie is a new web browser for GNOME. It features Firefox sync support,
> +a secret password store, an adblocker, and a modern UI.")
> + (license license:gpl3+)))
> +
> (define-public epiphany
> (package
> (name "epiphany")
I tested the browser and it seems to work quite well, except for:
- Ads are not blocked, even when the "Block ads" checkbox is checked.
- It seems to be cloning a repository for adblock_js when running the program:
roel@antelope ~/sources/guix$ /gnu/store/ccvdhd5159qkachbzf4y9k5c6ds4cn4n-eolie-0.9.0/bin/eolie
Cloning into '/home/roel/.local/share/eolie/adblock_js'...
Could not initialize PyGObjectremote: Counting objects: 74, done.
remote: Total 74 (delta 0), reused 0 (delta 0), pack-reused 74
Unpacking objects: 100% (74/74), done.
The 'remote' for this repository is:
https://github.com/gnumdk/eolie-adblock.git
- I get a couple of Gtk-WARNINGs:
(eolie:4447): Gtk-WARNING **: Duplicate child name in GtkStack: submenu
(eolie:4447): Gtk-WARNING **: Failed to fetch network locations: Automount failed: Message recipient disconnected from message bus without replying
(eolie:4447): Gtk-WARNING **: Duplicate child name in GtkStack: submenu
(eolie:4447): Gtk-WARNING **: Failed to fetch network locations: Automount failed: Message recipient disconnected from message bus without replying
(eolie:4447): Gtk-WARNING **: Duplicate child name in GtkStack: submenu
(eolie:4447): Gtk-WARNING **: Failed to fetch network locations: Automount failed: Message recipient disconnected from message bus without replying
Application::__on_forms_filled(): g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.NameHasNoOwner: Name "org.gnome.Eolie.Proxy.Page1" does not exist (3)
- And a couple of more warnings:
Could not initialize PyGObjectApplication::__on_forms_filled(): g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.NameHasNoOwner: Name "org.gnome.Eolie.Proxy.Page1" does not exist (3)
Could not initialize PyGObject
(eolie:4918): Gtk-WARNING **: Duplicate child name in GtkStack: submenu
Hopefully we can address these things in the future.
Kind regards,
Roel Janssen
^ permalink raw reply [flat|nested] 5+ messages in thread
* [bug#27767] [PATCH] gnu: Add eolie.
2017-07-20 10:02 ` [bug#27767] " Roel Janssen
@ 2017-07-20 13:15 ` Ricardo Wurmus
0 siblings, 0 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2017-07-20 13:15 UTC (permalink / raw)
To: Roel Janssen; +Cc: 27767
Hi Roel,
> I guess I'm too late, but here are some comments.
Thanks for taking the time to comment.
>> + (add-after 'wrap 'wrap-more
>> + (lambda* (#:key inputs outputs #:allow-other-keys)
>> + (let* ((out (assoc-ref outputs "out"))
>> + ;; These libraries must be on LD_LIBRARY_PATH.
>> + (libs '("gtkspell3" "webkitgtk" "libsoup" "libsecret"
>> + "atk" "gtk+" "gsettings-desktop-schemas"
>> + "gobject-introspection"))
>> + (path (string-join
>> + (map (lambda (lib)
>> + (string-append (assoc-ref inputs lib) "/lib"))
>> + libs)
>> + ":")))
>> + (wrap-program (string-append out "/bin/eolie")
>> + `("LD_LIBRARY_PATH" ":" prefix (,path))
>
> This makes it work, but is this something we want to do here?
> There seems to be a deeper issue with how libraries are found.
I realise that this is not pretty, but I haven’t been able to find a
better way to fix this. IIUC the libraries are not loaded by eolie
directly, but through the gobject introspection mechanism. It seems to
me that we need to find a way to fix that mechanism instead of trying to
change client applications.
> I tested the browser and it seems to work quite well, except for:
> - Ads are not blocked, even when the "Block ads" checkbox is checked.
It seems to me that *some* ads are indeed blocked, but by far not all of
them. This seems to be due to a very rudimentary adblock list.
> - It seems to be cloning a repository for adblock_js when running the program:
>
> roel@antelope ~/sources/guix$ /gnu/store/ccvdhd5159qkachbzf4y9k5c6ds4cn4n-eolie-0.9.0/bin/eolie
> Cloning into '/home/roel/.local/share/eolie/adblock_js'...
> Could not initialize PyGObjectremote: Counting objects: 74, done.
> remote: Total 74 (delta 0), reused 0 (delta 0), pack-reused 74
> Unpacking objects: 100% (74/74), done.
>
> The 'remote' for this repository is:
> https://github.com/gnumdk/eolie-adblock.git
This is the block list. Epiphany does something similar regularly,
though it will just fetch a single file and not use git. I wonder if
eolie will fall back to using some other mechanism to get an up-to-date
block list when git is not available.
> - I get a couple of Gtk-WARNINGs: […]
> - And a couple of more warnings: […]
I get some of these too, but they don’t seem to affect the browser
features much.
--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
https://elephly.net
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-07-20 13:16 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-19 21:56 [bug#27767] [PATCH] gnu: Add eolie Ricardo Wurmus
2017-07-20 0:50 ` rennes
2017-07-20 6:42 ` bug#27767: " Ricardo Wurmus
2017-07-20 10:02 ` [bug#27767] " Roel Janssen
2017-07-20 13:15 ` Ricardo Wurmus
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.