Message ID | 85lfoiezni.fsf@disroot.org |
---|---|
State | Accepted |
Headers | show |
Series | [bug#39878] gnu: add emacs-bookmarks+ | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
Hi, So much time was passed, but maybe we could get this to work if the package still helpful for Emacs users. nly@disroot.org (Amar M. Singh) writes: […] > diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm > index be0e6a84c2..1ac5f77bb7 100644 > --- a/gnu/packages/emacs-xyz.scm > +++ b/gnu/packages/emacs-xyz.scm > @@ -21536,3 +21536,39 @@ Values are stored in a directory in @code{user-emacs-directory}, using > one file per value. This makes it easy to delete or remove unused > variables.") > (license license:gpl3+))) > + > +(define-public emacs-bookmark+ > + (package > + (name "emacs-bookmark+") > + (version "2020.01.22") > + (source (origin > + (method url-fetch) > + (uri (map (lambda (x) > + (string-append > + "https://www.emacswiki.org/emacs/download/" x)) > + `("bookmark+.el" > + "bookmark+-mac.el" > + "bookmark+-bmu.el" > + "bookmark+-key.el" > + "bookmark+-lit.el" > + "bookmark+-1.el"))) ‘bookmarks+-mac.el’ and other files are missing because this ‘(origin ...)’ returns only a single file: --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix build --no-grafts --no-offload 'emacs-bookmark+' -S /gnu/store/p0lvca4zr1rh4bs9fd281hjh15ck28x8-bookmark+.el --8<---------------cut here---------------end--------------->8--- You could use ‘(origin ...)’ inside ‘(inputs ...)’ to fetch all the files, but in that case we could have an issue with more hashes as described bellow. To fix issue with hashes I think we could use url-fetch on https://github.com/emacsmirror/emacswiki.org/blob/f2f216389097ada0172ebbfaaf594e397930682e/bookmark%2B.el and other files. > + (sha256 > + (base32 > + "1dkpszmflik3yhv05w8rvi6vz1mzgapncb5y231r6mwy40rphyhi")))) The hash was changed, even the version is the same. > + (build-system emacs-build-system) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-before 'build 'build-mac > + (lambda* (#:key outputs #:allow-other-keys) > + (let ((out (assoc-ref outputs "out"))) > + (invoke "emacs" "-Q" "--batch" > + "--eval='(byte-compile-file \"bookmark+-mac.el\"'"))))))) ‘emacs-build-system’ provides a byte compilation AFAIK, so don't need this ‘(arguments ...)’. > + (home-page "https://www.emacswiki.org/emacs/bookmark%2b.el") > + (synopsis "Bookmark+: extensions to standard library `bookmark.el'") Rather “@code{bookmark}”. Oleg.
On July 25, 2020 7:49:37 PM UTC, Oleg Pykhalov <go.wigust@gmail.com> wrote: > Hi, > > So much time was passed, but maybe we could get this to work if the > package still helpful for Emacs users. > > nly@disroot.org (Amar M. Singh) writes: > > […] > >> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm >> index be0e6a84c2..1ac5f77bb7 100644 >> --- a/gnu/packages/emacs-xyz.scm >> +++ b/gnu/packages/emacs-xyz.scm >> @@ -21536,3 +21536,39 @@ Values are stored in a directory in > > @code{user-emacs-directory}, using >> one file per value. This makes it easy to delete or remove unused >> variables.") >> (license license:gpl3+))) >> + >> +(define-public emacs-bookmark+ >> + (package >> + (name "emacs-bookmark+") >> + (version "2020.01.22") >> + (source (origin >> + (method url-fetch) >> + (uri (map (lambda (x) >> + (string-append >> + > > "https://www.emacswiki.org/emacs/download" x)) >> + `("bookmark+.el" >> + "bookmark+-mac.el" >> + "bookmark+-bmu.el" >> + "bookmark+-key.el" >> + "bookmark+-lit.el" >> + "bookmark+-1.el"))) > > ‘bookmarks+-mac.el’ and other files are missing because this ‘(origin > ...)’ returns only a single file: > --8<---------------cut here---------------start------------->8--- > $ ./pre-inst-env guix build --no-grafts --no-offload 'emacs-bookmark+' > -S > /gnu/store/p0lvca4zr1rh4bs9fd281hjh15ck28x8-bookmark+.el > --8<---------------cut here---------------end--------------->8--- > > You could use ‘(origin ...)’ inside ‘(inputs ...)’ to fetch all the > files, but in that case we could have an issue with more hashes as > described bellow. > > To fix issue with hashes I think we could use url-fetch on > https://github.com/emacsmirror/emacswiki.org/blob/f2f216389097ada0172ebbfaaf594e397930682e/bookmark+ > el > and other files. > >> + (sha256 >> + (base32 >> + > > "1dkpszmflik3yhv05w8rvi6vz1mzgapncb5y231r6mwy40rphyhi")))) > > The hash was changed, even the version is the same. > >> + (build-system emacs-build-system) >> + (arguments >> + `(#:phases >> + (modify-phases %standard-phases >> + (add-before 'build 'build-mac >> + (lambda* (#:key outputs #:allow-other-keys) >> + (let ((out (assoc-ref outputs "out"))) >> + (invoke "emacs" "-Q" "--batch" >> + "--eval='(byte-compile-file > > \"bookmark+-mac.el\"'"))))))) > > ‘emacs-build-system’ provides a byte compilation AFAIK, so don't need > this ‘(arguments ...)’. > >> + (home-page "https://www.emacswiki.org/emacs/bookmark+.el") >> + (synopsis "Bookmark+: extensions to standard library > > `bookmark.el'") > > Rather “@code{bookmark}”. > > Oleg. hello Oleg, Thanks, great pointers. Clearly, a guix expert unlike me. But I don't think this needs to be packaged. Don't want it. You can close the issue. Sorry, thanks. Amar
From e2b74ed78da1d24206847fe94fb885ff46cac563 Mon Sep 17 00:00:00 2001 From: Amar Singh <nly@disroot.org> Date: Tue, 3 Mar 2020 10:55:16 +0530 Subject: [PATCH] gnu: Add emacs-bookmark+. * gnu/packages/emacs-xyz.scm (emacs-bookmark+): New variable. --- gnu/packages/emacs-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index be0e6a84c2..1ac5f77bb7 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -21536,3 +21536,39 @@ Values are stored in a directory in @code{user-emacs-directory}, using one file per value. This makes it easy to delete or remove unused variables.") (license license:gpl3+))) + +(define-public emacs-bookmark+ + (package + (name "emacs-bookmark+") + (version "2020.01.22") + (source (origin + (method url-fetch) + (uri (map (lambda (x) + (string-append + "https://www.emacswiki.org/emacs/download/" x)) + `("bookmark+.el" + "bookmark+-mac.el" + "bookmark+-bmu.el" + "bookmark+-key.el" + "bookmark+-lit.el" + "bookmark+-1.el"))) + (sha256 + (base32 + "1dkpszmflik3yhv05w8rvi6vz1mzgapncb5y231r6mwy40rphyhi")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'build-mac + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (invoke "emacs" "-Q" "--batch" + "--eval='(byte-compile-file \"bookmark+-mac.el\"'"))))))) + (home-page "https://www.emacswiki.org/emacs/bookmark%2b.el") + (synopsis "Bookmark+: extensions to standard library `bookmark.el'") + (description "Bookmark+ builds on vanilla Emacs bookmarks. An optional +bookmark annotation is user-supplied text that is saved as part of the +bookmark. You can tag bookmarks. You can have multiple bookmarks with the +same name. Bookmarks record the number of times you have visited them and the +time of the last visit.") + (license license:gpl3+))) -- 2.25.1