Page 1 of 2

imlib2, giblib, scrot; scrotwm

Posted: 2. Sep 2012, 13:34
by mimosa
If anybody else is working on these, or they shouldn't be done for some reason, please let me know!

My 64-bit current is badly broken (I think I'm not alone here) and I have a feeling so is 32-bit. So I can't build yet, but I can do the preparations.

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 2. Sep 2012, 15:16
by djemos
imlib2 for 14.0 is ready here

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 2. Sep 2012, 16:05
by mimosa
Thanks djemos :)

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 2. Sep 2012, 17:33
by Tim CowChip
Scrotwm is now Spectrwm if you want to build the newer of the 2. What's wrong with your x86_64? Mine is working well maybe we can figure it out. What kind of hardware do you have? Or did you break your installation?

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 2. Sep 2012, 17:58
by mimosa
Thanks for the tip about the name. That explains the brick wall!

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 13. Sep 2012, 23:25
by Tim CowChip
More Spectrwm stuff:


Code: Select all

# bar settings
 bar_enabled         = 1
 bar_border_width    = 0
 bar_border[1]       = rgb:00/80/80
 bar_color[1]        = black
 bar_font_color[1]   = grey
 bar_font            = -*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*
 bar_action          = conky
 bar_delay           = 1
 bar_justify         = center
 bar_at_bottom       = 0
 stack_enabled       = 1
 clock_enabled       = 0
 clock_format        = %a %b %d %R %Z %Y
 title_name_enabled  = 0
 title_class_enabled = 0
 window_name_enabled = 0
# verbose_layout     = 1
 focus_mode          = default
 disable_border      = 1
# border_width       = 1
# urgent_enabled     = 1

# spawn app
  program[term]      = urxvt
# program[screenshot_all]    = full
# program[screenshot_wind]   = window
# program[lock]      = xlock
# program[initscr]   =
# program[menu]      = dmenu_run -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_border -sf $bar_color
  spawn_term         = urxvt

# dialog box size ratio .3 > = r < 1
# dialog_ratio       = 0.6

# Split a non-Xrandr dual head setup into one region per monitor
# (non-standard driver-based multihead is not seen by spectrwm)
# region        = screen[1]:1280x1024+0+0
# region        = screen[1]:1280x1024+1280+0

# Launch applications in a workspace of choice
  autorun        = ws[1]:hsetroot -fill /home/chris/Wallpaper/100_0266.JPG
  autorun        = ws[1]:pypanel
  autorun        = ws[1]:gmail-notify
# workspace layout
# layout        = ws[1]:4:0:0:0:vertical
# layout        = ws[2]:0:0:0:0:horizontal
# layout        = ws[3]:0:0:0:0:fullscreen

# mod key, (windows key is Mod4) (apple key on OSX is Mod2)
  modkey = Mod4

# Clear key bindings and load new key bindings from the specified file.
# This allows you to load pre-defined key bindings for your keyboard layout.
  keyboard_mapping = ~/.spectrwm_us.conf

# quirks
# remove with: quirk[class:name] = NONE
 quirk[MPlayer:xv]            = FLOAT + FULLSCREEN + FOCUSPREV
 quirk[Firefox-bin:firefox-bin]        = TRANSSZ
 quirk[Firefox:Dialog]            = FLOAT
 quirk[Gimp:gimp]            = FLOAT + ANYWHERE
 quirk[URxvt:urxvt]            = FLOAT
# EXAMPLE: define panel program and bind to key
 program[pypanel]    = pypanel
 bind[pypanel]        = MOD+p

Code: Select all

# Key bindings for United States (us) keyboards
# unbind with: bind[] = <keys>
bind[cycle_layout]	= MOD+space
bind[flip_layout]	= MOD+Shift+backslash
bind[stack_reset]	= MOD+Shift+space
bind[master_shrink]	= MOD+h
bind[master_grow]	= MOD+l
bind[master_add]	= MOD+comma
bind[master_del]	= MOD+period
bind[stack_inc]		= MOD+Shift+comma
bind[stack_dec]		= MOD+Shift+period
bind[swap_main]		= MOD+Return
bind[focus_next]	= MOD+j
bind[focus_prev]	= MOD+k
bind[swap_next]		= MOD+Shift+j
bind[swap_prev]		= MOD+Shift+k
bind[term]		= MOD+Shift+Return
bind[menu]		= MOD+d
bind[quit]		= MOD+Shift+q
bind[restart]		= MOD+q
bind[focus_main]	= MOD+m
bind[ws_1]		= MOD+1
bind[ws_2]		= MOD+2
bind[ws_3]		= MOD+3
bind[ws_4]		= MOD+4
bind[ws_5]		= MOD+5
bind[ws_6]		= MOD+6
bind[ws_7]		= MOD+7
bind[ws_8]		= MOD+8
bind[ws_9]		= MOD+9
bind[ws_10]		= MOD+0
bind[ws_11]		= MOD+F1
bind[ws_12]		= MOD+F2
bind[ws_13]		= MOD+F3
bind[ws_14]		= MOD+F4
bind[ws_15]		= MOD+F5
bind[ws_16]		= MOD+F6
bind[ws_17]		= MOD+F7
bind[ws_18]		= MOD+F8
bind[ws_19]		= MOD+F9
bind[ws_20]		= MOD+F10
bind[ws_21]		= MOD+F11
bind[ws_22]		= MOD+F12
bind[ws_next]		= MOD+Right
bind[ws_prev]		= MOD+Left
bind[ws_next_all]	= MOD+Up
bind[ws_prev_all]	= MOD+Down
bind[ws_prior]		= MOD+a
bind[screen_next]	= MOD+Shift+Right
bind[screen_prev]	= MOD+Shift+Left
bind[mvws_1]		= MOD+Shift+1
bind[mvws_2]		= MOD+Shift+2
bind[mvws_3]		= MOD+Shift+3
bind[mvws_4]		= MOD+Shift+4
bind[mvws_5]		= MOD+Shift+5
bind[mvws_6]		= MOD+Shift+6
bind[mvws_7]		= MOD+Shift+7
bind[mvws_8]		= MOD+Shift+8
bind[mvws_9]		= MOD+Shift+9
bind[mvws_10]		= MOD+Shift+0
bind[mvws_11]		= MOD+Shift+F1
bind[mvws_12]		= MOD+Shift+F2
bind[mvws_13]		= MOD+Shift+F3
bind[mvws_14]		= MOD+Shift+F4
bind[mvws_15]		= MOD+Shift+F5
bind[mvws_16]		= MOD+Shift+F6
bind[mvws_17]		= MOD+Shift+F7
bind[mvws_18]		= MOD+Shift+F8
bind[mvws_19]		= MOD+Shift+F9
bind[mvws_20]		= MOD+Shift+F10
bind[mvws_21]		= MOD+Shift+F11
bind[mvws_22]		= MOD+Shift+F12
bind[bar_toggle]	= MOD+b
bind[focus_next]	= MOD+Tab
bind[focus_prev]	= MOD+Shift+Tab
bind[wind_kill]		= MOD+Shift+x
bind[wind_del]		= MOD+x
bind[screenshot_all]	= MOD+s
bind[screenshot_wind]	= MOD+Shift+s
bind[float_toggle]	= MOD+t
bind[version]		= MOD+Shift+v
bind[lock]		= MOD+Shift+Delete
bind[initscr]		= MOD+Shift+i
bind[iconify]		= MOD+w
bind[uniconify]		= MOD+Shift+w
bind[raise_toggle]	= MOD+Shift+r
bind[button2]		= MOD+v
bind[width_shrink]	= MOD+minus
bind[width_grow]	= MOD+equal
bind[height_shrink]	= MOD+Shift+minus
bind[height_grow]	= MOD+Shift+equal
bind[move_left]		= MOD+bracketleft
bind[move_right]	= MOD+bracketright
bind[move_up]		= MOD+Shift+bracketleft
bind[move_down]		= MOD+Shift+bracketright
bind[name_workspace]	= MOD+Shift+slash
bind[search_workspace]	= MOD+slash
bind[search_win]	= MOD+f

Code: Select all

