Re: [Chicken-users] Is Android not unix?
On Mon, 19 Nov 2018 13:19:10 +0300 Kristian Lein-Mathisen wrote: > [...] > I was trying tweetnacl on Termux on Android 9 and ran into this problem: > > u0_a191@localhost ~/p/chicken-5.0.0> > csi -R tweetnacl -p '(make-symmetric-sign-key)' > > Error: (read-u8vector) bad argument type - not a port: #f > > > This happens because tweetnacl creates its current-entropy-port using > cond-expand with unix, windows or else, the latter which is yielding the #f > error above. > [...] Hello, interesting, I would have thought that Android would qualify as a unixoid system since it has a Linux kernel! If there is some other feature identifier I should use that would indicate the system likely supports /dev/random, please let me know so I can adapt the tweetnacl code. Anyway, as a workaround to get tweetnacl running, you can simply do (current-entropy-port (open-input-file "/dev/random")) by hand. I hope that helps :-) Ciao, Thomas -- Time only waits for black holes. pgpURM2wMZJF9.pgp Description: PGP signature ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] Is Android not unix?
Hi guys, I was trying tweetnacl on Termux on Android 9 and ran into this problem: u0_a191@localhost ~/p/chicken-5.0.0> csi -R tweetnacl -p '(make-symmetric-sign-key)' Error: (read-u8vector) bad argument type - not a port: #f This happens because tweetnacl creates its current-entropy-port using cond-expand with unix, windows or else, the latter which is yielding the #f error above. I found this surprising as I'd expect Android to be unix. As I'm sure you know, it isn't: csi -p '(cond-expand (unix 1))' Error: during expansion of (cond-expand ...) - no matching clause in `cond-expand' form: unix u0_a191@localhost ~/p/chicken-5.0.0> csi -p '(cond-expand ((or android unix) 1))' 1 But tweetnacl isn't much use without current-entropy-port, and I hove its /dev/random requirement: u0_a191@localhost ~/p/chicken-5.0.0> dd if=/dev/random bs=1 count=12 ^/dev/null |xxd -p 44ca8634752db3243ac222f0 So, my questions: 1. Is Android non-unix intentionally? 2. Could tweetnacl cond-expand with (or unix android) so it works out-of-the-box on Android? Thanks in advance, K. ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users