Hello, I've defined the following package at ~/src/my-channel/my-packages/zasm.scm:
(define-module (my-packages zasm) (use-modules (guix packages) (guix download) (guix build-system gnu) (guix licenses))) (define-public zasm (package (name "zasm") (version "4.4.17") (source (origin (method url-fetch) (uri (string-append "https://github.com/Megatokio/" name "/archive/refs/tags/" version ".tar.gz")) (sha256 (base32 "08zif7j3lgj9x4ywpaa44ziq9xhin737vnra9knasdfdrn925wcq")))) (build-system gnu-build-system) (synopsis "zasm - Z80, 8080 and Z180 assembler") (description "zasm is an assembler for the Z80 CPU. It can also assemble code for the extended instruction set of the Z180 / Hitachi HD64180, as well as code limited to the Intel 8080 e.g. for CP/M. zasm can also assemble native 8080 assembler source.") (home-page "https://k1.spdns.de/Develop/Projects/zasm/Distributions/") (license bsd2))) When trying to build it, I get this error: $ echo $GUIX_PACKAGE_PATH /home/laurence/src/my-channel $ pwd /home/laurence/src/my-channel/my-packages $ ls zasm.scm zasm.scm~ $ guix build my-packages/zasm /home/laurence/src/my-channel/my-packages/zasm.scm:2:2: warning: expected keyword arg guix build: error: my-packages/zasm: unknown package "Info (guix) Package Modules" says: (2) Note that the file name and module name must match. For instance, the ‘(my-packages emacs)’ module must be stored in a ‘my-packages/emacs.scm’ file relative to the load path specified with ‘--load-path’ or ‘GUIX_PACKAGE_PATH’. So, I think I've got my directory structure correct. Any suggestions would be much appreciated. Regards, Laurence