#conky for bar_action
out_to_x no
out_to_console yes
use_xft yes
xftfont terminus medium:size=12
#mail_spool /var/mail/chris
update_interval 1.0
total_run_times 0
use_spacer none
Up:${uptime_short} | CPU:${execi 60  sensors w83627thf-isa-0290 | grep temp1 | cut -c 15-22} | GPU:${execi 60  sensors nouveau-pci-0500 | grep temp1 | cut -c 15-22} | RAM:$memperc% |CPU:${cpu}% |${addr eth0} | ${downspeedf eth0} | ${weather KCZK cloud_cover} | ${weather KCZK temperature}°C

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 14. Sep 2012, 18:14
by mimosa
I have uploaded packages for spectrwm here: ... rwm/2.0.2/

... and they appear to work ok.

However, two things are puzzling me.

slk-pkgcheck tells me there is no .desktop file in the package ... but there is. Is it in the wrong place?

[EDIT Here:

slkbuild-postgen doesn't produce a "Buildscript and source" section:

Code: Select all

pistachio[spectrwm]$ slkbuild-postgen -32 -64 SLKBUILD 





Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 15. Sep 2012, 12:37
by laprjns
mimosa wrote:slk-pkgcheck tells me there is no .desktop file in the package ... but there is. Is it in the wrong place?
slk-pkgcheck is a tool to help packagers identify potential issues with the package. The messages are not absolute. It up to the packager to review them and understand if and why the built package deviates from the norms and make appropriate corrections to the build.
In this case slk-pkgcheck threw a warning that there was no desktop file in the package. slk-pkgcheckt only checks in /usr/share/applications where the vast majority of the packages should put their desktop files. It's a warning because not all packages need a desktop file such as those that are started only from the command line. In this case as you noted the desktop file was installed in /usr/share/xsessions. Is this correct location? As the packager you should strive understand the application enough to determination this on your own. Of course as we learn there will always need to ask questions.

This is the first time I've seen a package for a window manager and have never come across a situation where the desktop file was installed in /usr/shar/xsessions (hence my comment "as we learn"). Here are questions I would ask to determine if the location of the desktop file was correct.

1) Does the package work as intended? Since you uploaded the package files I assume that you've tested it and it does work.
2) Is spectrwm meant to be started by the users as a graphical application? Since it a window manager I would think not and as such would not expect the need for a desktop file in /user/share/application.
3) Are there any other desktop files in /user/shares/xsession in a running system with other desktop managers installed. In my system here that I using now, this directory has both mate.desktop and xfce.desktop file. Installing the spectrwm desktop file the same directory seems to be consistent and make sense.
Based on this, I would conclude that the package as built is correct.
slkbuild-postgen doesn't produce a "Buildscript and source" section.
Again, slkbuild-postgen is a tool intended to make the processes ofsubmitting a package easier. Before shador posted his script, I created these post links by hand using an editor. I don't recall ever having this problem. A quick look at slkbuild-postgen script shows that the src file must be readable to create the links. Is your .src file readable by the user running slkbuild-postgen?

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 15. Sep 2012, 12:53
by Tim CowChip
mimosa wrote: slk-pkgcheck tells me there is no .desktop file in the package ... but there is. Is it in the wrong place?

[EDIT Here:
I have seen a *.desktop file in /usr/share/applications as well as /usr/share/xsessions for window managers in some OS's. There would also be a menu entry to launch the window manager from the currently running window manager, which never made sense to me, and yet, there it was.

Maybe if you installed spectrwm.desktop in both locations, you wouldn't get the warning.

Re: [WIP] imlib2, giblib, scrot; scrotwm

Posted: 15. Sep 2012, 13:00
by mimosa
Thanks laprjns, that's very helpful. I haven't actually submitted a ticket for this yet, but I spent several hours using it yesterday and everything does work, including the detection of spectrwm as a possible session to login.

The difficulty is learning how far to trust one's own judgement, given that there may always be some unknown factor in play.

Regarding the problem with slkbuild-postgen (I vaguely remember this happening before; then, I think I just wrote that part of the report manually), I'm puzzled. The permissions on that file look ok (fakeroot isn't really root). Just for fun, I tried running the report generator as root, with the same result.

So in this case, I'm still worried I may have made a mistake somewhere.