From patchwork Fri Jan 31 08:35:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "King, Spencer via Guix-patches\" via" X-Patchwork-Id: 37989 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 32A9A27BBE9; Fri, 31 Jan 2025 08:33:38 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7A46B27BBE2 for ; Fri, 31 Jan 2025 08:33:36 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tdmSX-00044P-AK; Fri, 31 Jan 2025 03:33:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdmSV-00043X-B2 for guix-patches@gnu.org; Fri, 31 Jan 2025 03:33:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdmSU-0006Dm-R7 for guix-patches@gnu.org; Fri, 31 Jan 2025 03:33:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:Subject; bh=Gi69WhsvHZEmWP4opCpcfTYwXjPy8+KJ76cpbMQOOvg=; b=isN5ksZ1RLH6uq8CXIEVpGaksaZ5qEV/DfTgWqSwsY4BREX8yoAaxQKDlZ0p8ke0WhrArjD21MvsutIbRyEq7tB1WN7OILNqprG0FEpq+tDCMpzBrarrigNzRvddVPHavyuFj4sUwasTxB+A/o1Jv8Dygb7tQtfEXHQukgD6BFnDLZiLXEwOZ6XjztiK9sZdNlJ3/DnAOOkGF6E+QwpR6WDhCJQNLVQ+bkgabr8naOBi7rZME5dYE6xzaogt0iZY2vnbTGd4lQL2rjLoZmcZN2i8cY/Gw4+i/SGleAyT8wsVdJa1R0oslZLZYXm0eKNxCEuUcvIxH+JGe597fmTnyg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tdmSU-00045M-Kx for guix-patches@gnu.org; Fri, 31 Jan 2025 03:33:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75962] [PATCH] gnu: Add gambas. Resent-From: iyzsong@envs.net Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 31 Jan 2025 08:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 75962 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75962@debbugs.gnu.org Cc: =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.173831232915603 (code B ref -1); Fri, 31 Jan 2025 08:33:02 +0000 Received: (at submit) by debbugs.gnu.org; 31 Jan 2025 08:32:09 +0000 Received: from localhost ([127.0.0.1]:49856 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tdmRY-00043T-Sp for submit@debbugs.gnu.org; Fri, 31 Jan 2025 03:32:08 -0500 Received: from lists.gnu.org ([2001:470:142::17]:38866) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tdmRV-00042W-DK for submit@debbugs.gnu.org; Fri, 31 Jan 2025 03:32:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdmR9-0003Sw-Hm for guix-patches@gnu.org; Fri, 31 Jan 2025 03:31:41 -0500 Received: from mail.envs.net ([5.199.136.28]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdmR7-0005Ps-1O for guix-patches@gnu.org; Fri, 31 Jan 2025 03:31:39 -0500 Received: from localhost (mail.envs.net [127.0.0.1]) by mail.envs.net (Postfix) with ESMTP id 0601B38A3E59; Fri, 31 Jan 2025 08:31:34 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at mail.envs.net Received: from mail.envs.net ([127.0.0.1]) by localhost (mail.envs.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id iZmWwUSVzDQL; Fri, 31 Jan 2025 08:31:30 +0000 (UTC) Received: from localhost (unknown [112.44.100.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.envs.net (Postfix) with ESMTPSA; Fri, 31 Jan 2025 08:31:30 +0000 (UTC) Received: from localhost.localdomain (localhost.lan [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id fbec3f02; Fri, 31 Jan 2025 08:35:09 +0000 (UTC) Date: Fri, 31 Jan 2025 16:35:02 +0800 Message-ID: <7c58af13a44a9a727c494d056dad188b858c3cf3.1738312496.git.iyzsong@member.fsf.org> X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 Received-SPF: pass client-ip=5.199.136.28; envelope-from=iyzsong@envs.net; helo=mail.envs.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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: , Reply-to: iyzsong@envs.net X-ACL-Warn: , iyzsong--- via Guix-patches X-Patchwork-Original-From: iyzsong--- via Guix-patches via From: "King, Spencer via Guix-patches\" via" Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: 宋文武 * gnu/packages/patches/gambas-fix-desktop-file-creation.patch: New patch. * gnu/packages/gambas.scm: New file. * gnu/local.mk (dist_patch_DATA): Register patch. (GNU_SYSTEM_MODULES): Register file. Change-Id: Ia96b34ce49d0e7512a179f8e55a51dc3449fda08 --- gnu/local.mk | 2 + gnu/packages/gambas.scm | 172 ++++++++++++++++++ .../gambas-fix-desktop-file-creation.patch | 36 ++++ 3 files changed, 210 insertions(+) create mode 100644 gnu/packages/gambas.scm create mode 100644 gnu/packages/patches/gambas-fix-desktop-file-creation.patch base-commit: c994e9262f9dbe4d688f688c92aedb3ee7ba4dfc diff --git a/gnu/local.mk b/gnu/local.mk index e8c807cf63..2e632ca2c3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -310,6 +310,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/ftp.scm \ %D%/packages/fribidi.scm \ %D%/packages/fvwm.scm \ + %D%/packages/gambas.scm \ %D%/packages/game-development.scm \ %D%/packages/games.scm \ %D%/packages/gawk.scm \ @@ -1333,6 +1334,7 @@ dist_patch_DATA = \ %D%/packages/patches/fuzzylite-soften-float-equality.patch \ %D%/packages/patches/fxdiv-system-libraries.patch \ %D%/packages/patches/gajim-honour-GAJIM_PLUGIN_PATH.patch \ + %D%/packages/patches/gambas-fix-desktop-file-creation.patch \ %D%/packages/patches/ganeti-disable-version-symlinks.patch \ %D%/packages/patches/ganeti-haskell-pythondir.patch \ %D%/packages/patches/ganeti-lens-compat.patch \ diff --git a/gnu/packages/gambas.scm b/gnu/packages/gambas.scm new file mode 100644 index 0000000000..632f3134b9 --- /dev/null +++ b/gnu/packages/gambas.scm @@ -0,0 +1,172 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2025 宋文武 +;;; +;;; 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 gambas) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system gnu) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (gnu packages ) + #:use-module (gnu packages audio) + #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages crypto) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) + #:use-module (gnu packages databases) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gl) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages gtk) + #:use-module (gnu packages image) + #:use-module (gnu packages libffi) + #:use-module (gnu packages mail) + #:use-module (gnu packages maths) + #:use-module (gnu packages multiprecision) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pcre) + #:use-module (gnu packages pdf) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages qt) + #:use-module (gnu packages sdl) + #:use-module (gnu packages video) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages tls) + #:use-module (gnu packages webkit) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) + +(define-public gambas + (package + (name "gambas") + (version "3.20.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/gambas/gambas") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1fw3nark7vaw4vbmdvaaqb0an4838k0hhwwvc3dqd7f2033d41xq")) + (patches + (search-patches "gambas-fix-desktop-file-creation.patch")))) + (build-system gnu-build-system) + (arguments + (list + #:bootstrap-scripts #~'("reconf-all") + ;; XXX: Gambas executables expect a '#! /usr/bin/env gbr3' shebang. + #:patch-shebangs? #f + #:configure-flags + #~(list + (string-append "--with-inotify-includes=" + #$(this-package-input "glibc") + "/include") + (string-append "--with-crypt-libraries=" + #$(this-package-input "libxcrypt") + "/lib") + (string-append "--with-gmp-includes=" + #$(this-package-input "gmp") + "/include") + (string-append "--with-gmp-libraries=" + #$(this-package-input "gmp") + "/lib") + (string-append "--with-mysql-includes=" + #$(this-package-input "mysql") + "/include/mysql") + (string-append "--with-mysql-libraries=" + #$(this-package-input "mysql") + "/lib") + (string-append "--with-postgresql-includes=" + #$(this-package-input "postgresql") + "/include") + (string-append "--with-postgresql-libraries=" + #$(this-package-input "postgresql") + "/lib") + (string-append "--with-bzlib2-includes=" + #$(this-package-input "bzip2") + "/include") + (string-append "--with-bzlib2-libraries=" + #$(this-package-input "bzip2") + "/lib")))) + (native-inputs + (list autoconf + automake + libtool + gettext-minimal + pkg-config)) + (inputs + (list alure + bzip2 + cairo + curl + dbus + gdk-pixbuf + glew + glibc + glu + gmime + gmp + gsl + gst-plugins-base + gstreamer + gtk+ + imlib2 + libffi + libgnome-keyring + libice + libsm + libxcrypt + libxml2 + libxslt + libxtst + (list zstd "lib") + mesa + mysql + ncurses + openal + openssl + pcre2 + poppler + postgresql + qtbase + qtbase-5 + qtsvg + qtsvg-5 + qtwebengine + qtwebengine-5 + qtx11extras + sdl2 + sdl2-image + sdl2-mixer + sdl2-ttf + sqlite + unixodbc + v4l-utils + webkitgtk-for-gtk3 + zlib)) + (home-page "https://gambas.sourceforge.net/") + (synopsis "Object-oriented language and development platform") + (description + "GAMBAS is a free implementation of a graphical development environment +based on a BASIC interpreter and a full development platform. It is very +inspired by Visual Basic and Java.") + (license license:gpl2+))) diff --git a/gnu/packages/patches/gambas-fix-desktop-file-creation.patch b/gnu/packages/patches/gambas-fix-desktop-file-creation.patch new file mode 100644 index 0000000000..348eac1881 --- /dev/null +++ b/gnu/packages/patches/gambas-fix-desktop-file-creation.patch @@ -0,0 +1,36 @@ +From 33ede510e056c8580346d2652b9dd0e1a1a1d961 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= +Date: Fri, 31 Jan 2025 15:55:55 +0800 +Subject: [PATCH] Store the temporary application desktop file in the + $XDG_DATA_HOME directory. + +[GB.GUI.BASE] +* BUG: Store the temporary application desktop file in the $XDG_DATA_HOME directory. + +Upstream-status: Submitted to Benoît Minisini +--- + comp/src/gb.gui.base/.src/_Gui.class | 8 +------- + 1 file changed, 1 insertion(+), 7 deletions(-) + +diff --git a/comp/src/gb.gui.base/.src/_Gui.class b/comp/src/gb.gui.base/.src/_Gui.class +index 3cdee23da..5c9a49f93 100644 +--- a/comp/src/gb.gui.base/.src/_Gui.class ++++ b/comp/src/gb.gui.base/.src/_Gui.class +@@ -131,13 +131,7 @@ Static Public Sub _InitApp() As String + Dim iPos As Integer + + $sAppId = "org.gambas." & CStr(Application.Handle) +- +- For Each sDir In Split(Env["XDG_DATA_DIRS"], ":") +- If sDir Begins (User.Home & "/") Then Break +- sDir = "" +- Next +- +- If Not sDir Then sDir = User.Home &/ ".local/share" ++ sDir = GetDir("XDG_DATA_HOME", User.Home &/ ".local/share") + sDir &/= "applications" + + Main.MkDir(sDir) +-- +2.47.1 +