Build loop after changing pulseaudio and emacs-ido-completing-read+

  • Open
  • quality assurance status badge
Details
2 participants
  • Oleg Pykhalov
  • Ludovic Courtès
Owner
unassigned
Submitted by
Oleg Pykhalov
Severity
normal
O
O
Oleg Pykhalov wrote on 1 Nov 2017 15:40
(address . bug-guix@gnu.org)
87fu9ycbaa.fsf@gmail.com
Hello Guix,

I have issue with building loop after changing pulseaudio and
emacs-ido-completing-read+ packages.

pulseaudio

Toggle diff (141 lines)
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index 21753cf3f..3c9659b73 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -41,6 +41,7 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages xiph))
(define-public libsndfile
@@ -173,7 +174,8 @@ rates.")
("fftwf" ,fftwf)
("avahi" ,avahi)
("eudev" ,eudev) ;for the detection of hardware audio devices
- ("check" ,check)))
+ ("check" ,check)
+ ("python-pyqt" ,python-pyqt)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(propagated-inputs

$ make

$ time ./pre-inst-env guix build --verbosity=5 -n --no-substitutes pulseaudio

$ sort -u ~/screenlog.1

--8<---------------cut here---------------start------------->8---
acquiring global GC lock `/var/guix/gc.lock'
acquiring read lock on `/var/guix/temproots/9147'
acquiring write lock on `/var/guix/temproots/9147'
^C
downgrading to read lock on `/var/guix/temproots/9147'
httmakunitime ./pre-inst-env guix build --verbosity=5 -n --no-substitutes pulseaudio
natsu@magnolia ~/src/guix$
real 4m8.823s
sys 0m2.555s
user 4m11.696s
--8<---------------cut here---------------end--------------->8---

emacs-ido-completing-read+

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 4c5dd2ba8..7dee7fedf 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3777,48 +3777,35 @@ restrict the text width to 80 characters.")
(define-public emacs-ido-completing-read+
(package
(name "emacs-ido-completing-read+")
- (version "3.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://raw.githubusercontent.com"
- "/DarwinAwardWinner/ido-ubiquitous/v"
- version "/ido-completing-read+.el"))
- (file-name (string-append "ido-completing-read+-" version ".el"))
- (sha256
- (base32
- "1cyalb0p7nfsm4n6n9q6rjmvn6adqc0fq8ybnlj3n41n289dkfjf"))))
+ (version "4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/"
+ "DarwinAwardWinner/ido-completing-read-plus"
+ "/archive/" "v" version ".tar.gz"))
+ (file-name (string-append "ido-completing-read+-" version ".el"))
+ (sha256
+ (base32
+ "00p6j3chyir3avdgbkb05hw4rr5xd1vyljfhn7pg67jx04z5a0f3"))))
(build-system emacs-build-system)
- (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
- (synopsis "Replacement for completing-read using ido")
+ (propagated-inputs
+ `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)
+ ("emacs-s" ,emacs-s)
+ ("emacs-memoize" ,emacs-memoize)))
+ (home-page "https://github.com/DarwinAwardWinner/ido-completing-read-plus")
+ (synopsis "Use ido (nearly) everywhere")
(description
- "The ido-completing-read+ function is a wrapper for ido-completing-read.
-Importantly, it detects edge cases that ordinary ido cannot handle and either
-adjusts them so ido can handle them, or else simply falls back to the standard
-Emacs completion function instead.")
+ "@code{emacs-ido-completing-read+} provides ido-style completion for
+almost every function that uses the standard completion function
+completing-read.")
(license license:gpl3+)))
(define-public emacs-ido-ubiquitous
+ ;; Preserve for people already uses `emacs-ido-ubiquitous'
(package
- (name "emacs-ido-ubiquitous")
- (version "3.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://raw.githubusercontent.com"
- "/DarwinAwardWinner/ido-ubiquitous/v"
- version "/ido-ubiquitous.el"))
- (file-name (string-append "ido-ubiquitous-" version ".el"))
- (sha256
- (base32
- "197ypji0fb6jsdcq40rpnknwlh3imas6s6jbsvkfm0pz9988c3q2"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)))
- (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
- (synopsis "Use ido (nearly) everywhere")
- (description
- "Ido-ubiquitous enables ido-style completion for almost every function
-that uses the standard completion function completing-read.")
- (license license:gpl3+)))
+ (inherit emacs-ido-completing-read+)
+ (name "emacs-ido-ubiquitous")))
(define-public emacs-yaml-mode
(package

$ make

$ time ./pre-inst-env guix build --verbosity=5 -n --no-substitutes emacs-ido-completing-read+

$ sort -u ~/screenlog.1

--8<---------------cut here---------------start------------->8---
acquiring global GC lock `/var/guix/gc.lock'
acquiring read lock on `/var/guix/temproots/11388'
acquiring write lock on `/var/guix/temproots/11388'
^C
downgrading to read lock on `/var/guix/temproots/11388'
natsu@magnolia ~/src/guix$
real 4m3.979s
sys 0m1.712s
user 4m6.727s
--8<---------------cut here---------------end--------------->8---

Thanks,
Oleg.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAln53N0ACgkQckbhHGm3
lWkbmRAArDgnIr7L4DOU5eIiKxtw7EuRRYAz3bkQtI1I0QUagOq6FILQ44ib4J7h
kxeiQD8Haz4kcAL6DE/0jBPBRaANpG82+Ct5L2kdL9iHRi3CS8eGPpt4Ou1eAMVy
uQv9yWum43bUsxDFNFue6PNX9PQkmBW2fbAFs6ULwtJyZTHzZNSF+fVMY7bhMqZb
yk7PJNSq4naDl/RV2pSNVWiE8x+gQg3Mey3B3wC4475VOdkzTUSS6AzKANAx9/8D
+8SNjVSVWlkVF/+ovsNt2vxtHoNMjHMq+0QsTaOFXKaa14iOik4isrKnIYtMz5ai
KR9rJXYxO4D/HOnCCh+qwkgjuRLl43JwYEStUCG9aud3hCFFcgmmpRrGgLnUJaeA
xNXOxGkZrquFC0LCGHOjIX/CWGyvz1ISsUi8HPaOtDWm4/jpR3Z4//QNOs5Kay7Q
/XhbvQUxrBqbkcX6nmbu9Eal9Dt56NPta1AjoJZgG+9aHvkCSemE+fEluUUTYGlU
fTqKl20g2vchDV0ADlWTPBoyrLgpznCWR0XJsF+Fr8M5CjSmhlo8w63Fw99G1HpE
RCd5L+9fEDwQbu8Kq/J4KaG6qUKbeSCQFn9Oqnv+IOE1hldR+Jmy6GWykeg9+iNU
sh+xHoosU+qLZ3dDyd2NIPbyd4jb+ZBQqmAOxxtH2qsfoD2PPmc=
=LT3C
-----END PGP SIGNATURE-----

O
O
Oleg Pykhalov wrote on 1 Nov 2017 15:47
(address . 29106@debbugs.gnu.org)
87a806caym.fsf@gmail.com
From 9a012229f41d60610e37639363f3b513a3900465 Mon Sep 17 00:00:00 2001
From: Oleg Pykhalov <go.wigust@gmail.com>
Date: Wed, 1 Nov 2017 15:58:48 +0300
Subject: [PATCH] gnu: emacs-ido-completing-read+: Update to 4.5.

* gnu/packages/emacs.scm (emacs-ido-completing-read+): Update to 4.5.
---
gnu/packages/emacs.scm | 59 ++++++++++++++++++++------------------------------
1 file changed, 23 insertions(+), 36 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index ad96093c3..3607e00cb 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3777,48 +3777,35 @@ restrict the text width to 80 characters.")
(define-public emacs-ido-completing-read+
(package
(name "emacs-ido-completing-read+")
- (version "3.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://raw.githubusercontent.com"
- "/DarwinAwardWinner/ido-ubiquitous/v"
- version "/ido-completing-read+.el"))
- (file-name (string-append "ido-completing-read+-" version ".el"))
- (sha256
- (base32
- "1cyalb0p7nfsm4n6n9q6rjmvn6adqc0fq8ybnlj3n41n289dkfjf"))))
+ (version "4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/"
+ "DarwinAwardWinner/ido-completing-read-plus"
+ "/archive/" "v" version ".tar.gz"))
+ (file-name (string-append "ido-completing-read+-" version ".el"))
+ (sha256
+ (base32
+ "00p6j3chyir3avdgbkb05hw4rr5xd1vyljfhn7pg67jx04z5a0f3"))))
(build-system emacs-build-system)
- (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
- (synopsis "Replacement for completing-read using ido")
+ (propagated-inputs
+ `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)
+ ("emacs-s" ,emacs-s)
+ ("emacs-memoize" ,emacs-memoize)))
+ (home-page "https://github.com/DarwinAwardWinner/ido-completing-read-plus")
+ (synopsis "Use ido (nearly) everywhere")
(description
- "The ido-completing-read+ function is a wrapper for ido-completing-read.
-Importantly, it detects edge cases that ordinary ido cannot handle and either
-adjusts them so ido can handle them, or else simply falls back to the standard
-Emacs completion function instead.")
+ "@code{emacs-ido-completing-read+} provides ido-style completion for
+almost every function that uses the standard completion function
+completing-read.")
(license license:gpl3+)))
(define-public emacs-ido-ubiquitous
+ ;; Preserve for people already uses `emacs-ido-ubiquitous'
(package
- (name "emacs-ido-ubiquitous")
- (version "3.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://raw.githubusercontent.com"
- "/DarwinAwardWinner/ido-ubiquitous/v"
- version "/ido-ubiquitous.el"))
- (file-name (string-append "ido-ubiquitous-" version ".el"))
- (sha256
- (base32
- "197ypji0fb6jsdcq40rpnknwlh3imas6s6jbsvkfm0pz9988c3q2"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)))
- (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
- (synopsis "Use ido (nearly) everywhere")
- (description
- "Ido-ubiquitous enables ido-style completion for almost every function
-that uses the standard completion function completing-read.")
- (license license:gpl3+)))
+ (inherit emacs-ido-completing-read+)
+ (name "emacs-ido-ubiquitous")))
(define-public emacs-yaml-mode
(package
--
2.14.3
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAln53oEACgkQckbhHGm3
lWmrgg/+Matir+koJpO5o7qTcWkKjn+zc2vC2Z+xCHpdbEVPAWp2ym4OHooqvIU5
LoyMjdWpQU5BLiQn3we2OQHTDduvQiy6bnj4zjZmKASi+wuJbLWV60ng4JP1TJra
ieZdXlSkCb8xlc6/bGo7DlHF+8ScUed2TN3/W+bQbDv9SO7yFVcBi8RyfM1D6Ldp
VcEBopYOMgpk3YuftOseT255cAGY6meAWMdKZmsbhczpwud/L6xIrWm7Hg3HdqK6
BrUxSpbw/xvLv6pd/UgCDpSrqlq7hyMJvrgNBQH/0OiSx8yCOqb6Sy0NcRnEGU2A
VTcI0znF6OPkCcFfkIcVq5aFWhRO7i7DFPoMU2lxArYOjK6YWqnblFYt/qF69sgy
Wt299xcvf5HnullGVkB503JJ+l0WspNrKxAR3VZvVuh0uJh5oMbXjIjhDhPACbIA
E4Gq58/QCPXr6Qo64yvRYc/x71+oSZBnWyqpPaT4heoa9nLuc7jUZ2JuAK33Y2r3
qmtMu5WVA90S7dq+XiRazkwtu+QRQVgH5ugZ7zmD4ZyeJsH9fz6UlqxeueuEugyh
1TGPRtsX/L6tabNLiyQ6s2M0TMaFpwBngS3wl9XyJCtebXs/lCAPUErPCViFpKhM
Mm5SqcbJY23F5QcL3ZRB5vikBGFGMs3HRUESw28O1QOvpZasy0E=
=+ibt
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 5 Nov 2017 17:07
(name . Oleg Pykhalov)(address . go.wigust@gmail.com)(address . 29106@debbugs.gnu.org)
87d14wr9og.fsf@gnu.org
Oleg Pykhalov <go.wigust@gmail.com> skribis:

Toggle quote (7 lines)
> From 9a012229f41d60610e37639363f3b513a3900465 Mon Sep 17 00:00:00 2001
> From: Oleg Pykhalov <go.wigust@gmail.com>
> Date: Wed, 1 Nov 2017 15:58:48 +0300
> Subject: [PATCH] gnu: emacs-ido-completing-read+: Update to 4.5.
>
> * gnu/packages/emacs.scm (emacs-ido-completing-read+): Update to 4.5.

Please also mention the ‘emacs-ido-ubiquitous’ changes.


[...]

Toggle quote (26 lines)
> (define-public emacs-ido-ubiquitous
> + ;; Preserve for people already uses `emacs-ido-ubiquitous'
> (package
> - (name "emacs-ido-ubiquitous")
> - (version "3.12")
> - (source (origin
> - (method url-fetch)
> - (uri (string-append "https://raw.githubusercontent.com"
> - "/DarwinAwardWinner/ido-ubiquitous/v"
> - version "/ido-ubiquitous.el"))
> - (file-name (string-append "ido-ubiquitous-" version ".el"))
> - (sha256
> - (base32
> - "197ypji0fb6jsdcq40rpnknwlh3imas6s6jbsvkfm0pz9988c3q2"))))
> - (build-system emacs-build-system)
> - (propagated-inputs
> - `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)))
> - (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
> - (synopsis "Use ido (nearly) everywhere")
> - (description
> - "Ido-ubiquitous enables ido-style completion for almost every function
> -that uses the standard completion function completing-read.")
> - (license license:gpl3+)))
> + (inherit emacs-ido-completing-read+)
> + (name "emacs-ido-ubiquitous")))

