Subject: Re: [bug#73647] [PATCH] Add indicator-sound-switcher

From: Nicolas Graves <[email-masked]>
Date: Sun, 20 Oct 2024 09:13:59 +0200

Hi!

Below some review comments ;)

On 2024-10-05 20:50, Sebastian Willenbrink wrote:
> +(define-public indicator-sound-switcher
> +  (package
> +    (name "indicator-sound-switcher")
> +    (version "2.3.10.1")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/yktoo/indicator-sound-switcher")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "0y52k56ww2327r7ywwdvld5lx85qmcy8yrpaxc5lim7w3jbf3s85"))))
> +    (build-system python-build-system)
> +    (native-inputs (list gettext-minimal gobject-introspection))
> +    (inputs (list python-pygobject girara python-pulsectl pulseaudio))
> +    (propagated-inputs (list libappindicator keybinder))
> +    (arguments
> +     (list
> +      #:phases #~(modify-phases %standard-phases
> +                   (add-before 'install 'patch-xdg-autostart
> +                     (lambda* (#:key inputs outputs #:allow-other-keys)
> +                       (let* ((pulseaudio (assoc-ref inputs "pulseaudio"))
> +                              (pulse (string-append pulseaudio
> +                                                    "/lib/libpulse.so.0")))

We rather use (search-input-file inputs "/lib/libpulse.so.0") now.
It's also shorter, so you can probably drop the let* and use that
directly in the substitute*

> +                         (substitute* "setup.py"
> +                           (("/etc/xdg/autostart")
> +                            '"share/etc/xdg/autostart"))
> +                         (substitute* "lib/indicator_sound_switcher/lib_pulseaudio.py"

This line is probably above 79 characters. Use the next line ;)

> +                           (("libpulse.so.0")
> +                            pulse))))))))
> +    (home-page "https://github.com/yktoo/indicator-sound-switcher")
> +    (synopsis "Sound input/output selector indicator for Linux")
> +    (description
> +     "It shows an icon in the indicator area or the system tray

Please use "This package" or its name instead of it.

> +(whatever is available in your desktop environment).
> +The icon's menu allows you to switch the current sound input and output
> +(i.e. source ports and sink ports in PulseAudio's terms, respectively) with just two clicks:")

This last line is too long and shouldn't end with :

> +    (license license:gpl3)))
>
> base-commit: 713f5562faf1acc02dc9e3f3a2d45dc39abbe9f1

You should also write a proper git commit message. There are templates
in guix's source etc/snippets folder if you use emacs (either tempel or
yasnippets). Or copy another gnu: Add [pkg] commit.

I don't see other lints but for some reason the build is blocked for
x86-64-linux on QA.

--
Best regards,
Nicolas Graves