me
/
guix
Archived
1
0
Fork 0

gnu: Add gpaste.

* gnu/packages/gnome-xyz.scm (gpaste): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Attila Lendvai 2022-01-07 13:50:30 +01:00 committed by Nicolas Goaziou
parent 4b8a5205a6
commit a485e1e663
No known key found for this signature in database
GPG Key ID: DA00B4F048E92F2D
3 changed files with 81 additions and 0 deletions

View File

@ -1196,6 +1196,7 @@ dist_patch_DATA = \
%D%/packages/patches/go-github-com-urfave-cli-fix-tests.patch \
%D%/packages/patches/go-github-com-urfave-cli-v2-fix-tests.patch \
%D%/packages/patches/go-skip-gc-test.patch \
%D%/packages/patches/gpaste-fix-paths.patch \
%D%/packages/patches/gpm-glibc-2.26.patch \
%D%/packages/patches/gpodder-disable-updater.patch \
%D%/packages/patches/gpsbabel-fix-i686-test.patch \

View File

@ -14,6 +14,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Songlin Jiang <hollowman@hollowman.ml>
;;; Copyright © 2021 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2021 Attila Lendvai <attila@lendvai.name>
;;;
;;; This file is part of GNU Guix.
;;;
@ -35,13 +36,16 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system copy)
#:use-module (guix build-system meson)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages build-tools)
@ -686,6 +690,58 @@ scrollable tiling of windows and per monitor workspaces. It's inspired by paper
notebooks and tiling window managers.")
(license license:gpl3)))
(define-public gpaste
(package
(name "gpaste")
(version "3.42.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Keruspe/GPaste")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1k5qvgzwl357k72qfim5zfas2a0n6j24jnlm1v472l7h6gb6lssm"))
(patches
(search-patches "gpaste-fix-paths.patch"))))
(build-system meson-build-system)
(native-inputs
(list autoconf automake gettext-minimal gobject-introspection
(list glib "bin") ; for glib-compile-resources
libtool pkg-config vala))
(inputs
(list appstream-glib libarchive gjs mutter graphene))
(arguments
(list #:meson meson-0.59 ;positional arguments error with meson 0.60
#:glib-or-gtk? #true
#:configure-flags
#~(list
(string-append "-Dcontrol-center-keybindings-dir="
#$output "/share/gnome-control-center/keybindings")
(string-append "-Ddbus-services-dir="
#$output "/share/dbus-1/services")
(string-append "-Dsystemd-user-unit-dir="
#$output "/etc/systemd/user"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-introspection-install-dir
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* '("src/gnome-shell/extension.js"
"src/gnome-shell/prefs.js")
(("@typelibPath@")
(string-append out "/lib/girepository-1.0/")))))))))
(home-page "https://github.com/Keruspe/GPaste")
(synopsis "Clipboard management system for GNOME Shell")
(description "GPaste is a clipboard manager, a tool which allows you to
keep a trace of what youre copying and pasting. Is is really useful when
you go through tons of documentation and you want to keep around a bunch of
functions you might want to use, for example. The clipboard manager will
store an history of everything you do, so that you can get back to older
copies you now want to paste.")
(license license:bsd-2)))
(define-public arc-theme
(package
(name "arc-theme")

View File

@ -0,0 +1,24 @@
This is copied from NixOS, which is under MIT licence.
https://github.com/NixOS/nixpkgs/blob/master/pkgs/desktops/gnome/misc/gpaste/
--- a/src/gnome-shell/extension.js
+++ b/src/gnome-shell/extension.js
@@ -6,6 +6,8 @@
const Config = imports.misc.config;
+imports.gi.GIRepository.Repository.prepend_search_path('@typelibPath@');
+
imports.gi.versions.Clutter = Config.LIBMUTTER_API_VERSION;
imports.gi.versions.GLib = '2.0';
imports.gi.versions.GPaste = '1.0';
--- a/src/gnome-shell/prefs.js
+++ b/src/gnome-shell/prefs.js
@@ -6,6 +6,8 @@
const Gettext = imports.gettext;
+imports.gi.GIRepository.Repository.prepend_search_path('@typelibPath@');
+
//const { GPaste } = imports.gi;
const ExtensionUtils = imports.misc.extensionUtils;