Should it be defined using ‘deprecated-package’ instead?

Also, is the “build loop” you mentioned fixed with this patch?

Thanks,
Ludo’.
L
L
Ludovic Courtès wrote on 24 Nov 2017 18:26
(name . Oleg Pykhalov)(address . go.wigust@gmail.com)(address . 29106@debbugs.gnu.org)
877eufa8qq.fsf@gnu.org
Ping!

ludo@gnu.org (Ludovic Courtès) skribis:

Toggle quote (46 lines)
> Oleg Pykhalov <go.wigust@gmail.com> skribis:
>
>> From 9a012229f41d60610e37639363f3b513a3900465 Mon Sep 17 00:00:00 2001
>> From: Oleg Pykhalov <go.wigust@gmail.com>
>> Date: Wed, 1 Nov 2017 15:58:48 +0300
>> Subject: [PATCH] gnu: emacs-ido-completing-read+: Update to 4.5.
>>
>> * gnu/packages/emacs.scm (emacs-ido-completing-read+): Update to 4.5.
>
> Please also mention the ‘emacs-ido-ubiquitous’ changes.
>
>
> [...]
>
>> (define-public emacs-ido-ubiquitous
>> + ;; Preserve for people already uses `emacs-ido-ubiquitous'
>> (package
>> - (name "emacs-ido-ubiquitous")
>> - (version "3.12")
>> - (source (origin
>> - (method url-fetch)
>> - (uri (string-append "https://raw.githubusercontent.com"
>> - "/DarwinAwardWinner/ido-ubiquitous/v"
>> - version "/ido-ubiquitous.el"))
>> - (file-name (string-append "ido-ubiquitous-" version ".el"))
>> - (sha256
>> - (base32
>> - "197ypji0fb6jsdcq40rpnknwlh3imas6s6jbsvkfm0pz9988c3q2"))))
>> - (build-system emacs-build-system)
>> - (propagated-inputs
>> - `(("emacs-ido-completing-read+" ,emacs-ido-completing-read+)))
>> - (home-page "https://github.com/DarwinAwardWinner/ido-ubiquitous")
>> - (synopsis "Use ido (nearly) everywhere")
>> - (description
>> - "Ido-ubiquitous enables ido-style completion for almost every function
>> -that uses the standard completion function completing-read.")
>> - (license license:gpl3+)))
>> + (inherit emacs-ido-completing-read+)
>> + (name "emacs-ido-ubiquitous")))
>
> Should it be defined using ‘deprecated-package’ instead?
>
> Also, is the “build loop” you mentioned fixed with this patch?
>
> Thanks,
> Ludo’.
O
O
Oleg Pykhalov wrote on 29 Nov 2017 05:45
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 29106@debbugs.gnu.org)
87lgip3d6i.fsf@gmail.com
Hello Ludovic,

