From patchwork Wed Mar 20 15:36:52 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Daniel Ziltener X-Patchwork-Id: 62021 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 E0B4E27BBEB; Wed, 20 Mar 2024 16:35:55 +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=-1.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,PP_MIME_FAKE_ASCII_TEXT,SPF_HELO_PASS, URIBL_BLOCKED autolearn=no 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 E979227BBE2 for ; Wed, 20 Mar 2024 16:35:54 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rmyuV-0000st-4A; Wed, 20 Mar 2024 12:35:27 -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 ) id 1rmyuR-0000s1-Em for guix-patches@gnu.org; Wed, 20 Mar 2024 12:35:24 -0400 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 1rmyuR-0007Vj-6W for guix-patches@gnu.org; Wed, 20 Mar 2024 12:35:23 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rmyv4-0001Rq-IF for guix-patches@gnu.org; Wed, 20 Mar 2024 12:36:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#69918] [PATCH] gnu: smalltalk: add pharo-vm 10.1.1. Resent-From: Daniel Ziltener Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 20 Mar 2024 16:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 69918 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 69918@debbugs.gnu.org Cc: dziltener@lyrion.ch X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17109525075490 (code B ref -1); Wed, 20 Mar 2024 16:36:02 +0000 Received: (at submit) by debbugs.gnu.org; 20 Mar 2024 16:35:07 +0000 Received: from localhost ([127.0.0.1]:49018 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rmyu8-0001QQ-CP for submit@debbugs.gnu.org; Wed, 20 Mar 2024 12:35:07 -0400 Received: from lists.gnu.org ([209.51.188.17]:54898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rmyu4-0001Px-6D for submit@debbugs.gnu.org; Wed, 20 Mar 2024 12:35:03 -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 ) id 1rmytQ-0000cB-7q for guix-patches@gnu.org; Wed, 20 Mar 2024 12:34:20 -0400 Received: from 195-15-241-199.dc3-a.pub1.etik-cloud.com ([195.15.241.199] helo=lyrion.ch) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rmytG-0006td-1O for guix-patches@gnu.org; Wed, 20 Mar 2024 12:34:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lyrion.ch; s=20230702; t=1710952443; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc; bh=S1lN2wn3uzydeF4weCdClhWJoU/8pEv/KQOaSyOL9io=; b=pXHV+En0tDZj/7NgUiYhd/juP9LbWvgu4x+C8igCuxCFTRCsjZwNFQHSqo1DiVVBLe7ZPi a27klcl9/vL4xGsFFLawLHX9eiHlrd78lmJa6iYre1xEGe5x57CqK6wbDZM/9xnRDs971E QK6rVP62lA0z4gAnPcQrnLiuBFAKy7dm1RBhKUYO9s1Ex71KUtmCHhoaq1UBRhrV9vLA+q 01mHO+mW2dT7yFFp4EWLPHlmVEBcu2jZ00lPC2rIAV2xHFl43LnigjZROSgXg8FmWDS7Vq 896GknQ5zUP1lLxgERhGLVd3quguuyDtXRe0lQ2Huunsu6xRJJqEkKkwJkQRJQ== Received: from localhost ( [2a00:1f:99c0:3c01:8fc9:e8ec:45e0:6cde]) by lyrion.ch (OpenSMTPD) with ESMTPSA id acbebad7 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Wed, 20 Mar 2024 16:34:03 +0000 (UTC) Message-ID: <163fe58d525795ccdb3f24960655f036@lyrion.ch> Date: Wed, 20 Mar 2024 16:36:52 +0100 Received-SPF: pass client-ip=195.15.241.199; envelope-from=dziltener@lyrion.ch; helo=lyrion.ch X-Spam_score_int: 3 X-Spam_score: 0.3 X-Spam_bar: / X-Spam_report: (0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, FORGED_SPF_HELO=1, KHOP_HELO_FCRDNS=0.001, PP_MIME_FAKE_ASCII_TEXT=0.001, RDNS_DYNAMIC=0.982, SPF_HELO_PASS=-0.001, TVD_RCVD_IP=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=no 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: Daniel Ziltener X-ACL-Warn: , Daniel Ziltener via Guix-patches X-Patchwork-Original-From: Daniel Ziltener via Guix-patches via From: Daniel Ziltener 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 --- gnu/packages/smalltalk.scm | 66 +++++++++++++++++++++++++++++++++++++- 1 file changed, 65 insertions(+), 1 deletion(-) diff --git a/gnu/packages/smalltalk.scm b/gnu/packages/smalltalk.scm index 64146813d1..60e0cc5778 100644 --- a/gnu/packages/smalltalk.scm +++ b/gnu/packages/smalltalk.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2021 Maxime Devos +;;; Copyright © 2024 Daniel Ziltener ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,13 +37,16 @@ (define-module (gnu packages smalltalk) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) #:use-module (gnu packages glib) + #:use-module (gnu packages image) #:use-module (gnu packages libffi) #:use-module (gnu packages libsigsegv) #:use-module (gnu packages linux) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages version-control) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg)) (define-public smalltalk (package @@ -184,3 +188,63 @@ (define-public squeak-vm interactively extensible Web sites.") (home-page "http://squeakvm.org/") (license license:x11))) + +(define-public pharo-vm + (package + (name "pharo-vm") + (version "10.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "http://files.pharo.org/vm/pharo-spur64-headless/Linux-x86_64/source/PharoVM-" version "-32b2be5-Linux-x86_64-c-src.tar.gz")) + (sha256 + (base32 + "1hbkvfrw57sz5nw48z64789yjcry9l1am4hmkndy9dd6i06n2c2n")))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list + (string-append "-DPHARO_LIBRARY_PATH=" + (assoc-ref %outputs "out") "/lib") + "-DGENERATED_SOURCE_DIR=." + "-DALWAYS_INTERACTIVE=on" + "-DBUILD_IS_RELEASE=on" + "-DGENERATE_SOURCES=off" + "-DBUILD_BUNDLE=off") + #:phases + #~(modify-phases %standard-phases + (delete 'check) + (delete 'validate-runpath) + (add-after 'install 'really-install + (lambda _ + (let ((bin (string-append #$output "/bin")) + (lib (string-append #$output "/lib"))) + (mkdir-p bin) + (mkdir-p lib) + (copy-recursively "./build/vm/pharo" + (string-append bin "/pharo")) + (for-each (lambda (file) + (let ((inode (string-append "./build/vm/" file))) + (copy-recursively + inode + (string-append lib "/" file)))) + (with-directory-excursion + "./build/vm" + (find-files "." + (lambda (file stat) + (string-contains file ".so"))))) + (wrap-program (string-append bin "/pharo") + `("LD_LIBRARY_PATH" prefix (,lib))))))))) + (inputs + (list libffi + libgit2 + cairo + freetype + pixman + libpng + util-linux)) + (synopsis "This is the VM used by Pharo") + (home-page "https://www.pharo.org") + (description "This is the VM used by Pharo.") + (license license:expat)))