Re: Looking for someone to host an Overdrive server (ARM build farm)

2020-02-03 Thread Christopher Baines

Pierre Neidhardt  writes:

> Perfect!
>
> I wanted to give you the login at the Guix Days, completely forgot.
> Maybe I should send it encrypted to you.  Do you have a GPG key?
> `gpg --search-keys ...` hangs for me at the moment.

Yep, I've attached my public key.

-BEGIN PGP PUBLIC KEY BLOCK-

mQINBEzW8QoBEAC6LOsCoVji6YjbldaqN3Z+kzLmkRC2LfhGPZTKUfXC48b84VNP
zY6BXtNeWHSlSiXXXeOJaPoCLoINLRrnWaD7wLL1gxV5EpopZuiqgUbpcSxuAZq1
yskjROvb5Pjo7WZMYlGAnpWslSg3nOgXKW6Rp176BDnn+390WAf5ya3QFWUeNpsG
8UFzavqGu1Ka8jVq0x/IqS8lGo8Rtwp185NB4muLYS2WjZGJvyd9Um8o6vL05v3+
ceKy7+9mXrlAjBdUHg/b4O3qncQ4XmJ0NUDuDFI1xiBcrNFS0YHpU91JeCgeGr2n
WeojuA5zwLzdUOVagT0tzz6ocVoeVbc2Hf0xMZ4RkbmOEQsAMnI/bYpYj3W96sdR
zP3ZdcT6fVkAuMrGb7wHzUGBv/hMO9yYBk9FLvU8dQpJtlHoUVcEZSa0LKGePC3I
VjEiee6wgQGlnoXXhdAIGuIdn05LdBCySHYq8Zrlq3Lb2zYXN52uCkUKbSgkhIYY
JlKH9oORxk2W+EHp/6VEuU+fKhFN3LFG/qcAtOKnnp0/v6MEzX4Re5aRYVRU3/pn
5i4f+7GgGeyYjeFpZy/7YZqzd9hk3CiZNg2aJLLgpWlIGKcAFZM7xWBJqLxYCQCD
WJpS6KR8fMG3aXYE+hNkk88WYMU1jAM3Cqv7HBOXaTbEiCMsLEpBqhUeUwARAQAB
tCVDaHJpc3RvcGhlciBCYWluZXMgPG1haWxAY2JhaW5lcy5uZXQ+iQJXBBMBCgBB
AhsDBQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAhkBFiEEPonu50WOcg2XVOCyXiij
OwuE9XcFAlzf3jkFCRPLVC8ACgkQXiijOwuE9Xevxw//bIeH2MH7veNpbadWxLPe
TmGkGnJAiTTpJnxLwQVv6Bh1zSofjYTwob4afjoVdFS8oFqJ0v6N+HGQOHEsJUza
rNFwBDEZLC4mfL1+bpY2d0YdtVmaMHYXfsDUZSbP/J4Rs+ciVigFRpdRmj6E2P8P
5bQSYNdV3SzetIhZi/Y9aSZqR9f7UhRH5dyNZciTo8+ZCUkJkz8qJmRdPHvHbu2A
Agrmmv51TaPIH9Ln3Y8QlVCJ8OUfGXUPgHCVdKjuzCMxU0fcsPLBKDKgbl8yay2g
eQQG1clOW+P09i+A2gQrMwnL5QC8EgSahGchEPNbZTr4nGcmguYOuI5lujis5eAu
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
a65Y93YMnBEcz

Re: Looking for someone to host an Overdrive server (ARM build farm)

2020-02-03 Thread Pierre Neidhardt
Perfect!

I wanted to give you the login at the Guix Days, completely forgot.
Maybe I should send it encrypted to you.  Do you have a GPG key?
`gpg --search-keys ...` hangs for me at the moment.

Cheers!

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


[PATCH] utils: Handle errors in worker threads.

2020-02-03 Thread Christopher Baines
Previously, if an error occurred, the worker fiber simply never sends a
reply. In the case of HTTP requests to Cuirass, where an exception occurs when
performing a database query, the fiber handling the request blocks as it never
gets a response. I think that this has the potential to cause the process to
hit file descriptor limits, as the connections are never responded to.

This is fixed by responding with the details of the exception, and then
throwing it within the fiber that made the call.

* src/cuirass/utils.scm (make-worker-thread-channel): Catch exceptions when
calling proc.
(call-with-worker-thread): Handle receiving exceptions from the worker thread.
---
 src/cuirass/utils.scm | 13 +++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/cuirass/utils.scm b/src/cuirass/utils.scm
