all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Scheme package installation script
@ 2019-01-18  2:47 brettg
  2019-01-18  3:23 ` Carlo Zancanaro
  2019-01-18  7:55 ` Gábor Boskovits
  0 siblings, 2 replies; 4+ messages in thread
From: brettg @ 2019-01-18  2:47 UTC (permalink / raw)
  To: help-guix

Hi all. I maintain my own emacs configuration designed to be integrated 
into guix. One of the parts of maintaining a configuration is package 
management, which I of course rely on Guix to do (rather than pulling 
from MELPA directly). There are many packages that need to be installed 
before my configuration can work, so naturally I devised a meta-package 
of sorts. The issue with this meta package is that I am inheriting the 
hello base package because I am not sure how to bypass needing a source 
to pull from. There is likely a better way to do this meta-package sort 
of deal. Does anybody have any ideas?

(define-public emacs-configuration
   (package
    (name "emacs-configuration")
    (version "0.0.4")
    (source
     (origin
      (inherit (package-source hello))))
    (build-system gnu-build-system)
    (inputs
     `(,@(package-inputs hello)))
    (propagated-inputs
     `(("bear" ,bear)
       ("cquery" ,cquery)
       ("emacs" ,emacs)
       ("emacs-all-the-icons" ,emacs-all-the-icons)
       ("emacs-cider" ,emacs-cider)
       ("emacs-clojure-mode" ,emacs-clojure-mode)
       ("emacs-company" ,emacs-company)
       ("emacs-company-irony" ,emacs-company-irony)
       ("emacs-company-lsp" ,emacs-company-lsp)
       ("emacs-company-quickhelp" ,emacs-company-quickhelp)
       ("emacs-cquery" ,emacs-cquery)
       ("emacs-diff-hl" ,emacs-diff-hl)
       ("emacs-dired-k" ,emacs-dired-k)
       ("emacs-doom-modeline" ,emacs-doom-modeline)
       ("emacs-doom-theme" ,emacs-doom-themes)
       ("emacs-ess" ,emacs-ess)
       ("emacs-flycheck" ,emacs-flycheck)
       ("emacs-flycheck-irony" ,emacs-flycheck-irony)
       ("emacs-geiser" ,emacs-geiser)
       ("emacs-gitpatch" ,emacs-gitpatch)
       ("emacs-guix" ,emacs-guix)
       ("emacs-helm" ,emacs-helm)
       ("emacs-helm-bibtex" ,emacs-helm-bibtex)
       ("emacs-helm-c-yasnippet" ,emacs-helm-c-yasnippet)
       ("emacs-helm-flycheck" ,emacs-helm-flycheck)
       ("emacs-hl-todo" ,emacs-hl-todo)
       ("emacs-lsp-mode" ,emacs-lsp-mode)
       ("emacs-lsp-ui" ,emacs-lsp-ui)
       ("emacs-magit" ,emacs-magit)
       ("emacs-magit-org-todos-el" ,emacs-magit-org-todos-el))
    (home-page
     "https://git.sr.ht/~brettgilio/.emacs.d")
    (synopsis
     "N/A")
    (description
     "N/A")
    (license #f)))

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Scheme package installation script
  2019-01-18  2:47 Scheme package installation script brettg
@ 2019-01-18  3:23 ` Carlo Zancanaro
  2019-01-18  7:55 ` Gábor Boskovits
  1 sibling, 0 replies; 4+ messages in thread
From: Carlo Zancanaro @ 2019-01-18  3:23 UTC (permalink / raw)
  To: brettg; +Cc: help-guix

Hey Brett!

On Fri, Jan 18 2019, brettg@posteo.net wrote:
> The issue with this meta package is that I am inheriting the 
> hello base package because I am not sure how to bypass needing a 
> source to pull from. There is likely a better way to do this 
> meta-package sort of deal. Does anybody have any ideas?

I think gnome is a similar sort of meta-package. It has the 
following structure:

(define-public gnome
  (package
    (name "gnome")
    (version (package-version gnome-shell))
    (source #f)
    (build-system trivial-build-system)
    (arguments '(#:builder (begin (mkdir %output) #t)))
    (propagated-inputs
     ... lots of inputs here ...)
    (synopsis "The GNU desktop environment")
    (home-page "https://www.gnome.org/")
    (description
     "GNOME is the graphical desktop for GNU.  It includes a wide 
     variety of
applications for browsing the web, editing text and images, 
creating
documents and diagrams, playing media, scanning, and much more.")
    (license license:gpl2+)))

I assume that will work for you, too.

Carlo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Scheme package installation script
@ 2019-01-18  3:28 brettg
  0 siblings, 0 replies; 4+ messages in thread
From: brettg @ 2019-01-18  3:28 UTC (permalink / raw)
  To: Carlo Zancanaro; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 1345 bytes --]

Doh! Yes I knew this. I forgot about that. Thank you a ton.
Sent from my Sprint Phone.
------ Original message------From: Carlo ZancanaroDate: Thu, Jan 17, 2019 9:24 PMTo: brettg@posteo.net;Cc: help-guix;Subject:Re: Scheme package installation script
Hey Brett!

On Fri, Jan 18 2019, brettg@posteo.net wrote:
> The issue with this meta package is that I am inheriting the 
> hello base package because I am not sure how to bypass needing a 
> source to pull from. There is likely a better way to do this 
> meta-package sort of deal. Does anybody have any ideas?

I think gnome is a similar sort of meta-package. It has the 
following structure:

(define-public gnome
  (package
    (name "gnome")
    (version (package-version gnome-shell))
    (source #f)
    (build-system trivial-build-system)
    (arguments '(#:builder (begin (mkdir %output) #t)))
    (propagated-inputs
     ... lots of inputs here ...)
    (synopsis "The GNU desktop environment")
    (home-page "https://www.gnome.org/")
    (description
     "GNOME is the graphical desktop for GNU.  It includes a wide 
     variety of
applications for browsing the web, editing text and images, 
creating
documents and diagrams, playing media, scanning, and much more.")
    (license license:gpl2+)))

I assume that will work for you, too.

Carlo

[-- Attachment #2: Type: text/html, Size: 2035 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Scheme package installation script
  2019-01-18  2:47 Scheme package installation script brettg
  2019-01-18  3:23 ` Carlo Zancanaro
@ 2019-01-18  7:55 ` Gábor Boskovits
  1 sibling, 0 replies; 4+ messages in thread
From: Gábor Boskovits @ 2019-01-18  7:55 UTC (permalink / raw)
  To: brettg; +Cc: help-guix

Hello,

<brettg@posteo.net> ezt írta (időpont: 2019. jan. 18., P, 3:48):
>
> Hi all. I maintain my own emacs configuration designed to be integrated
> into guix. One of the parts of maintaining a configuration is package
> management, which I of course rely on Guix to do (rather than pulling
> from MELPA directly). There are many packages that need to be installed
> before my configuration can work, so naturally I devised a meta-package
> of sorts. The issue with this meta package is that I am inheriting the
> hello base package because I am not sure how to bypass needing a source
> to pull from. There is likely a better way to do this meta-package sort
> of deal. Does anybody have any ideas?
>
> (define-public emacs-configuration
>    (package
>     (name "emacs-configuration")
>     (version "0.0.4")
>     (source
>      (origin
>       (inherit (package-source hello))))
>     (build-system gnu-build-system)
>     (inputs
>      `(,@(package-inputs hello)))
>     (propagated-inputs
>      `(("bear" ,bear)
>        ("cquery" ,cquery)
>        ("emacs" ,emacs)
>        ("emacs-all-the-icons" ,emacs-all-the-icons)
>        ("emacs-cider" ,emacs-cider)
>        ("emacs-clojure-mode" ,emacs-clojure-mode)
>        ("emacs-company" ,emacs-company)
>        ("emacs-company-irony" ,emacs-company-irony)
>        ("emacs-company-lsp" ,emacs-company-lsp)
>        ("emacs-company-quickhelp" ,emacs-company-quickhelp)
>        ("emacs-cquery" ,emacs-cquery)
>        ("emacs-diff-hl" ,emacs-diff-hl)
>        ("emacs-dired-k" ,emacs-dired-k)
>        ("emacs-doom-modeline" ,emacs-doom-modeline)
>        ("emacs-doom-theme" ,emacs-doom-themes)
>        ("emacs-ess" ,emacs-ess)
>        ("emacs-flycheck" ,emacs-flycheck)
>        ("emacs-flycheck-irony" ,emacs-flycheck-irony)
>        ("emacs-geiser" ,emacs-geiser)
>        ("emacs-gitpatch" ,emacs-gitpatch)
>        ("emacs-guix" ,emacs-guix)
>        ("emacs-helm" ,emacs-helm)
>        ("emacs-helm-bibtex" ,emacs-helm-bibtex)
>        ("emacs-helm-c-yasnippet" ,emacs-helm-c-yasnippet)
>        ("emacs-helm-flycheck" ,emacs-helm-flycheck)
>        ("emacs-hl-todo" ,emacs-hl-todo)
>        ("emacs-lsp-mode" ,emacs-lsp-mode)
>        ("emacs-lsp-ui" ,emacs-lsp-ui)
>        ("emacs-magit" ,emacs-magit)
>        ("emacs-magit-org-todos-el" ,emacs-magit-org-todos-el))
>     (home-page
>      "https://git.sr.ht/~brettgilio/.emacs.d")
>     (synopsis
>      "N/A")
>     (description
>      "N/A")
>     (license #f)))
>
>

Just to inquire, what is the benefit for you to put this to a package
instead of having it in a file, and include that in the user manifest.
Are you installing this as a system package?

Best regards,
g_bor

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-01-18  7:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-18  2:47 Scheme package installation script brettg
2019-01-18  3:23 ` Carlo Zancanaro
2019-01-18  7:55 ` Gábor Boskovits
  -- strict thread matches above, loose matches on Subject: below --
2019-01-18  3:28 brettg

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.