Apologies for late reply.

ludo@gnu.org (Ludovic Courtès) writes:

Toggle quote (3 lines)
> Ping!
>> Also, is the “build loop” you mentioned fixed with this patch?

Sorry, I don't see any patches attached.

I still have never ending pulseaudio derivation build if I add
("python-pyqt" ,python-pyqt) to the inputs field.

Toggle snippet (3 lines)
$ ./pre-inst-env guix build --no-substitutes --derivations pulseaudio

Thanks,
Oleg.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAloeO4YACgkQckbhHGm3
lWklqg//fjwTwnaNZO0PyYk2M6XLb94GdtukBLt5ADGXAw7Nq5xDspAsp9mZmO3i
fpSKETXFPj0CwiKXTSIKpFzRVFWM8GpGX6jfYRcVHfi3Cg39LALiX/jJYThZgb60
QYFjjqVptOfRJaRFVGGAN/DJjLTG0a7ay20NvyeK/uAl1ReBAnyLkjfzJRm9oIbs
wnd1IEtE5tLSOr1ZrLre0SBMDl13NIz86dbFA0GGIagg9lTpUmSyhSBe9LFi7Xh/
t4kuFqjJj2+eGiBeI3M7kBh2o4JrpJxo+HcbyGgs8dO3A/YAQvkpCRMVVBhJqq7F
H5laWxJX2jymp+gFmqSEXqQG86OPSznkjkvKNN/qzXbI/T2Q0qTmEcjpPfpRKWea
HH48kEk6O0c62DYNzTzPl5Zg4mxn42MdkmgriiLw2TL/Ynqxr8N+BIEf/IrqHjnX
h+Am+LkD+2LIAtGoCYAZF9teZeYOWPQML/7UBvdKZYN5dvwLXsGhyn0qHqENWdsS
ON4fHNF/26RdSkDfcdViuYXqN86/bily5Kpb3+hoWY7x0pcUTj5cR0V0iS7ZoIl3
0fdjMELVDh4fXVD7zDMUwzcFZ1pp0eE3jbcN8T18mMWDDmN5pNdHIyJ/9I2UaiGf
j/LcbErB4w1f8f28rNoPXB9TbqjEBqLg7IqJvF3bzJTeJZ8csYc=
=ofLV
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 29 Nov 2017 17:43
(name . Oleg Pykhalov)(address . go.wigust@gmail.com)(address . 29106@debbugs.gnu.org)
87shcxqble.fsf@gnu.org
Hi Oleg,

Oleg Pykhalov <go.wigust@gmail.com> skribis:

Toggle quote (7 lines)
> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Ping!
>>> Also, is the “build loop” you mentioned fixed with this patch?
>
> Sorry, I don't see any patches attached.

See https://bugs.gnu.org/29106 (the issue we’re talking about.) There
you submitted an emacs-ido-completing-read+ patch¹, and it isn’t clear
to me how it relates to the initial problem you reported.


Toggle quote (3 lines)
> I still have never ending pulseaudio derivation build if I add
> ("python-pyqt" ,python-pyqt) to the inputs field.

OK, I suppose that’s because python-pyqt indirectly depends on
pulseaudio (currently Guix doesn’t try to detect cycles around
derivations, which is why you get this “never-ending” behavior.)

The usual approach to break such cycles is by having a “-minimal”
variant of one of the packages in the loop.

Would it work for you?

Thanks,
Ludo’.
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 29106@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 29106
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch