From patchwork Mon May 10 17:01:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 29236 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id B001327BC82; Mon, 10 May 2021 18:02:41 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS, T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 1DA7127BC81 for ; Mon, 10 May 2021 18:02:41 +0100 (BST) Received: from localhost ([::1]:51440 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lg9Im-0000qq-5u for patchwork@mira.cbaines.net; Mon, 10 May 2021 13:02:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41064) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lg9IA-0008Im-VS for guix-patches@gnu.org; Mon, 10 May 2021 13:02:05 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:50826) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lg9I9-0003aU-O6 for guix-patches@gnu.org; Mon, 10 May 2021 13:02:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lg9I9-0003ux-M1 for guix-patches@gnu.org; Mon, 10 May 2021 13:02:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#48326] [PATCH v3] gnu: Add remmina. References: <70f225a0-3e3d-062c-510d-83c98cad7521@raghavgururajan.name> In-Reply-To: <70f225a0-3e3d-062c-510d-83c98cad7521@raghavgururajan.name> Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 10 May 2021 17:02:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48326 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 48326@debbugs.gnu.org Cc: Raghav Gururajan Received: via spool by 48326-submit@debbugs.gnu.org id=B48326.162066607915011 (code B ref 48326); Mon, 10 May 2021 17:02:01 +0000 Received: (at 48326) by debbugs.gnu.org; 10 May 2021 17:01:19 +0000 Received: from localhost ([127.0.0.1]:34139 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lg9HS-0003u3-PC for submit@debbugs.gnu.org; Mon, 10 May 2021 13:01:19 -0400 Received: from out0.migadu.com ([94.23.1.103]:47722) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lg9HP-0003tt-Vy for 48326@debbugs.gnu.org; Mon, 10 May 2021 13:01:17 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1620666074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IYXZmu9o+d0MKvnjuYLC1hRJwRN5SaRCUog8RWkRxrQ=; b=UKayh26T5gswapHuZZ8fVpqS2VKfE5ve7GEsSmKHd8KBma59LiWoak4CMhPc2bGA/5mKLO 8aM5fTTOHVgBX2YmXW1kxpOqp63oG5GdvHtzxmMImoPc8e0rtbA8QyKJ05Pjy9ueoT9L2/ 6Cj3O/68woshmCYgZEWK0k3FGwPpfZMcKevSmV+EG6f8YAdz8RmpVVpVihmz7Qm/S8Rg4M HRIYS7RsCI+ij9FjDfHuh8cyCRTVcv1nAMh0aO/RtdJFSqhB4P0NMwsOpcRhXqLlJ29euU zXgSjKZlJeuNZIDUzaB6hWsAcbPXZ1WMyOhHDmZnaB5xDQ/0p17F9Q0+KhVZOQ== Date: Mon, 10 May 2021 13:01:10 -0400 Message-Id: <20210510170110.4693-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/remmina.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/packages/remmina.scm (remmina): New variable. --- gnu/local.mk | 1 + gnu/packages/remmina.scm | 159 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 160 insertions(+) create mode 100644 gnu/packages/remmina.scm diff --git a/gnu/local.mk b/gnu/local.mk index 37166bb2fc..0f3d33e1d5 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -485,6 +485,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/readline.scm \ %D%/packages/rednotebook.scm \ %D%/packages/regex.scm \ + %D%/packages/remmina.scm \ %D%/packages/robotics.scm \ %D%/packages/rpc.scm \ %D%/packages/rrdtool.scm \ diff --git a/gnu/packages/remmina.scm b/gnu/packages/remmina.scm new file mode 100644 index 0000000000..8309cb88af --- /dev/null +++ b/gnu/packages/remmina.scm @@ -0,0 +1,159 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Raghav Gururajan +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages remmina) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build utils) + #:use-module (guix build-system cmake) + #:use-module (guix build-system glib-or-gtk) + #:use-module (gnu packages avahi) + #:use-module (gnu packages crypto) + #:use-module (gnu packages cups) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages gtk) + #:use-module (gnu packages pcre) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages rdesktop) + #:use-module (gnu packages spice) + #:use-module (gnu packages ssh) + #:use-module (gnu packages tls) + #:use-module (gnu packages video) + #:use-module (gnu packages vnc) + #:use-module (gnu packages webkit) + #:use-module (gnu packages xorg)) + +(define-public remmina + (package + (name "remmina") + (version "1.4.13") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.com/Remmina/Remmina") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1hc2r42hr34ksbxrybglw5caw0zjhwlybvb5c9s99dr761rmzr27")))) + (build-system cmake-build-system) + (outputs '("out" "plugins")) + (arguments + `(#:tests? #f ; No target + #:configure-flags + (list + "-DWITH_NEWS=OFF") ; Disable online version checking + #:imported-modules + (,@%cmake-build-system-modules + (guix build glib-or-gtk-build-system)) + #:modules + ((guix build cmake-build-system) + ((guix build glib-or-gtk-build-system) + #:prefix glib-or-gtk:) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + ;; To install plugins in separate output. + (("\\$\\{CMAKE_INSTALL_FULL_LIBDIR\\}/remmina/plugins") + (string-append (assoc-ref outputs "plugins") + "/lib/remmina/plugins")) + ;; To prevent REMMINA_RUNTIME_PLUGINDIR set as RPATH. + ;; Else, it causes cycle between outputs. + (("[ \t]*set.*REMMINA_RUNTIME_PLUGINDIR.*$") + "")))) + (add-after 'install 'wrap-progs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each + (lambda (name) + (let ((file (string-append out "/bin/" name)) + (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) + (wrap-program file + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))) + '("remmina" "remmina-file-wrapper"))) + #t)) + (add-after 'wrap-progs 'glib-or-gtk-compile-schemas + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) + (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("intl" ,intltool) + ("pkg-config" ,pkg-config))) + (inputs + `(("app-indicator" ,libappindicator) + ("atk" ,atk) + ("avahi" ,avahi) + ("cairo" ,cairo) + ("cups" ,cups) + ("ffmpeg" ,ffmpeg) + ("freerdp" ,freerdp) ; for rdp plugin + ("gcrypt" ,libgcrypt) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("glib" ,glib) + ("gnome-keyring" ,gnome-keyring) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gtk+" ,gtk+) + ("harfbuzz" ,harfbuzz) + ("json-glib" ,json-glib) + ("libsecret" ,libsecret) ; for secret plugin + ("libsoup" ,libsoup) + ("libssh" ,libssh) ; for ssh plugin + ("libvnc" ,libvnc) ; for vnc plugin + ("openssl" ,openssl) + ("pango" ,pango) + ("pcre" ,pcre) + ("shared-mime-info" ,shared-mime-info) + ("sodium" ,libsodium) + ("spice-client-gtk" ,spice-gtk) ; for spice plugin + ("telepathy" ,telepathy-glib) ; for telepathy plugin + ("vte" ,vte) + ("wayland" ,wayland) + ("webkitgtk" ,webkitgtk) ; for www plugin + ("x11" ,libx11) + ("xext" ,libxext) ; for xdmcp plugin + ("xdg-utils" ,xdg-utils) + ("xkbfile" ,libxkbfile))) ; for nx plugin + (propagated-inputs + `(("dconf" ,dconf))) + (native-search-paths + (list + ;; To load plugins when installed via 'plugin' output. + (search-path-specification + (variable "REMMINA_RUNTIME_PLUGINDIR") + (files + (list + "lib/remmina/plugins"))))) + (search-paths native-search-paths) + (home-page "https://remmina.org/") + (synopsis "Remote Desktop Client") + (description "Remmina is a client to use other desktops remotely. +RDP, VNC, SPICE, NX, XDMCP, SSH and EXEC network protocols are supported.") + (license license:gpl2+)))