GNU bug report logs - #77645
[PATCH] gnu: Add python-surf.

Previous Next

Package: guix-patches;

Reported by: Cayetano Santos <csantosb <at> inventati.org>

Date: Tue, 8 Apr 2025 14:05:02 UTC

Severity: normal

Tags: patch

Done: Andreas Enge <andreas <at> enge.fr>

To reply to this bug, email your comments to 77645 AT debbugs.gnu.org.
There is no need to reopen the bug first.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to csantosb <at> inventati.org, ekaitz <at> elenq.tech, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Tue, 08 Apr 2025 14:05:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Cayetano Santos <csantosb <at> inventati.org>:
New bug report received and forwarded. Copy sent to csantosb <at> inventati.org, ekaitz <at> elenq.tech, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org. (Tue, 08 Apr 2025 14:05:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Cayetano Santos <csantosb <at> inventati.org>
To: guix-patches <at> gnu.org
Cc: Cayetano Santos <csantosb <at> inventati.org>
Subject: [PATCH] gnu: Add python-surf.
Date: Tue,  8 Apr 2025 16:03:01 +0200
* gnu/packages/electronics.scm (python-surf): New variable.

Change-Id: Iddedfd5acfe3dbe04e092de27b42b6fdf1c95fb1
---
 gnu/packages/electronics.scm | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 09875e4d63..bbd9c03ea9 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -64,7 +64,8 @@ (define-module (gnu packages electronics)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages stb)
-  #:use-module (gnu packages toolkits))
+  #:use-module (gnu packages toolkits)
+  #:use-module (gnu packages version-control))
 
 (define-public libserialport
   (package
@@ -597,3 +598,36 @@ (define-public python-vsg
      "VSG lets you define a VHDL coding style and provides a command-line tool
 to enforce it.")
     (license license:gpl3+)))
+
+(define-public python-surf
+  (package
+    (name "python-surf")
+    (version "2.57.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/slaclab/surf/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ncb34mdxaw0m6cnk7kvl7mkhwa6hpcxkc2lgarwcmmnfydr8kg3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'remove-deps
+            (lambda _
+              (invoke "git" "init") ;expects a git repo
+              ;; fix version
+              (substitute* "setup.py"
+                (("rawVer .*")
+                 (string-append "rawVer = \"v"
+                                #$version "\""))))))))
+    (native-inputs (list python-setuptools python-wheel python-gitpython
+                         git-minimal/pinned))
+    (home-page "https://slaclab.github.io/surf/")
+    (synopsis "SLAC Ultimate RTL Framework")
+    (description "A huge VHDL library for FPGA development.")
+    (license license:bsd-3)))

base-commit: 1dab24555a494beb3db5a335c675f07043e77f1c
-- 
2.49.0





Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Tue, 08 Apr 2025 19:19:02 GMT) Full text and rfc822 format available.

Message #8 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: Cayetano Santos <csantosb <at> inventati.org>
Cc: 77645 <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add python-surf.
Date: Tue, 8 Apr 2025 21:17:42 +0200
Hello Cayetano,

Am Tue, Apr 08, 2025 at 04:03:01PM +0200 schrieb Cayetano Santos:
> +    (description "A huge VHDL library for FPGA development.")

could you please replace this by full sentences, preferably a little
longer than just some keywords, and without marketing speak such as
"huge"?

I do not know if you have run "guix lint" on the package, which is
always a good idea.

Thanks,

Andreas





Information forwarded to csantosb <at> inventati.org, ekaitz <at> elenq.tech, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Wed, 09 Apr 2025 08:17:01 GMT) Full text and rfc822 format available.

Message #11 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Cayetano Santos <csantosb <at> inventati.org>
To: 77645 <at> debbugs.gnu.org
Cc: Cayetano Santos <csantosb <at> inventati.org>
Subject: [PATCH v2] gnu: Add python-surf.
Date: Wed,  9 Apr 2025 10:15:32 +0200
* gnu/packages/electronics.scm (python-surf): New variable.

Change-Id: Iddedfd5acfe3dbe04e092de27b42b6fdf1c95fb1
---
 gnu/packages/electronics.scm | 39 +++++++++++++++++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 09875e4d63..74d9426420 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -64,7 +64,8 @@ (define-module (gnu packages electronics)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages stb)
-  #:use-module (gnu packages toolkits))
+  #:use-module (gnu packages toolkits)
+  #:use-module (gnu packages version-control))
 
 (define-public libserialport
   (package
@@ -597,3 +598,39 @@ (define-public python-vsg
      "VSG lets you define a VHDL coding style and provides a command-line tool
 to enforce it.")
     (license license:gpl3+)))
+
+(define-public python-surf
+  (package
+    (name "python-surf")
+    (version "2.57.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/slaclab/surf/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ncb34mdxaw0m6cnk7kvl7mkhwa6hpcxkc2lgarwcmmnfydr8kg3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'remove-deps
+            (lambda _
+              (invoke "git" "init") ;expects a git repo
+              ;; fix version
+              (substitute* "setup.py"
+                (("rawVer .*")
+                 (string-append "rawVer = \"v"
+                                #$version "\""))))))))
+    (native-inputs (list python-setuptools python-wheel python-gitpython
+                         git-minimal/pinned))
+    (home-page "https://slaclab.github.io/surf/")
+    (synopsis "SLAC Ultimate RTL Framework")
+    (description
+     "Surf is a python library with support functions for VHDL gateware
+digital design.  It provides implementation modules compatible with FPGA and ASIC
+design.")
+    (license license:bsd-3)))

base-commit: 1dab24555a494beb3db5a335c675f07043e77f1c
-- 
2.49.0





Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Sun, 13 Apr 2025 20:49:01 GMT) Full text and rfc822 format available.

Message #14 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Sharlatan Hellseher <sharlatanus <at> gmail.com>
To: 77645 <at> debbugs.gnu.org
Cc: andreas <at> enge.fr, csantosb <at> inventati.org
Subject: [PATCH] gnu: Add python-surf.
Date: Sun, 13 Apr 2025 21:48:28 +0100
[Message part 1 (text/plain, inline)]
Hi,

I'm not sure if this patch may be accepted to Guix because of the
licence:

--8<---------------cut here---------------start------------->8---
Copyright (c) 2025, The Board of Trustees of the Leland Stanford Junior 
University, through SLAC National Accelerator Laboratory (subject to receipt 
of any required approvals from the U.S. Dept. of Energy). All rights reserved. 
Redistribution and use in source and binary forms, with or without 
modification, are permitted provided that the following conditions are met:
--8<---------------cut here---------------end--------------->8---
<https://github.com/slaclab/surf/blob/main/LICENSE.txt>

--
Thanks,
Oleg
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Sun, 13 Apr 2025 20:49:02 GMT) Full text and rfc822 format available.

Message #17 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Sharlatan Hellseher <sharlatanus <at> gmail.com>
To: 77645 <at> debbugs.gnu.org
Cc: andreas <at> enge.fr, csantosb <at> inventati.org
Subject: [PATCH] gnu: Add python-surf.
Date: Sun, 13 Apr 2025 21:48:43 +0100
[Message part 1 (text/plain, inline)]
Hi,

I'm not sure if this patch may be accepted to Guix because of the
licence:

--8<---------------cut here---------------start------------->8---
Copyright (c) 2025, The Board of Trustees of the Leland Stanford Junior 
University, through SLAC National Accelerator Laboratory (subject to receipt 
of any required approvals from the U.S. Dept. of Energy). All rights reserved. 
Redistribution and use in source and binary forms, with or without 
modification, are permitted provided that the following conditions are met:
--8<---------------cut here---------------end--------------->8---
<https://github.com/slaclab/surf/blob/main/LICENSE.txt>

--
Thanks,
Oleg
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Mon, 14 Apr 2025 08:08:02 GMT) Full text and rfc822 format available.

Message #20 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: Sharlatan Hellseher <sharlatanus <at> gmail.com>
Cc: csantosb <at> inventati.org, 77645 <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add python-surf.
Date: Mon, 14 Apr 2025 10:07:28 +0200
Hello Oleg,

thanks for looking at the license, that is always an important step in
package submission and acceptance.

Am Sun, Apr 13, 2025 at 09:48:28PM +0100 schrieb Sharlatan Hellseher:
> --8<---------------cut here---------------start------------->8---
> Copyright (c) 2025, The Board of Trustees of the Leland Stanford Junior 
> University, through SLAC National Accelerator Laboratory (subject to receipt 
> of any required approvals from the U.S. Dept. of Energy). All rights reserved. 
> Redistribution and use in source and binary forms, with or without 
> modification, are permitted provided that the following conditions are met:
> --8<---------------cut here---------------end--------------->8---
> <https://github.com/slaclab/surf/blob/main/LICENSE.txt>

The license given there is essentially the bsd-3 license:
   https://directory.fsf.org/wiki/License:BSD-3-Clause
with "the author" replaced by the actual name of the copyright holder.

So it is fine to add the package to Guix; I think we use the
(define* (non-copyleft uri #:optional (comment ""))
  "Return a lax, permissive, non-copyleft license (for example a variant of
the 3-clause BSD license or the Expat license), whose full text can be found
at URI, which may be a file:// URI pointing the package's tree."
  (license "non-copyleft"
           uri
           (string-append
            "This is a lax, non-copyleft free software license.  "
            "Check the URI for details.  "
            comment)))
form of the license in this case, for "a variant of the 3-clause BSD
license".

Andreas





Information forwarded to csantosb <at> inventati.org, ekaitz <at> elenq.tech, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Mon, 14 Apr 2025 08:50:02 GMT) Full text and rfc822 format available.

Message #23 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Cayetano Santos <csantosb <at> inventati.org>
To: 77645 <at> debbugs.gnu.org
Cc: Cayetano Santos <csantosb <at> inventati.org>
Subject: [PATCH v2] gnu: Add python-surf.
Date: Mon, 14 Apr 2025 10:48:16 +0200
* gnu/packages/electronics.scm (python-surf): New variable.

Change-Id: Iddedfd5acfe3dbe04e092de27b42b6fdf1c95fb1
---
 gnu/packages/electronics.scm | 39 +++++++++++++++++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index 0d2d9db73c..239a51cd3e 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -65,7 +65,8 @@ (define-module (gnu packages electronics)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages stb)
-  #:use-module (gnu packages toolkits))
+  #:use-module (gnu packages toolkits)
+  #:use-module (gnu packages version-control))
 
 (define-public libserialport
   (package
@@ -645,3 +646,39 @@ (define-public python-vsg
      "VSG lets you define a VHDL coding style and provides a command-line tool
 to enforce it.")
     (license license:gpl3+)))
+
+(define-public python-surf
+  (package
+    (name "python-surf")
+    (version "2.57.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/slaclab/surf/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ncb34mdxaw0m6cnk7kvl7mkhwa6hpcxkc2lgarwcmmnfydr8kg3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'remove-deps
+            (lambda _
+              (invoke "git" "init") ;expects a git repo
+              ;; fix version
+              (substitute* "setup.py"
+                (("rawVer .*")
+                 (string-append "rawVer = \"v"
+                                #$version "\""))))))))
+    (native-inputs (list python-setuptools python-wheel python-gitpython
+                         git-minimal/pinned))
+    (home-page "https://slaclab.github.io/surf/")
+    (synopsis "SLAC Ultimate RTL Framework")
+    (description
+     "Surf is a python library with support functions for VHDL gateware
+digital design.  It provides implementation modules compatible with FPGA and ASIC
+design.")
+    (license license:non-copyleft)))

base-commit: 98a6071b5a49dc160824617a1d359932962763f8
-- 
2.49.0





Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Mon, 14 Apr 2025 08:51:02 GMT) Full text and rfc822 format available.

Message #26 received at 77645 <at> debbugs.gnu.org (full text, mbox):

From: Cayetano Santos <csantosb <at> inventati.org>
To: Andreas Enge <andreas <at> enge.fr>
Cc: Sharlatan Hellseher <sharlatanus <at> gmail.com>, 77645 <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add python-surf.
Date: Mon, 14 Apr 2025 10:50:18 +0200
[Message part 1 (text/plain, inline)]
>Mon 14 Apr 2025 at 10:07, Andreas Enge <andreas <at> enge.fr> wrote:

> Hello Oleg,
>
> thanks for looking at the license, that is always an important step in
> package submission and acceptance.
>
> Am Sun, Apr 13, 2025 at 09:48:28PM +0100 schrieb Sharlatan Hellseher:
>> --8<---------------cut here---------------start------------->8---
>> Copyright (c) 2025, The Board of Trustees of the Leland Stanford Junior
>> University, through SLAC National Accelerator Laboratory (subject to receipt
>> of any required approvals from the U.S. Dept. of Energy). All rights reserved.
>> Redistribution and use in source and binary forms, with or without
>> modification, are permitted provided that the following conditions are met:
>> --8<---------------cut here---------------end--------------->8---
>> <https://github.com/slaclab/surf/blob/main/LICENSE.txt>
>
> The license given there is essentially the bsd-3 license:
>    https://directory.fsf.org/wiki/License:BSD-3-Clause
> with "the author" replaced by the actual name of the copyright holder.
>
> So it is fine to add the package to Guix; I think we use the
> (define* (non-copyleft uri #:optional (comment ""))
>   "Return a lax, permissive, non-copyleft license (for example a variant of
> the 3-clause BSD license or the Expat license), whose full text can be found
> at URI, which may be a file:// URI pointing the package's tree."
>   (license "non-copyleft"
>            uri
>            (string-append
>             "This is a lax, non-copyleft free software license.  "
>             "Check the URI for details.  "
>             comment)))
> form of the license in this case, for "a variant of the 3-clause BSD
> license".
>
> Andreas

Thanks for noticing about the license. I just sent a v2 to fix it.
[signature.asc (application/pgp-signature, inline)]

Reply sent to Andreas Enge <andreas <at> enge.fr>:
You have taken responsibility. (Mon, 14 Apr 2025 09:03:02 GMT) Full text and rfc822 format available.

Notification sent to Cayetano Santos <csantosb <at> inventati.org>:
bug acknowledged by developer. (Mon, 14 Apr 2025 09:03:02 GMT) Full text and rfc822 format available.

Message #31 received at 77645-done <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: Cayetano Santos <csantosb <at> inventati.org>
Cc: Sharlatan Hellseher <sharlatanus <at> gmail.com>, 77645-done <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add python-surf.
Date: Mon, 14 Apr 2025 11:02:20 +0200
Hello,

Am Mon, Apr 14, 2025 at 10:50:18AM +0200 schrieb Cayetano Santos:
> Thanks for noticing about the license. I just sent a v2 to fix it.

you forgot to test whether it works :)
This version does not even compile, since license:non-copyleft is not a
license object, but a function that returns one, see the source code
I copied into my previous message.

Since everything has gone through QA already, I have repaired this and
pushed.

Thanks!

Andreas





Information forwarded to guix-patches <at> gnu.org:
bug#77645; Package guix-patches. (Mon, 14 Apr 2025 09:22:01 GMT) Full text and rfc822 format available.

Message #34 received at 77645-done <at> debbugs.gnu.org (full text, mbox):

From: Cayetano Santos <csantosb <at> inventati.org>
To: Andreas Enge <andreas <at> enge.fr>
Cc: Sharlatan Hellseher <sharlatanus <at> gmail.com>, 77645-done <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add python-surf.
Date: Mon, 14 Apr 2025 11:21:31 +0200
[Message part 1 (text/plain, inline)]
>Mon 14 Apr 2025 at 11:02, Andreas Enge <andreas <at> enge.fr> wrote:

> Hello,
>
> Am Mon, Apr 14, 2025 at 10:50:18AM +0200 schrieb Cayetano Santos:
>> Thanks for noticing about the license. I just sent a v2 to fix it.
>
> you forgot to test whether it works :)
> This version does not even compile, since license:non-copyleft is not a
> license object, but a function that returns one, see the source code
> I copied into my previous message.

Ups, sorry about that ! I’ll be more careful next time.

Thanks again,

C.
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 19 days ago.

Previous Next


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