From: Danny Milosavljevic <dannym@scratchpost.org>
To: Leo Prikler <leo.prikler@student.tugraz.at>, ludo@gnu.org
Cc: guix-devel@gnu.org
Subject: Re: GNOME in Guix
Date: Wed, 4 Nov 2020 09:08:15 +0100 [thread overview]
Message-ID: <20201104090815.05654315@scratchpost.org> (raw)
In-Reply-To: <b01907b7a3395fabf7bae1818b75484075e17b62.camel@student.tugraz.at>
[-- Attachment #1.1: Type: text/plain, Size: 2958 bytes --]
Hi,
I've checked guile-gi test/insanity.scm again to find "hard" evidence.
For that, I've just checked out guile-gi anew, then ran test/insanity.scm.
Steps:
(1) git clone https://github.com/spk121/guile-gi.git guile-gi
(2) cd guile-gi
(3) git checkout b454a99b65f927e947faab17d25bd3499829c1b4 # the current one
(4) guix environment --pure -l guix.scm --ad-hoc gtk+ guile
(5) ./bootstrap && ./configure && make
(6) tools/run-guile test/insanity.scm
%%%% Starting test insanity.scm (Writing full log to "insanity.scm.log")
/home/dannym/src/guile-gi/guile-gi/test/insanity.scm:19: FAIL GObject.Value
/home/dannym/src/guile-gi/guile-gi/test/insanity.scm:23: FAIL GObject.Closure
# of expected passes 1
# of unexpected failures 2
WARNING: (guile-user): imported module (gi) overrides core binding `quit'
(7) cat insanity.scm.log
%%%% Starting test insanity.scm
Group begin: insanity.scm
Test begin:
test-name: "GObject.Object"
source-file: "/home/dannym/src/guile-gi/guile-gi/test/insanity.scm"
source-line: 15
source-form: (test-equal "GObject.Object" <GObject> (module-ref m (quote <GObject>)))
Test end:
result-kind: pass
actual-value: #<<class> <GObject> 7f2d4e2ca180>
expected-value: #<<class> <GObject> 7f2d4e2ca180>
Test begin:
test-name: "GObject.Value"
source-file: "/home/dannym/src/guile-gi/guile-gi/test/insanity.scm"
source-line: 19
source-form: (test-equal "GObject.Value" <GValue> (module-ref m (quote <GValue>)))
Test end:
result-kind: fail
actual-value: #<<class> <GValue> 7f2d4e2ea680>
expected-value: #<<applicable-struct-with-setter-class> <GValue> 7f2d4e2e0200>
Test begin:
test-name: "GObject.Closure"
source-file: "/home/dannym/src/guile-gi/guile-gi/test/insanity.scm"
source-line: 23
source-form: (test-equal "GObject.Closure" <GClosure> (module-ref m (quote <GClosure>)))
Test end:
result-kind: fail
actual-value: #<<class> <GClosure> 7f2d4e2ea900>
expected-value: #<<applicable-struct-class> <GClosure> 7f2d4e2eae80>
Group end: insanity.scm
# of expected passes 1
# of unexpected failures 2
That's it. It fails.
(8) Using attached dlopen logger (gcc -fPIC -shared -o block-open.so block-open.c, then edit tools/uninstalled-env bottom before the exec to export LD_PRELOAD=$PWD/block-open.so), I get:
dlopen libguile-gi
dlopen /home/dannym/src/guile-gi/guile-gi/./.libs/libguile-gi.so.5
dlopen libguile-gi
dlopen libguile-gi
dlopen libguile-gi
dlopen libguile-gi
dlopen libguile-gi
dlopen libguile-gi
dlopen /gnu/store/xa1vfhfc42x655hi7vxqmbyvwldnz7r0-glib-2.62.6/lib/libgobject-2.0.so.0
There it is again.
(9) ldd /home/dannym/src/guile-gi/guile-gi/./.libs/libguile-gi.so.5 |grep gobject
[...]
libgobject-2.0.so.0 => /gnu/store/4jl613j0d5y6icbxxmwij75fd0i7qpwn-profile/lib/libgobject-2.0.so.0 (0x00007fe2a0677000)
And there is the other one.
Now how do I get more info, using Guix tools?
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: block-open.c --]
[-- Type: text/x-c++src, Size: 719 bytes --]
#define _GNU_SOURCE
#include <dlfcn.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
typedef void *(*dlopen_t)(const char *filename, int flags);
void *dlopen(const char *filename, int flags) {
void* result;
dlopen_t dlopen = dlsym(RTLD_NEXT, "dlopen");
fprintf(stderr, "dlopen %s\n", filename);
if (filename && strstr(filename, "/") == NULL && strstr(filename, "libcairo-gobject.so")) {
fprintf(stderr, "dlopen blocked %s\n", filename);
result = dlopen(filename, flags);
if (result) {
fprintf(stderr, "and would have been found! Aborting!\n");
/*int* x = 0;
*x = 5;
abort();*/
}
//return NULL;
}
result = dlopen(filename, flags);
return result;
}
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2020-11-04 8:08 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-02 13:51 GNOME in Guix Leo Prikler
2020-11-03 9:14 ` Danny Milosavljevic
2020-11-03 13:41 ` Leo Prikler
2020-11-03 19:26 ` Danny Milosavljevic
2020-11-03 23:20 ` Leo Prikler
2020-11-04 8:08 ` Danny Milosavljevic [this message]
2020-11-04 9:45 ` Leo Prikler
2020-11-04 13:43 ` Danny Milosavljevic
2020-11-04 14:02 ` Leo Prikler
2020-11-06 9:55 ` Pierre Neidhardt
-- strict thread matches above, loose matches on Subject: below --
2020-10-29 16:25 Guix Front End (GUI) and making it more mainstream, popular in scientific community Aniket Patil
2020-10-29 19:34 ` Danny Milosavljevic
2020-11-02 7:44 ` Pierre Neidhardt
2020-11-02 10:17 ` GNOME in Guix Danny Milosavljevic
2020-11-06 9:41 ` Pierre Neidhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201104090815.05654315@scratchpost.org \
--to=dannym@scratchpost.org \
--cc=guix-devel@gnu.org \
--cc=leo.prikler@student.tugraz.at \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).