summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergio Pastor Pérez <sergio.pastorperez@outlook.es>2023-08-02 16:38:49 +0200
committerLudovic Courtès <ludo@gnu.org>2023-08-12 23:18:12 +0200
commitd0a2b422e06aab0cab3a10a47ef378602992577f (patch)
tree193549a823f75e66d8e479714eb5d1e2d8caf3e4
parent6a01add77044d21d6cd6499fbcda8cc00f7264a1 (diff)
gnu: Add ulauncher.
* gnu/packages/xdisorg.scm (ulauncher): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/xdisorg.scm64
1 files changed, 64 insertions, 0 deletions
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index da5ca76e10..553fa8d5e2 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -132,6 +132,8 @@
#:use-module (gnu packages polkit)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages qt)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages syncthing)
@@ -140,6 +142,8 @@
#:use-module (gnu packages tcl)
#:use-module (gnu packages terminals)
#:use-module (gnu packages xml)
+ #:use-module (gnu packages wm)
+ #:use-module (gnu packages webkit)
#:use-module (gnu packages xorg)
#:use-module (gnu packages)
#:use-module (ice-9 match))
@@ -1816,6 +1820,66 @@ but can also follow a growing file, display contents, delete entries and more.")
connectivity of the X server running on a particular @code{DISPLAY}.")
(license license:gpl3+)))
+(define-public ulauncher
+ (package
+ (name "ulauncher")
+ (version "6.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Ulauncher/Ulauncher")
+ (commit "1e68d47473f8e77d375cb4eca644c3cda68ed7e9")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1c2czlrsf5aq8c88qliqbnqvf04q9cnjc1j6hivqa0w260mzjll1"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-libX11
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "ulauncher/utils/xinit.py"
+ (("libX11.so.6")
+ (search-input-file inputs "/lib/libX11.so")))))
+ (add-after 'unpack 'fix-usr
+ (lambda _
+ (substitute* "setup.py"
+ (("\\{sys.prefix\\}")
+ (string-append #$output)))))
+ (add-after 'unpack 'fix-os-release
+ (lambda _
+ (define (touch file)
+ (call-with-output-file file
+ (const #t)))
+ (let* ((hard-path "/etc/os-release")
+ (fixed-path (string-append #$output
+ hard-path)))
+ ;; Make it relative
+ ;; Update hardcoded path to something
+ ;; within the build enviroment.
+ (substitute* "ulauncher/utils/environment.py"
+ ((hard-path)
+ fixed-path))
+ ;; Create directory for the dummy file.
+ (mkdir-p (string-append #$output "/etc"))
+ (touch fixed-path))))
+ (add-before 'check 'env-setup
+ ;; The test require access to home to put temporary files.
+ (lambda _
+ (setenv "HOME"
+ (getcwd)))))))
+ (native-inputs (list intltool python-distutils-extra python-mock))
+ (inputs (list libx11 python-levenshtein python-pycairo))
+ (propagated-inputs (list keybinder libwnck gsettings-desktop-schemas
+ python-pygobject webkitgtk-with-libsoup2))
+ (home-page "https://ulauncher.io")
+ (synopsis "Application launcher for Linux")
+ (description
+ "Ulauncher is a fast application launcher for Linux. It is written in
+Python, using GTK+, and features: App Search (fuzzy matching), Calculator,
+Extensions, Shortcuts, File browser mode and Custom Color Themes.")
+ (license license:gpl3+)))
+
(define-public rofi
(package
(name "rofi")