index f3ba18d..4d59fec 100644
--- a/src/cuirass/utils.scm
+++ b/src/cuirass/utils.scm
@@ -114,7 +114,13 @@ arguments of the worker thread procedure."
 (let loop ()
   (match (get-message channel)
 (((? channel? reply) . (? procedure? proc))
- (put-message reply (apply proc args
+ (put-message reply
+  (catch
+#t
+(lambda ()
+  (apply proc args))
+(lambda (key . args)
+  (cons* 'worker-thread-error key 
args))
   (loop)))
(iota parallelism))
   channel)))
@@ -127,7 +133,10 @@ If already in the worker thread, call PROC immediately."
 (apply proc args)
 (let ((reply (make-channel)))
   (put-message channel (cons reply proc))
-  (get-message reply)
+  (match (get-message reply)
+(('worker-thread-error key args ...)
+ (apply throw key args))
+(result result))
 
 (define-syntax-rule (with-worker-thread channel (vars ...) exp ...)
   "Evaluate EXP... in the worker thread corresponding to CHANNEL.
-- 
2.24.1




Re: WIP gnu: poetry: Update to 1.0.3.

2020-02-03 Thread Gábor Boskovits
Hello,

Tanguy Le Carrour  ezt írta (időpont: 2020.
febr. 3., H, 16:31):
>
> Dear Guix,
>
> I'm working on updating Poetry to version 1.0.3 and I have a problem
> with the version of a dependency.
>
> Poetry now depends on python-keyring >=20.0.0,<21.0.0. In Guix we
> have python-keyring 21.0.0, so it does not work once installed!
>
> What am I supposed to do?
>
> I see 3 different ways out of this:
> - patch the package to make it use our version (I tried but failed [1]);
> - ask upstream to update dependencies;
> - declare a new package python-keyring-20.0.0 and use it as an input.

Asking upstream to update would be great.

>
> [1]: attempt to patch setup.py
> -(arguments `(#:tests? #f)); tests depend on dbus 
> service
> +(arguments
> + `(#:tests? #f ;; Pypi does not have tests.
> +   #:phases
> +   (modify-phases %standard-phases
> + (add-after 'unpack 'change-dependencies
> +   (lambda _
> + ;; Guix has version 21.0.0 of python-keyring
> + (invoke "sed" "-i" "-e"
> + "s/keyring>=20.0.1,<21.0.0/keyring>=20.0.1,<22.0.0/"
> + "setup.py")
> + #t)
>

What did not work in this case?
Also, do you think that you could replace invoke sed with substitute*?

> Any help welcome!
>
> --
> Tanguy
>

Best regards,
g_bor
-- 
OpenPGP Key Fingerprint: 7988:3B9F:7D6A:4DBF:3719:0367:2506:A96C:CF63:0B21



Re: Looking for someone to host an Overdrive server (ARM build farm)

2020-02-03 Thread Christopher Baines

Pierre Neidhardt  writes:

> Great!  I'll bring it to FOSDEM then.

So, I've got the machine now. I've also had a chance to try turning it
on, and I've managed to connect via the serial console.

Let me know the login credentials if you have them?

Thanks,

Chris


signature.asc
Description: PGP signature


WIP gnu: poetry: Update to 1.0.3.

2020-02-03 Thread Tanguy Le Carrour
Dear Guix,

I'm working on updating Poetry to version 1.0.3 and I have a problem
with the version of a dependency.

Poetry now depends on python-keyring >=20.0.0,<21.0.0. In Guix we
have python-keyring 21.0.0, so it does not work once installed!

What am I supposed to do?

I see 3 different ways out of this:
- patch the package to make it use our version (I tried but failed [1]);
- ask upstream to update dependencies;
- declare a new package python-keyring-20.0.0 and use it as an input.

[1]: attempt to patch setup.py
-(arguments `(#:tests? #f)); tests depend on dbus 
service
+(arguments
+ `(#:tests? #f ;; Pypi does not have tests.
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'change-dependencies
+   (lambda _
+ ;; Guix has version 21.0.0 of python-keyring
+ (invoke "sed" "-i" "-e"
+ "s/keyring>=20.0.1,<21.0.0/keyring>=20.0.1,<22.0.0/"
+ "setup.py")
+ #t)

Any help welcome!

-- 
Tanguy



Re: (not) testing Rust packages?!

2020-02-03 Thread Hartmut Goebel
Am 31.01.20 um 19:50 schrieb John Soo:
>> On Jan 29, 2020, at 11:01 AM, Andreas Rottmann  wrote:
>>
>> I'm a new to Guix, and am not sure what you mean by "safely" and
>> "unwanted store outputs". Running `cargo test` takes the crate source,
>> and the closure of any `dependencies` and `dev-dependencies`, and
>> produces no real artifacts that make sense to put in the store, as far
>> as I can see. The only noteworthy artifact is the stdout/stderr ouput
>> produced, as well as the exit status, but I guess that's not relevant to
>> the store.
> Oh I could see how “safely” would be confusing. I meant that we would not 
> populate anything in the store as you suggest.

If `cargo test` does not "install" any file - and this is what I would
expect it to do, since this is what `cargo install` - running `cargo
test` is save.

Neither the exit status nor the stderr/stdout output are effecting the
store.


> What do you think? 


Go ahead! :-)

-- 
Regards
Hartmut Goebel

| Hartmut Goebel  | h.goe...@crazy-compilers.com   |
| www.crazy-compilers.com | compilers which you thought are impossible |




Stage0 Release 0.4.0, M2-Planet Release 1.5.0 and mescc-tools-seed Release 1.2

2020-02-03 Thread Orians, Jeremiah (DTMB)
Today I am pleased to announce the following releases:

https://savannah.nongnu.org/projects/stage0/
https://github.com/oriansj/stage0
In stage0 we have gained hand written (in assembly) C compilers for:
AMD64 :: cc_amd64.s
Knight :: cc_knight-native.s and cc_knight-posix.s
ARMv7l :: cc_armv7l.s
AArch64 :: cc_aarch64.s
Along with C High level prototypes for all of them 
(All of the above was completed in a 4 hour speed run)

https://github.com/oriansj/M2-Planet
In M2-Planet we gained more posix primitives and thanks to recent fuzzing have 
dropped a considerable number of possible segfaults.
Knight-native gained support for large binaries (2GB)
Oh and to bury the lead a bit.
Deesix single handedly ported AArch64 support into M2-Planet! (up next RISC-V 
[32 and 64bit])


https://github.com/oriansj/mescc-tools-seed
In mescc-tools-seed we eliminated all binaries (not that there was much anyway)
So you'll have to clone https://github.com/oriansj/bootstrap-seeds  if you want 
a generated 357byte hex0 binary

- Jeremiah