GNU bug report logs - #78070
[WIP/HELP] [PATCH] gnu: smalltalk: Enable all features.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Andrew Wong <wongandj@HIDDEN>; Keywords: patch; Done: Andrew Wong <brosasaki@HIDDEN>; Maintainer for guix-patches is guix-patches@HIDDEN.
bug closed, send any further explanations to 78070 <at> debbugs.gnu.org and Andrew Wong <wongandj@HIDDEN> Request was from Andrew Wong <brosasaki@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 26 Apr 2025 01:34:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Apr 25 21:34:00 2025
Received: from localhost ([127.0.0.1]:55637 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u8UQW-00040o-EX
	for submit <at> debbugs.gnu.org; Fri, 25 Apr 2025 21:34:00 -0400
Received: from lists.gnu.org ([2001:470:142::17]:53712)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <wongandj@HIDDEN>)
 id 1u8UQP-00040C-Qi
 for submit <at> debbugs.gnu.org; Fri, 25 Apr 2025 21:33:53 -0400
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 <wongandj@HIDDEN>)
 id 1u8UQH-0000BD-Ow
 for guix-patches@HIDDEN; Fri, 25 Apr 2025 21:33:41 -0400
Received: from p-east3-cluster6-host3-snip4-1.eps.apple.com ([57.103.85.152]
 helo=outbound.qs.icloud.com)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <wongandj@HIDDEN>)
 id 1u8UQF-0001xu-QM
 for guix-patches@HIDDEN; Fri, 25 Apr 2025 21:33:41 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=icloud.com;
 s=1a1hai; bh=Tk+qmtbJNxsCIrdeoF6lwSqkTGjPhJ2n4AQpopPMgpc=;
 h=From:To:Subject:Date:Message-ID:MIME-Version:x-icloud-hme;
 b=nPSxdg7clftMS/nr/YHlfzulwflnuenZNDseflDByhyLGZ3/tWZxs/PmoyGQMuBCC
 LTexjpTzNbiOXOiVq3WMlUQz2X+CzvJBoWlB/EqvkBiy5I47GAFggIeGV0nztIcVTI
 F5Cak/dfpFDMxpBLAH7c1+Pp6E7vKUmCG5eQv8z5a776P8qhnOmZvEIRqrNFagfwJl
 f+pAqWAX4MZt9E1Aebwa6cTLgOJAVmV70zygMWAn8LUUgAIc2mW1AywyQj6n4AIG4z
 OWBIUCpszCqyfrPrHoIrsGuitba/pOVS5um3eVUIdCGGOOXrb8j2KHtCTssdWsTbi+
 D/048goI0NXew==
Received: from wongworks.lan (unknown [17.57.155.37])
 by outbound.qs.icloud.com (Postfix) with ESMTPSA id B68331800176;
 Sat, 26 Apr 2025 01:33:33 +0000 (UTC)
From: Andrew Wong <wongandj@HIDDEN>
To: guix-patches@HIDDEN
Subject: [WIP/HELP] [PATCH] gnu: smalltalk: Enable all features.
Date: Fri, 25 Apr 2025 21:23:54 -0400
Message-ID: <a5492a486b60230be87e1c187455bfff190a4d57.1745630634.git.wongandj@HIDDEN>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Proofpoint-GUID: lib4B8Pd3jCDWCE1BEHBIw8h1S5Kuw-2
X-Proofpoint-ORIG-GUID: lib4B8Pd3jCDWCE1BEHBIw8h1S5Kuw-2
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40
 definitions=2025-04-25_07,2025-04-24_02,2025-02-21_01
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0
 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=936 adultscore=0
 suspectscore=0 phishscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx
 scancount=1 engine=8.22.0-2503100000 definitions=main-2504260010
Received-SPF: pass client-ip=57.103.85.152; envelope-from=wongandj@HIDDEN;
 helo=outbound.qs.icloud.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
Cc: Andrew Wong <wongandj@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

* gnu/packages/smalltalk.scm(smalltalk): Enable all features.

Change-Id: I9514526b6313c0240e1f206f0c8b9b94ed9f2553
---

I've been trying to enable the rest of GNU Smalltalk's features and
libraries--specifically, the 'gst-browser' feature--so that it can get full use
as an educational tool. However, I've hit some roadblocks in development. In
particular, although I've gotten the GTK library to build, it seems to have
missing symbols; Also, the build process cannot find Tk, even when it is in the
inputs. This leaves the software without any GUI libraries.

