Subject: Re: [bug#75044] [PATCH v2] gnu: Add lightdm-mini-greeter.

From: Zheng Junjie <[email-masked]>
Date: Mon, 30 Dec 2024 16:56:49 +0800

[email-masked] writes:

> From: Feng Shu <[email-masked]>
>
> * gnu/packages/display-managers.scm (lightdm-mini-greeter): New variable.
>
> Change-Id: I558add1665d79429e2562c2139777002b7a70466
> ---
>  gnu/packages/display-managers.scm | 46 +++++++++++++++++++++++++++++++
>  1 file changed, 46 insertions(+)
>
> diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
> index df5fc0a857..b70f8101e6 100644
> --- a/gnu/packages/display-managers.scm
> +++ b/gnu/packages/display-managers.scm
> @@ -543,6 +543,52 @@ (define-public lightdm-gtk-greeter
>  GTK+, lets you select a desktop session and log in to it.")
>      (license license:gpl3+)))
>  
> +(define-public lightdm-mini-greeter
> +  (package
> +    (name "lightdm-mini-greeter")
> +    (version "0.5.1-ead793")

please use git-version, likes: 

(define-public lightdm-mini-greeter
  (let ((commit "ead7936993b4e9e067d73fa49dec7edfb46c73a8")
        (revision "0"))
   (package
      ...
      (source
         (origin
           (method git-fetch)
           (uri (git-reference
                   (url "https://github.com/prikhi/lightdm-mini-greeter")
                   (commit commit)))
           (file-name (git-file-name name version))
           (sha256
            (base32
             "17iy1jkllmi2xc95csb18wcfvbk44gyva2in2k5f29fy362ppz25"))))
      ...)))
   
and add comment for why use commit, not git tag.

> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/prikhi/lightdm-mini-greeter")
> +                    (commit "ead7936993b4e9e067d73fa49dec7edfb46c73a8")))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "17iy1jkllmi2xc95csb18wcfvbk44gyva2in2k5f29fy362ppz25"))))
> +    (build-system glib-or-gtk-build-system)
> +    (arguments
> +     (list
> +      #:phases
> +      #~(modify-phases %standard-phases
> +          (add-after 'unpack 'customize-default-config-path
> +            (lambda _
> +              (substitute* "Makefile.am"
> +                ;; Have the default config directory sourced from
> +                ;; /etc/lightdm/lightdm-mini-greeter.conf, which is where the
> +                ;; lightdm service writes it.
> +                (("\\$\\(sysconfdir)/lightdm/lightdm-mini-greeter.conf")
> +                 "/etc/lightdm/lightdm-mini-greeter.conf"))))
> +          (add-after 'install 'fix-.desktop-file
> +            (lambda* (#:key outputs #:allow-other-keys)
> +              (substitute* (search-input-file
> +                            outputs
> +                            "share/xgreeters/lightdm-mini-greeter.desktop")
> +                (("Exec=lightdm-mini-greeter")
> +                 (string-append "Exec="
> +                                (search-input-file
> +                                 outputs "bin/lightdm-mini-greeter")))))))))
> +    (native-inputs
> +     (list autoconf automake pkg-config))
> +    (inputs
> +     (list gtk+ lightdm))
> +    (synopsis "Mini Greeter for LightDM")
> +    (home-page "https://github.com/prikhi/lightdm-mini-greeter")
> +    (description "This package provide a minimal but highly configurable single-user GTK3
> +greeter for LightDM, this greeter is inspired by the SLiM Display Manager and
> +LightDM GTK3 Greeter.")
> +    (license license:gpl3)))
> +
>  (define-public slim
>    (package
>      (name "slim")

I didn't compile, test, everything else looks good.