You are not logged in.
Pages: 1
Hi,
NEW: Xlib version; fully configurable
I'm working on a pager called minipager.
A minipager PKGBUILD is in AUR.
You can also get it from svn:
$ svn checkout http://syscrash.hopto.org/svn/repos/minipager/branches/minipager-xlib
$ cd minipager-xlib
$ make
$ ./minipager
It's now completely configurable (colours, position, etc); run it with --help or -h (not sure if both work tho lol).
The only dependency is Xlib (which everyone running X has.)
It comes with some sample profiles in the profiles/ dir. If you want minipager to use them, put them in ~/.config/minipager/, then run minipager -p profilename.
Opinions?
Offline
Something flashes in the right bottom corner, it prints out its stuff in main, and then it's gone: Segmentation fault.
gdb output:
Program received signal SIGSEGV, Segmentation fault.
0xb76d77a3 in XRenderFindDisplay () from /usr/X11R6/lib/libXrender.so.1
(gdb) bt
#0 0xb76d77a3 in XRenderFindDisplay () from /usr/X11R6/lib/libXrender.so.1
#1 0xb76d7b6d in XRenderQueryExtension () from /usr/X11R6/lib/libXrender.so.1
#2 0xb79a7c5a in _gdk_x11_have_render () from /usr/lib/libgdk-x11-2.0.so.0
#3 0xb79a9459 in gdk_x11_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#4 0xb7983321 in gdk_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#5 0xb798dd31 in gdk_pixmap_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#6 0xb7983321 in gdk_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#7 0xb7999dc5 in gdk_window_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#8 0xb7983321 in gdk_draw_pixbuf () from /usr/lib/libgdk-x11-2.0.so.0
#9 0xb7d04cd1 in gtk_image_expose () from /usr/lib/libgtk-x11-2.0.so.0
#10 0xb7d26b8e in _gtk_marshal_BOOLEAN__BOXED ()
from /usr/lib/libgtk-x11-2.0.so.0
#11 0xb793e5a9 in g_type_class_meta_marshal ()
from /usr/lib/libgobject-2.0.so.0
#12 0xb793e2ab in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#13 0xb7952f2b in signal_emit_unlocked_R () from /usr/lib/libgobject-2.0.so.0
#14 0xbfbfffe0 in ?? ()
#15 0x00000002 in ?? ()
#16 0xbfc00130 in ?? ()
#17 0xbfc00008 in ?? ()
#18 0x00000000 in ?? ()
#19 0x00000014 in ?? ()
#20 0x00000014 in ?? ()
---Type <return> to continue, or q <return> to quit---
#21 0x08087198 in ?? ()
#22 0xb7a4ffe1 in _int_malloc () from /lib/tls/libc.so.6
Previous frame inner to this frame (corrupt stack?)
Not that I mourn its death much, I prefer keybinds to switch desktops anyway. ;-)
Offline
Odd, could you please try an svn update, make debug, and backtrace again?
Thanks.
Offline
Same stuff. But what looks very wrong is your messup of types and type checking avoidance. For instance, get_number_desktops() looks totally wrong:
It returns unsigned long instead of a pointer, for one thing, but what you return is a pointer to gchar which you got from get_property. Of course you cast it to unsigned long*, to make it all worse.
Tip: rewrite the whole thing using zero casts, and I bet it will work then.
What I get here is revision 165 btw, so perhaps you forgot to commit something and I've a buggy old version.
Offline
I've changed a lot of stuff, mainly removed odd looking gchar returns and stuff like that.
Could you please give it a try? Thanks for the help
Offline
It sort of works now, though it tries to change the desktop even when it is the current one, better to check for that I think.
Offline
I just compiled and installed it and it works really well on my box. One thing I noticed is that it puts the binary in /usr/local/bin which is not in /etc/profile by default, so you have to edit /etc/profile manually. Maybe you could put it in /usr/bin? Anyway, nice work! I really like it! I may come up with a few "themes"...
*Goes off and puts "minipager &" in .xinitrc
"power corrupts, and absolute power corrupts absolutely" -Lord Acton
Offline
One thing I noticed is that it puts the binary in /usr/local/bin which is not in /etc/profile by default, so you have to edit /etc/profile manually. Maybe you could put it in /usr/bin?
try configure --prefix=/usr
if you compiled from source - should do it 99% of the time.
Offline
markw wrote:One thing I noticed is that it puts the binary in /usr/local/bin which is not in /etc/profile by default, so you have to edit /etc/profile manually. Maybe you could put it in /usr/bin?
try configure --prefix=/usr
if you compiled from source - should do it 99% of the time.
It doesn't use autoconf/automake/etc yet, just a simple Makefile
I am planning to rewrite it using Xlib instead of gtk (would be much more efficient for such a simple program, uses about 11mb ram right now.)
Offline
try configure --prefix=/usr
if you compiled from source - should do it 99% of the time.
It doesn't use autoconf/automake/etc yet, just a simple Makefile
Ah, I was just guessing... it probably wouldn't be that hard to sed it either...
syscrash2k: maybe you could provide an Arch PKGBUILD along with your package, just to make things easier for others
Offline
Would it be hard to add support for semi-transparency in the png files? That would be really cool.
"power corrupts, and absolute power corrupts absolutely" -Lord Acton
Offline
Xlib version is done!
$ svn checkout http://syscrash.hopto.org/svn/repos/minipager
$ cd minipager
$ make
$ ./minipager
It has some bugs, I'll see if I can get semi-transparency on it.
A PKGBUILD shouldn't be too hard to do either, I'll take a look at that.
Offline
I've edited the first post with more up-to-date instructions
I will make PKGBUILDs for yatesParse and minipager soon.
edit:
Packages for yatesparse and minipager now in AUR!
Offline
A lot of changes have been made.
Minipager no longer depends on yatesParse.
It is also much more responsive due to the use of a real event loop instead of polling for events
More info in first post.
Offline
Pages: 1