Would anyone with more knowledge/experience regarding the gnu build
system, autotools, or smalltalk be able to take a look at what's going on?

I am aware that enabling all of the features will bloat the closure size, as was
warned, but after enabling them I hope to split the package up into multiple
outputs to bring it back down.

Any insight or advice is appreciated!

 gnu/packages/smalltalk.scm | 49 +++++++++++++++++++++++++-------------
 1 file changed, 33 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/smalltalk.scm b/gnu/packages/smalltalk.scm
index 5c5b93236a..25f824a689 100644
--- a/gnu/packages/smalltalk.scm
+++ b/gnu/packages/smalltalk.scm
@@ -58,6 +58,13 @@ (define-public smalltalk
       (sha256
        (base32
         "1zb2h5cbz1cwybqjl24lflw359lwj7sjvvhwb4x6miypzhwq4qh0"))
+      (modules '((guix build utils)))
+      (snippet '(begin
+                  ;; This stops an error where this script fails on line 70 when it
+                  ;; tries to print to stdout. This may be the reason why the browser
+                  ;; is broken, but the same function uses `print` to print error
+                  ;; messages, so it may be something else.
+                  (substitute* "packages/gtk/mkorder.awk" (("^.+print.+$") ""))))
       ;; XXX: To be removed with the next release of Smalltalk.
       (patches (search-patches "smalltalk-multiplication-overflow.patch"))))
     (build-system gnu-build-system)
@@ -68,24 +75,34 @@ (define-public smalltalk
            autoconf
            automake
            libtool
-           zip))
-    ;; TODO: These optional dependencies raise the closure size to ~1 GiB
-    ;; from the current ~100 MiB, although some of them might be very
-    ;; useful for end users:
-    ;;  - freeglut
-    ;;  - glib
-    ;;  - gobject-introspection
-    ;;  - gtk+-2
-    ;;  - tcl/tk
-    ;;  - SDL (sdl-union)
-    ;;  - sqlite
-    ;;  - zlib
+           zip
+           (@ (gnu packages emacs) emacs-minimal)                ;for comint.el
+           ;; (@ (gnu packages gettext) gettext)
+           ))
     (inputs
-     (list gmp libffi libltdl libsigsegv lightning))
+     (list gmp libffi libltdl libsigsegv lightning
+           (@ (gnu packages readline) readline)
+           (@ (gnu packages tls) gnutls)
+           (@ (gnu packages tcl) tcl)    ;for Tcl/Tk and tclsh
+           ;; (@ (gnu packages tcl) tk)     ;this is not detected, so no BloxTK
+           (@ (gnu packages sqlite) sqlite)
+           (@ (gnu packages dbm) gdbm)
+           (@ (gnu packages gtk) cairo)
+           (@ (gnu packages glib) glib)
+           (@ (gnu packages glib) gobject-introspection)
+           (@ (gnu packages gtk) gtk+-2)
+           (@ (gnu packages xorg) libx11)
+           (@ (gnu packages gl) mesa)   ;for gl.h
+           (@ (gnu packages gl) freeglut)
+           (@ (gnu packages sdl) sdl12-compat)
+           (@ (gnu packages sdl) sdl-image)
+           (@ (gnu packages sdl) sdl-mixer)
+           ;; there is no sdl-sound
+           (@ (gnu packages sdl) sdl-ttf)
+           (@ (gnu packages xml) expat) ;xml parser
+           (@ (gnu packages compression) zlib)))
     (arguments
-     `(;; FIXME: Tests fail on x86-64 in the build container, but they pass
-       ;; in a regular shell.
-       #:tests? ,(not (target-x86-64?))
+     `(#:tests? #t ;old note says tests fail for x86-64; works on my machine
        #:phases
        (modify-phases %standard-phases
          ;; XXX: To be removed with the next release of Smalltalk.

base-commit: f7c41ab31f5023023385500f6eb9083d23dd1ccb
-- 
2.49.0





Acknowledgement sent to Andrew Wong <wongandj@HIDDEN>:
New bug report received and forwarded. Copy sent to guix-patches@HIDDEN. Full text available.
Report forwarded to guix-patches@HIDDEN:
bug#78070; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sat, 7 Jun 2025 17:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.