[Solved] DWM with w0ng' config

Hi everyone,
Im using dwm on archlinux, and i try to install w0ng' config. But it is not working, i cant press anykey, i try shift+alt+q, shift+alt+p, alt+1, alt+2..... my screen no change, i must switch to tty2 and recompile dwm to default.
I upload 4 images for more details. This is top-left and top-right of my screen:
http://i.imgur.com/Em8286U.jpg
http://i.imgur.com/zrxOtqC.jpg
http://i.imgur.com/ObcOAKp.jpg
http://i.imgur.com/hjd3KTH.jpg
I installed font terminus2 and xbmicons:
fc-list | grep termi
/usr/share/fonts/local/terminus2.bdf: Terminus2:style=Regular
/root/.fonts/terminus2.bdf: Terminus2:style=Regular
fc-list | grep xb
/root/.fonts/xbmicons.pcf: xbmicons:style=Regular
/usr/share/fonts/local/xbmicons.pcf: xbmicons:style=Regular
and here is how do i do:
cd /home/user/Download/dwm-master/
cp PKGBUILD /root/dwm/
cp 0* config.h bstack.c gaplessgrid.c push.c /root/dwm/src/
cd /root/dwm/
makepkg -efi
Tks for reading.
-- mod edit: changed images to links - Trilby --
Last edited by x3004 (2014-07-12 17:37:00)

Here is my config, i change a bit on w0ng' config:
/* See LICENSE file for copyright and license details. */
/* appearance */
static const char font[] = "-*-xbmicons-medium-r-*-*-12-*-*-*-*-*-*-*" ","
/*"-*-terminus-medium-r-*-*-12-*-*-*-*-*-*-*";*/
"-*-terminus2-medium-r-*-*-12-*-*-*-*-*-*-*";
#define NUMCOLORS 12
static const char colors[NUMCOLORS][ColLast][9] = {
// border foreground background
{ "#282a2e", "#373b41", "#1d1f21" }, // 1 = normal (grey on black)
{ "#f0c674", "#c5c8c6", "#1d1f21" }, // 2 = selected (white on black)
{ "#dc322f", "#1d1f21", "#f0c674" }, // 3 = urgent (black on yellow)
{ "#282a2e", "#282a2e", "#1d1f21" }, // 4 = darkgrey on black (for glyphs)
{ "#282a2e", "#1d1f21", "#282a2e" }, // 5 = black on darkgrey (for glyphs)
{ "#282a2e", "#cc6666", "#1d1f21" }, // 6 = red on black
{ "#282a2e", "#b5bd68", "#1d1f21" }, // 7 = green on black
{ "#282a2e", "#de935f", "#1d1f21" }, // 8 = orange on black
{ "#282a2e", "#f0c674", "#282a2e" }, // 9 = yellow on darkgrey
{ "#282a2e", "#81a2be", "#282a2e" }, // A = blue on darkgrey
{ "#282a2e", "#b294bb", "#282a2e" }, // B = magenta on darkgrey
{ "#282a2e", "#8abeb7", "#282a2e" }, // C = cyan on darkgrey
/* edit here */
static const char normbordercolor[] = "#444444";
static const char normbgcolor[] = "#222222";
static const char normfgcolor[] = "#bbbbbb";
static const char selbordercolor[] = "#005577";
static const char selbgcolor[] = "#005577";
static const char selfgcolor[] = "#eeeeee";
static const unsigned int borderpx = 0; /* border pixel of windows */
static const unsigned int snap = 8; /* snap pixel */
static const Bool showbar = True; /* False means no bar */
static const Bool topbar = True; /* False means bottom bar */
/* tagging */
static const char *tags[] = { "\uE000", "\uE001", "\uE002", "\uE003", "\uE008",
"\uE004", "\uE005", "\uE006","\uE007 " };
static const Rule rules[] = {
/* class instance title tags mask isfloating iscentred monitor */
{ "feh", NULL, NULL, 0, True, True, -1 },
{ "Gcolor2", NULL, NULL, 0, True, True, -1 },
{ "XFontSel", NULL, NULL, 0, True, True, -1 },
{ "Xfd", NULL, NULL, 0, True, True, -1 },
{ "Firefox", NULL, NULL, 1, False, False, -1 },
{ "URxvt", "ircmailbt", NULL, 1 << 1, False, False, -1 },
{ "Gvim", NULL, NULL, 1 << 2, False, False, -1 },
{ "Zathura", NULL, NULL, 1 << 3, False, False, -1 },
{ "libreoffice-calc", NULL, NULL, 1 << 3, False, False, -1 },
{ "libreoffice-impress", NULL, NULL, 1 << 3, False, False, -1 },
{ "libreoffice-startcenter", NULL, NULL, 1 << 3, False, False, -1 },
{ "libreoffice-writer", NULL, NULL, 1 << 3, False, False, -1 },
{ "mpv", NULL, NULL, 1 << 4, False, False, -1 },
{ "TeamViewer.exe", NULL, NULL, 1 << 5, True, False, -1 },
{ "Wine", NULL, NULL, 1 << 5, True, False, -1 },
{ "Gimp", NULL, NULL, 1 << 5, True, False, -1 },
{ "URxvt", "filemgr", NULL, 1 << 6, False, False, -1 },
{ "Chromium", NULL, NULL, 1 << 7, False, False, -1 },
/* layout(s) */
static const float mfact = 0.50; /* factor of master area size [0.05..0.95] */
static const int nmaster = 1; /* number of clients in master area */
static const Bool resizehints = False; /* True means respect size hints in tiled resizals */
#include "bstack.c"
#include "gaplessgrid.c"
static const Layout layouts[] = {
/* symbol arrange function */
{ "\uE020 \uE009 \uE020", tile }, /* first entry is default */
{ "\uE020 \uE00A \uE020", NULL }, /* no layout function means floating behavior */
{ "\uE020 \uE00B \uE020", monocle },
{ "\uE020 \uE00C \uE020", bstack },
{ "\uE020 \uE00D \uE020", gaplessgrid },
/* key definitions */
#define MODKEY Mod4Mask
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
/* commands */
static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", colors[0][ColBG], "-nf", colors[0][ColFG], "-sb", colors[1][ColBG], "-sf", colors[1][ColFG], NULL };
static const char *termcmd[] = { "urxvtc", NULL };
static const char scratchpadname[] = "scratchpad";
static const char *scratchpadcmd[] = { "urxvtc", "-name", scratchpadname, "-geometry", "100x25", NULL };
static const char *volupcmd[] = { "amixer", "-q", "set", "PCM", "5%+", NULL };
static const char *voldncmd[] = { "amixer", "-q", "set", "PCM", "5%-", NULL };
static const char *mpctog[] = { "ncmpcpp", "toggle", NULL };
static const char *mpcprev[] = { "ncmpcpp", "prev", NULL };
static const char *mpcnext[] = { "ncmpcpp", "next", NULL };
#include "push.c"
static Key keys[] = {
/* modifier key function argument */
/* edit here: change XK_o to XK_p
{ MODKEY, XK_o, spawn, {.v = dmenucmd } },
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
/* edit here
{ MODKEY, XK_s, togglescratch, {.v = scratchpadcmd} },
{ MODKEY, XK_apostrophe, spawn, {.v = volupcmd } },
{ MODKEY, XK_semicolon, spawn, {.v = voldncmd } },
{ MODKEY, XK_slash, spawn, {.v = mpctog } },
{ MODKEY, XK_bracketleft, spawn, {.v = mpcprev } },
{ MODKEY, XK_bracketright, spawn, {.v = mpcnext } },
{ MODKEY|ControlMask, XK_b, togglebar, {0} },
{ MODKEY, XK_j, focusstack, {.i = +1 } },
{ MODKEY, XK_k, focusstack, {.i = -1 } },
{ MODKEY|ShiftMask, XK_j, pushdown, {0} },
{ MODKEY|ShiftMask, XK_k, pushup, {0} },
{ MODKEY, XK_i, incnmaster, {.i = +1 } },
{ MODKEY, XK_d, incnmaster, {.i = -1 } },
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_b, setlayout, {.v = &layouts[3]} },
{ MODKEY, XK_g, setlayout, {.v = &layouts[4]} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
{ MODKEY, XK_period, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
{ MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3)
TAGKEYS( XK_5, 4)
TAGKEYS( XK_6, 5)
TAGKEYS( XK_7, 6)
TAGKEYS( XK_8, 7)
TAGKEYS( XK_9, 8)
{ MODKEY|ShiftMask, XK_q, quit, {0} },
/* button definitions */
/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
static Button buttons[] = {
/* click event mask button function argument */
{ ClkLtSymbol, 0, Button1, setlayout, {0} },
{ ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
{ ClkWinTitle, 0, Button2, zoom, {0} },
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
{ ClkTagBar, 0, Button1, toggleview, {0} },
{ ClkTagBar, 0, Button3, view, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
And here is "makepkg -efi" output:
=> 01-statuscolours.diff
patching file dwm.c
=> 02-monoclecount.diff
patching file dwm.c
=> 03-noborder.diff
patching file dwm.c
=> 04-centredfloating.diff
patching file dwm.c
=> 05-scratchpad.diff
patching file dwm.c
=> 06-attachaside.diff
patching file dwm.c
Hunk #1 succeeded at 161 with fuzz 2 (offset 8 lines).
Hunk #2 succeeded at 426 (offset 28 lines).
Hunk #3 succeeded at 1223 with fuzz 1 (offset 106 lines).
=> 07-nopaddedbar.diff
patching file dwm.c
dwm build options:
CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -D_FORTIFY_SOURCE=2 -DVERSION="6.0" -DXINERAMA
LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11 -L/usr/lib/X11 -lXinerama
CC = cc
CC dwm.c
CC -o dwm
dwm build options:
CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/X11R6/include -D_FORTIFY_SOURCE=2 -DVERSION="6.0" -DXINERAMA
LDFLAGS = -s -L/usr/lib -lc -L/usr/X11R6/lib -lX11 -L/usr/X11R6/lib -lXinerama
CC = cc
installing executable file to /root/dwm/pkg/dwm/usr/bin
installing manual page to /root/dwm/pkg/dwm/usr/share/man/man1
loading packages...
resolving dependencies...
looking for inter-conflicts...
Packages (1): dwm-6.0-2
Total Installed Size: 0.09 MiB
Net Upgrade Size: 0.00 MiB
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
checking available disk space...
reinstalling dwm...
@jasonwryan: I saw your name in here, nice to meet you (statuscolors-6.0 patch is not exists).

Similar Messages

  • [SOLVED] dwm doesn't compile with moveresize function

    I'am trying to compile dwm with moveresize function but I get this error:
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.7.2" -DXINERAMA
    LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11 -L/usr/lib/X11 -lXinerama
    CC = cc
    CC dwm.c
    In file included from dwm.c:254:0:
    config.h: In function 'moveresize':
    config.h:23:7: error: dereferencing pointer to incomplete type
    config.h:23:34: error: dereferencing pointer to incomplete type
    config.h:26:9: error: dereferencing pointer to incomplete type
    config.h:26:17: error: dereferencing pointer to incomplete type
    config.h:27:6: error: dereferencing pointer to incomplete type
    config.h:28:6: error: dereferencing pointer to incomplete type
    config.h:29:6: error: dereferencing pointer to incomplete type
    make: *** [dwm.o] Error 1
    Here's my config.h
    /* See LICENSE file for copyright and license details. */
    /* appearance */
    static const char font[] = "-*-terminus-*-*-*-*-12-*-*-*-*-*-*-*";
    static const char normbordercolor[] = "#454545";
    static const char normbgcolor[] = "#454545";
    static const char normfgcolor[] = "#C0C0C0";
    static const char selbordercolor[] = "#C0C0C0";
    static const char selbgcolor[] = "#454545";
    static const char selfgcolor[] = "#FFFFFF";
    static const unsigned int borderpx = 1; /* border pixel of windows */
    static const unsigned int snap = 32; /* snap pixel */
    static const Bool showbar = True; /* False means no bar */
    static const Bool topbar = True; /* False means bottom bar */
    /* moveresize */
    static void moveresize(const Arg *arg) {
    XEvent ev;
    Monitor *m = selmon;
    if(!(m->sel && arg && arg->v && m->sel->isfloating))
    return;
    resize(m->sel, m->sel->x + ((int *)arg->v)[0],
    m->sel->y + ((int *)arg->v)[1],
    m->sel->w + ((int *)arg->v)[2],
    m->sel->h + ((int *)arg->v)[3],
    True);
    while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
    /* tagging */
    static const char *tags[] = { "term", "web", "fm", "im", "media", "float" };
    static const Rule rules[] = {
    /* class instance title tags mask isfloating monitor */
    { "Gimp", NULL, NULL, 1 << 5, True, -1 },
    { "Chromium", NULL, NULL, 1 << 1, True, -1 },
    { "MPlayer", NULL, NULL, 0, True, -1 },
    { "Wine", NULL, NULL, 1 << 5, True, -1 },
    { "Gpicview", NULL, NULL, 0, True, -1 },
    { "Pcmanfm", NULL, NULL, 1 << 2, True, -1 },
    { "Xarchiver", NULL, NULL, 0, True, -1 },
    { "Amsn", NULL, NULL, 1 << 3, True, -1 },
    /* layout(s) */
    static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
    static const Bool resizehints = False; /* True means respect size hints in tiled resizals */
    static const Layout layouts[] = {
    /* symbol arrange function */
    { "[]=", tile }, /* first entry is default */
    { "><>", NULL }, /* no layout function means floating behavior */
    { "[M]", monocle },
    /* key definitions */
    #define MODKEY Mod4Mask
    #define TAGKEYS(KEY,TAG) \
    { MODKEY, KEY, view, {.ui = 1 << TAG} }, \
    { MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
    { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
    { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
    /* helper for spawning shell commands in the pre dwm-5.0 fashion */
    #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
    /* commands */
    static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
    static const char *tdmenucmd[] = { "tdmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
    static const char *termcmd[] = { "roxterm", NULL };
    static const char *mutecmd[] = { "amixer", "-q", "sset", "Master", "toggle", NULL };
    static const char *volupcmd[] = { "amixer", "-q", "sset", "Master", "5-", "unmute", NULL };
    static const char *voldowncmd[] = { "amixer", "-q", "sset", "Master", "5+", "unmute", NULL };
    static const char *bgltupcmd[] = { "xbacklight", "-inc", "15", NULL };
    static const char *bgltdowncmd[] = { "xbacklight", "-dec", "1", NULL };
    static const char *displayoff[] = { "xset", "dpms", "force", "off", NULL };
    static const char *suspend[] = { "sudo", "pm-suspend", NULL };
    static Key keys[] = {
    /* modifier key function argument */
    { 0, 0x1008ff12, spawn, {.v = mutecmd } },
    { 0, 0x1008ff11, spawn, {.v = volupcmd } },
    { 0, 0x1008ff13, spawn, {.v = voldowncmd } },
    { 0, 0x1008ff02, spawn, {.v = bgltupcmd } },
    { 0, 0x1008ff03, spawn, {.v = bgltdowncmd } },
    { 0, 0x1008ff59, spawn, {.v = displayoff } },
    { 0, 0x1008ff2f, spawn, {.v = suspend } },
    { MODKEY, XK_p, spawn, {.v = dmenucmd } },
    { MODKEY, XK_r, spawn, {.v = tdmenucmd } },
    { MODKEY, XK_Return, spawn, {.v = termcmd } },
    { MODKEY, XK_b, togglebar, {0} },
    { MODKEY, XK_j, focusstack, {.i = +1 } },
    { MODKEY, XK_k, focusstack, {.i = -1 } },
    { MODKEY, XK_h, setmfact, {.f = -0.05} },
    { MODKEY, XK_l, setmfact, {.f = +0.05} },
    { MODKEY|ShiftMask, XK_Return, zoom, {0} },
    { MODKEY, XK_Tab, view, {0} },
    { MODKEY, XK_c, killclient, {0} },
    { MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
    { MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
    { MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
    { MODKEY, XK_space, setlayout, {0} },
    { MODKEY|ShiftMask, XK_space, togglefloating, {0} },
    { MODKEY, XK_0, view, {.ui = ~0 } },
    { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
    { MODKEY, XK_comma, focusmon, {.i = -1 } },
    { MODKEY, XK_period, focusmon, {.i = +1 } },
    { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
    { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
    { MODKEY|ShiftMask, XK_q, quit, {0} },
    { MODKEY, XK_Down, moveresize, {.v = (int []){ 0, 25, 0, 0 }}},
    { MODKEY, XK_Up, moveresize, {.v = (int []){ 0, -25, 0, 0 }}},
    { MODKEY, XK_Right, moveresize, {.v = (int []){ 25, 0, 0, 0 }}},
    { MODKEY, XK_Left, moveresize, {.v = (int []){ -25, 0, 0, 0 }}},
    { MODKEY|ShiftMask, XK_Down, moveresize, {.v = (int []){ 0, 0, 0, 25 }}},
    { MODKEY|ShiftMask, XK_Up, moveresize, {.v = (int []){ 0, 0, 0, -25 }}},
    { MODKEY|ShiftMask, XK_Right, moveresize, {.v = (int []){ 0, 0, 25, 0 }}},
    { MODKEY|ShiftMask, XK_Left, moveresize, {.v = (int []){ 0, 0, -25, 0 }}},
    TAGKEYS( XK_1, 0)
    TAGKEYS( XK_2, 1)
    TAGKEYS( XK_3, 2)
    TAGKEYS( XK_4, 3)
    TAGKEYS( XK_5, 4)
    TAGKEYS( XK_6, 5)
    TAGKEYS( XK_7, 6)
    TAGKEYS( XK_8, 7)
    TAGKEYS( XK_9, 8)
    /* button definitions */
    /* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
    static Button buttons[] = {
    /* click event mask button function argument */
    { ClkLtSymbol, 0, Button1, setlayout, {0} },
    { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
    { ClkWinTitle, 0, Button2, zoom, {0} },
    { ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
    { ClkClientWin, MODKEY, Button1, movemouse, {0} },
    { ClkClientWin, MODKEY, Button2, togglefloating, {0} },
    { ClkClientWin, MODKEY|ShiftMask, Button1, resizemouse, {0} },
    { ClkTagBar, 0, Button1, view, {0} },
    { ClkTagBar, 0, Button3, toggleview, {0} },
    { ClkTagBar, MODKEY, Button1, tag, {0} },
    { ClkTagBar, MODKEY, Button3, toggletag, {0} },
    Last edited by Aakko (2010-05-30 18:21:30)

    ber_t wrote:A vanilla dwm compiles fine with your config.h. So I guess you're using other patches that rearrange the #include directive for config.h in dwm.c, e.g. pertag. If that's the case, you have to put the moveresize function in dwm.c and declare it before config.h get's included, just like any other function in dwm.c.
    Yes I had dwm.c patched with pertag. Vanilla compiles fine. Thanks!

  • [SOLVED] DWM - how do you apply patches with patch?

    I'm totally new to dwm (it's working great by the way) and patching. I'm having problems understanding how to use the patch program. The basic usage on dwm site says basically:
    patch -p1 < path/to/patch.diff
    Great, now I have the patch file ~/builds/dwn/patch/dwm-5.9-statuscolors.diff and my altered ~/builds/dwn/config.h. Here's what I did
    herman@sam ~/builds/dwm $ patch -p1 <patch/dwm-5.9-statuscolors.diff
    can't find file to patch at input line 4
    Perhaps you used the wrong -p or --strip option?
    The text leading up to this was:
    |diff -up dwm-5.9/config.def.h dwm-5.9-colors/config.def.h
    |--- dwm-5.9/config.def.h 2011-07-10 16:24:25.000000000 -0400
    |+++ dwm-5.9-colors/config.def.h 2011-08-18 02:02:47.033830823 -0400
    File to patch: config.def.h
    config.def.h: No such file or directory
    Skip this patch? [y]
    Skipping patch.
    2 out of 2 hunks ignored
    can't find file to patch at input line 41
    Perhaps you used the wrong -p or --strip option?
    The text leading up to this was:
    |Only in dwm-5.9: config.h
    |Only in dwm-5.9: dwm
    |diff -up dwm-5.9/dwm.c dwm-5.9-colors/dwm.c
    |--- dwm-5.9/dwm.c 2011-07-10 16:24:25.000000000 -0400
    |+++ dwm-5.9-colors/dwm.c 2011-08-18 02:07:20.788935100 -0400
    File to patch: dwm.c
    dwm.c: No such file or directory
    Skip this patch? [y]
    Skipping patch.
    12 out of 12 hunks ignored
    and it asks me for the filename it didn't find at line 4. Looking at the patch, I see it's a diff on config.def.h so I suppose this is the file to be patched and that I should supply this filename and the same with dwm.c? I'm not new to C coding but fresh out when it comes to diffing and patching, how do I actually go forward from here?
    Edit:
    More info  - I used the description using ABS to download the PKGBUILD for dwm and making dwm. My files
    herman@sam ~/builds/dwm $ ls -R
    PKGBUILD config.h dwm-5.9-2-x86_64.pkg.tar.xz dwm-5.9.tar.gz dwm.desktop dwm.install patch pkg src
    ./patch:
    dwm-5.9-statuscolors.diff
    ./pkg:
    usr
    ./pkg/usr:
    bin share
    ./pkg/usr/bin:
    dwm
    ./pkg/usr/share:
    doc licenses man xsessions
    ./pkg/usr/share/doc:
    dwm
    ./pkg/usr/share/doc/dwm:
    README
    ./pkg/usr/share/licenses:
    dwm
    ./pkg/usr/share/licenses/dwm:
    LICENSE
    ./pkg/usr/share/man:
    man1
    ./pkg/usr/share/man/man1:
    dwm.1.gz
    ./pkg/usr/share/xsessions:
    dwm.desktop
    ./src:
    config.h dwm-5.9 dwm-5.9.tar.gz dwm.desktop
    ./src/dwm-5.9:
    LICENSE Makefile README config.def.h config.def.h.orig config.def.h.rej config.h config.mk dwm dwm.1 dwm.c dwm.o
    Last edited by roygbiv (2011-12-06 20:37:40)

    Ok thanks but I'm confused again (I know..). I managed to patch the files config.def.h and dwm.c in the source dir and noticed there is yet another config.h file there as well. Now, the in the top level dir with the PKGBUILD I also have a config.h, which is the one I do my config changes. I'm confused because I now have these three header files (2x config.h + config.def.h) which are supposed to have the same source code? I've read around on the net, but haven't gotten any further answers yet. What are the purpose of each config and how should I use/update/manage them when recompiling? This is my situation:
    herman@sam ~/build/dwm $ tree .
    ├── PKGBUILD
    ├── config.h <----------------------------------------------------- this one
    ├── dwm-5.9-2-x86_64.pkg.tar.xz
    ├── dwm-5.9.tar.gz
    ├── dwm.desktop
    ├── dwm.install
    ├── pkg
    │   └── usr
    │   ├── bin
    │   │   └── dwm
    │   └── share
    │   ├── doc
    │   │   └── dwm
    │   │   └── README
    │   ├── licenses
    │   │   └── dwm
    │   │   └── LICENSE
    │   ├── man
    │   │   └── man1
    │   │   └── dwm.1.gz
    │   └── xsessions
    │   └── dwm.desktop
    └── src
    ├── config.h -> /home/herman/build/dwm/config.h
    ├── dwm-5.9
    │   ├── LICENSE
    │   ├── Makefile
    │   ├── README
    │   ├── config.def.h <-----------------------------------------------------this one
    │   ├── config.def.h.orig
    │   ├── config.h <----------------------------------------------------------this one
    │   ├── config.mk
    │   ├── dwm
    │   ├── dwm-5.9-statuscolors.diff
    │   ├── dwm.1
    │   ├── dwm.c
    │   ├── dwm.c.orig
    │   └── dwm.o
    ├── dwm-5.9.tar.gz -> /home/herman/build/dwm/dwm-5.9.tar.gz
    └── dwm.desktop -> /home/herman/build/dwm/dwm.desktop
    Thanks guys!
    Last edited by roygbiv (2011-12-06 20:06:10)

  • [SOLVED] DWM running with gnome difficulties - cracked leaving GNOME!

    UPDATE: concept as a perceived requirement has been scrubed. No longer needing Gnome's environment ... just some gtk/gnome libraries here and there though, obviously. See last post of mine here if ya like and you're rushed a bit.
    Having problems getting gnome to live with DWM though I can compile myself as i just learned how from the wiki.
    OBJECTIVE: retain at least the bottom menu bar of gnome (and program access) for a while yet ....  while using DWM.
    Hi... having the most amazing time with Xmonad, awesome, stumpwm, dmenu etc.
    At this point I've realized that Xmonad and DWM have basically the same keybinding.
    For how it work WELL, as it's an originator, and keeping it simple ummm.... was it 18k or 180k?  hehehe  (see other posts about dwm) I'm going to go with dwm for the forseeable future. they're all great though having done the studying it's really a simple decision.... If I wanted to swap to something else later I'd have the skill to know how simple that would be... dwm does cover ALL of what I sensibly need to work quickly and SIMPLY/manageably...
    DUE TO UPDATE COMMENT AT TOP  - SOME OF THE NEXT COUPLE OF POST IS REDUNDANT a BIT though maybe not:
    So... I'm wishing to be able to access my folders and programs through the gnome menu as a fail-safe until I figure out how to get around any gottcha before I reinstall WITHOUT gnome (just some of the libraries obviously for packages that need them)
    I really need to get going immediately with DWM and having had lots of fun with Xmonad (works easily with gnome though i like the simplicity of default DWM) ...
    ALL I really need is what I now have left of gnome's desktop visibility which is the bottom bar with a menu applet embeded in it...
    Actually.... IF there's a way to GRAPHICALLY see folders ie. boot programs without having to find the binary though would be cool.
    Gnome can do it's thing in the background.... though right now ALL I can get by adding DWM WITH metacity in the gnome sessions properties leaves me WITHOUT the bootom bar that gets me to my programs...
    yep, duh.
    any assistance apreciated as I can't stand working without dwm (or similar tiling wm) though I'm too new at it and generally not skilled enough at this move to get to my program's ICONS...  using dmenu for all booting just isn't practical for me today..  then again who knows what the next hour will bring! hehehe
    So..... ANYONE have DWM code that'll work??? .... I think I'd prefer it to be stock otherwise...
    whatver happens thanks and everything's so cool.... have learned SO much....
    Last edited by yvonney (2009-02-03 09:44:22)

    well as i remember, my own path was something like this...
    Windozes -> PCLinuxOS -> (K-X)Ubuntu -> Arch(XFCE4(desktop environment)) -> Arch(Fluxbox(no DE)) -> Arch(wmii+gnu/screen) -> Arch(dwm+gnu/screen)
    not talking about GNU/screen its like not talking about breathing to me right now at the beggining (like all i pass throught in GNU/linux) i can barely understand something "as complex" to understand like screen, but using it, showed me that EVERYTHING is a matter of understanding throught direct experience
    so i'll recommend to you that you start looking to gnu/screen, is so damn easy to configure/use once you understand it, but difficult when you start reading about it, like dwm is in first place
    what i do for file assosiations and such is using midnight commander (cli-file manager) and i edited a menu (F2 on a dir/file) and it popups showing the list of apps that i configured to open that file extension, i configured tuxcmd in the past but i didnt used it for months now...
    here's the ~/.mc/menu i did... (i use urxvt as a daemon starting "urxvtd -q -f -o &" in .xinit, you may change "urxvtc" with your terminal emulator of choice... (i hope it will be urxvt(c) and not something like gnome-terminal )
    shell_patterns=0
    + ! t t
    @ Do something on the current file
    CMD=%{Enter command}
    $CMD %f
    7 compress to 7zip (dir27z)
    urxvtc -e dir27z %f &
    @ compress file to zip (file2zip)
    urxvtc -e file2zip %f &
    @ compress dir to zip (dir2zip)
    urxvtc -e dir2zip %f &
    @ dir to iso (mkisofs -V volume_name -J -r -o isoimage.iso)
    urxvtc -e mkisofs -V NEW -J -r -o isoimage.iso %f &
    s make symlink in /tmp/burn (mksym)
    mksym %f &
    x make executable (chmod 755)
    chmod 755 %f
    r chown -cR root:root
    sudo chown -cR root:root %f
    a chown -cR aleyscha:users
    sudo chown -cR aleyscha:users %f
    u mount /dev/cdrom
    mount /dev/cdrom
    u umount /dev/cdrom
    umount /dev/cdrom
    u wodim -v dev=/dev/cdrom -blank=fast
    urxvtc -e wodim -v dev=/dev/cdrom -blank=fast &
    u dd if=/dev/cdrom of=/downloads/New/isoimage.iso
    urxvtc -e dd if=/dev/cdrom of=/downloads/New/isoimage.iso &
    u unmount ISO Image (fusermount -u /mnt/cdrom)
    fusermount -u /mnt/cdrom
    u unmount ISO Image (fusermount -u /mnt/iso1)
    fusermount -u /mnt/iso1
    u unmount ISO Image (fusermount -u /mnt/iso2)
    fusermount -u /mnt/iso2
    g edit file in gvim as root (sudo gvim %f &)
    sudo gvim %f &
    c copy (fui %f)
    urxvtc -e fui %f &
    p paste (fui --copy)
    urxvtc -e fui --copy &
    p paste (fui --move)
    urxvtc -e fui --move &
    c clamscan (clamscan --recursive --infected --bell --remove)
    urxvtc -e clamscan --recursive --infected --bell --remove %f &
    b Send via Bluetooth to device (obexftp -b 00:17:D5:85:0D:6F -p)
    obexftp -b 00:17:D5:85:0D:6F -p %f &
    + t t
    d Do something on the tagged files
    set %t; CMD=%{Enter command}
    while [ -n "$1" ]; do
    $CMD "$1"
    shift
    done
    + t t
    @ Make symlink in /tmp/burn
    while [ -n "$1" ]; do
    mksym "$1"
    shift
    done
    0 Edit a bug report and send it to root
    I=`mktemp ${MC_TMPDIR:-/tmp}/mail.XXXXXX` || exit 1
    ${EDITOR-vi} $I
    test -r $I && mail root < $I
    rm -f $I
    =+ f \.1$ | f \.3$ | f \.4$ | f \.5$ | f \.6$ | f \.7$ | f \.8$ | f \.man$ & t r
    1 Display the file with roff -man
    nroff -man %f | less
    2 Call the info hypertext browser
    info
    = t d
    3 Compress the current subdirectory (tar.gz)
    Pwd=`basename "%d" /`
    echo -n "Name of the compressed file (without extension) [$Pwd]: "
    read tar
    if [ "$tar"x = x ]; then tar="$Pwd"; fi
    cd .. && \
    tar cf - "$Pwd" | gzip -f9 > "$tar.tar.gz" && \
    echo "../$tar.tar.gz created."
    4 Compress the current subdirectory (tar.bz2)
    Pwd=`basename %d /`
    echo -n "Name of the compressed file (without extension) [$Pwd]: "
    read tar
    if [ "$tar"x = x ]; then tar="$Pwd"; fi
    cd .. && \
    tar cf - "$Pwd" | bzip2 -f > "$tar.tar.bz2" && \
    echo "../$tar.tar.bz2 created."
    = f \.c$ & t r
    + f \.c$ & t r & ! t t
    5 Compile and link current .c file
    make `basename %f .c` 2>/dev/null || cc -O -o `basename %f .c` %f
    + t r & ! t t
    a Append file to opposite
    cat %f >>%D/%f
    + t t
    A Append files to opposite files
    set %t
    while [ -n "$1" ]; do
    cat $1 >>%D/$1
    shift
    done
    + t r & ! t t
    d Delete file if a copy exists in the other directory.
    if [ "%d" = "%D" ]; then
    echo "The two directores must be different"
    exit 1
    fi
    if [ -f %D/%f ]; then # if two of them, then
    if cmp -s %D/%f %f; then
    rm %f && echo %f: DELETED
    else
    echo "%f and %D/%f differ: NOT deleted"
    echo -n "Press RETURN "
    read key
    fi
    else
    echo %f: No copy in %D/%f: NOT deleted.
    fi
    + t t
    D Delete tagged files if a copy exists in the other directory.
    if [ "%d" = "%D" ]; then
    echo "The two directores must be different"
    exit 1
    fi
    for i in %t
    do
    if [ -f %D/$i ]; then
    SUM1="`sum $i`"
    SUM2="`sum %D/$i`"
    if [ "$SUM1" = "$SUM2" ]; then
    rm $i && echo ${i}: DELETED
    else
    echo $i and %D/$i differ: NOT deleted.
    fi
    else
    echo %f has no copy in %D/%f: NOT deleted.
    fi
    done
    m View manual page
    MAN=%{Enter manual name}
    %view man -P cat $MAN
    = f \.gz$ & t r
    + ! t t
    n Inspect gzip'ed newsbatch file
    dd if=%f bs=1 skip=12|zcat|${PAGER-more}
    # assuming the cunbatch header is 12 bytes long.
    = t r &
    + ! t t
    h Strip headers from current newsarticle
    CHECK=`awk '{print $1 ; exit}' %f` 2>/dev/null
    case $CHECK in
    Newsgroups:|Path:)
    I=`mktemp ${MC_TMPDIR:-/tmp}/news.XXXXXX` || exit 1
    cp %f $I && sed '/^'"$CHECK"' /,/^$/d' $I > %f
    [ "$?" = "0" ] && rm $I
    echo %f: header removed
    echo %f is not a news article.
    esac
    + t t
    H Strip headers from the marked newsarticles
    set %t
    while [ -n "$1" ]; do
    CHECK=`awk '{print $1 ; exit}' $1` 2>/dev/null
    WFILE=`mktemp ${MC_TMPDIR:-/tmp}/news.XXXXXX` || exit 1
    case $CHECK in
    Newsgroups:|Path:)
    cp $1 $WFILE && sed '/^'"$CHECK"' /,/^$/d' $WFILE > $1
    if [ "$?" = "0" ]; then
    rm $WFILE; echo $1 header removed. OK.
    else
    echo "Oops! Please check $1 against $WFILE"
    fi
    echo $1 skipped: Not a news article.
    esac
    shift
    done
    = t r
    + ! t t
    r Copy file to remote host
    echo -n "To which host?: "
    read Host
    echo -n "To which directory on $Host?: "
    read Dir
    rcp -p %f ${Host}:$Dir
    + t t
    R Copy files to remote host (no error checking)
    echo -n "Copy files to which host?: "
    read Host
    echo -n "To which directory on $Host? :"
    read Dir
    rcp -pr %u ${Host}:$Dir
    = f \.tex$ & t r
    + f \.tex$ & t r & ! t t
    t Run latex on file and show it with xdvi
    latex %f && xdvi `basename %f .tex`.dvi
    =+ f ^part | f ^Part | f uue & t r
    + t t
    U Uudecode marked news articles (needs work)
    set %t
    while [ -n "$1" ]; do # strip headers
    FIRST=`awk '{print $1 ; exit}' $1`
    cat $1 | sed '/^'"$FIRST"' /,/^$/d'; shift
    done
    ) |sed '/^$/d' |sed -n '/^begin 6/,/^end$/p' | uudecode
    if [ "$?" != "0" ]; then
    echo "Cannot decode %t"
    fi
    echo "Please test the output file before deleting anything"
    =+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.Z$| f \.tar\.bz2$ & t r
    x Extract the contents of a compressed tar file
    unset EXT
    case %f in
    *.tar.bz2) EXT=tar_bz2;;
    esac
    if [ "$EXT" = "tar_bz2" ]; then
    bunzip2 -c %f | tar xvf -
    else
    gzip -dc %f | tar xvf -
    fi
    = t r
    + ! t t
    y Gzip or gunzip current file
    unset DECOMP
    case %f in
    *.gz) DECOMP=-d;;
    *.[zZ]) DECOMP=-d;;
    esac
    gzip $DECOMP -v %f
    + t t
    Y Gzip or gunzip tagged files
    for i in %t
    do
    unset DECOMP
    case $i in
    *.gz) DECOMP=-d;;
    *.[zZ]) DECOMP=-d;;
    esac
    gzip $DECOMP -v $i
    done
    + ! t t
    b Bzip2 or bunzip2 current file
    unset DECOMP
    case %f in
    *.bz2) DECOMP=-d;;
    esac
    bzip2 $DECOMP -v %f
    + t t
    B Bzip2 or bunzip2 tagged files
    for i in %t
    do
    unset DECOMP
    case $i in
    *.bz2) DECOMP=-d;;
    esac
    bzip2 $DECOMP -v $i
    done
    + f \.tar.gz$ | f \.tgz$ | f \.tpz$ | f \.tar.Z$ | f \.tar.z$ | f \.tar.bz2$ | f \.tar.F$ & t r & ! t t
    z Extract compressed tar file to subdirectory
    unset D
    set gzip -cd
    case %f in
    *.tar.gz) D="`basename %f .tar.gz`";;
    *.tgz) D="`basename %f .tgz`";;
    *.tpz) D="`basename %f .tpz`";;
    *.tar.Z) D="`basename %f .tar.Z`";;
    *.tar.z) D="`basename %f .tar.z`";;
    *.tar.bz2) D="`basename %f .tar.bz2`"; set bunzip2 -c ;;
    *.tar.F) D="`basename %f .tar.F`"; set freeze -dc;
    esac
    mkdir $D; cd $D && ($1 $2 ../%f | tar xvf -)
    + t t
    Z Extract compressed tar files to subdirectories
    for i in %t
    do
    set gzip -dc
    unset D
    case $i in
    *.tar.gz) D="`basename $i .tar.gz`";;
    *.tgz) D="`basename $i .tgz`";;
    *.tpz) D="`basename $i .tpz`";;
    *.tar.Z) D="`basename $i .tar.Z`";;
    *.tar.z) D="`basename $i .tar.z`";;
    *.tar.F) D="`basename $i .tar.F`"; set freeze -dc;;
    *.tar.bz2) D="`basename $i .tar.bz2`"; set bunzip2 -c;;
    esac
    mkdir $D; (cd $D && $1 $2 ../$i | tar xvf -)
    done
    + f \.gz$ | f \.tgz$ | f \.tpz$ | f \.Z$ | f \.z$ | f \.bz2$ & t r & ! t t
    c Convert gz<->bz2, tar.gz<->tar.bz2 & tgz->tar.bz2
    unset D
    unset EXT
    case %f in
    *.tgz) EXT=tgz;;
    *.tpz) EXT=tpz;;
    *.Z) EXT=Z;;
    *.z) EXT=z;;
    *.gz) EXT=gz;;
    *.bz2) EXT=bz2;;
    esac
    case $EXT in
    tgz|tpz) D="`basename %f .$EXT`.tar";;
    gz|Z|z) D="`basename %f .$EXT`";;
    bz2) D="`basename %f .bz2`";;
    esac
    if [ "$EXT" = "bz2" ]; then
    bunzip2 -v %f ; gzip -f9 -v $D
    else
    gunzip -v %f ; bzip2 -v $D
    fi
    + t t
    C Convert gz<->bz2, tar.gz<->tar.bz2 & tgz->tar.bz2
    set %t
    while [ -n "$1" ]
    do
    unset D
    unset EXT
    case $1 in
    *.tgz) EXT=tgz;;
    *.tpz) EXT=tpz;;
    *.Z) EXT=Z;;
    *.z) EXT=z;;
    *.gz) EXT=gz;;
    *.bz2) EXT=bz2;;
    esac
    case $EXT in
    tgz) D="`basename $1 .tgz`.tar";;
    tpz) D="`basename $1 .tpz`.tar";;
    gz|Z|z) D="`basename $1 .$EXT`";;
    bz2) D="`basename $1 .bz2`";;
    esac
    if [ "$EXT" = "bz2" ]; then
    bunzip2 -v $1
    gzip -f9 -v $D
    else
    gunzip -v $1
    bzip2 -v $D
    fi
    shift
    done
    + x /usr/bin/open | x /usr/local/bin/open & x /bin/sh
    o Open next a free console
    open -s -- sh
    #### Added by me ####
    #### Video File Menu ####
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    p mplayer
    mplayer %f
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    i ffmpeg -i (show audio/video info)
    ffmpeg -i %f
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    i mediainfo (show audio/video info)
    mediainfo %f
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    v vlc
    vlc %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Edit with AviDemux (avidemux2_gtk %f)
    avidemux2_gtk %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Encode to h264 vhq 96 700 (enc2h264 vhq 96 700 %f)
    urxvtc -e enc2h264 vhq 96 700 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Encode to h264 hq 64 500 (enc2h264 hq 64 500 %f)
    urxvtc -e enc2h264 hq 64 500 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Encode to h264 wmv 17fps 500 64 (enc2h264 wmv17 %f)
    urxvtc -e enc2h264 wmv17 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Encode to h264 wmv 25fps 500 64 (enc2h264 wmv25 %f)
    urxvtc -e enc2h264 wmv25 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    @ Encode to -oac mp3_abr_96 (enc2h264 audio 96)
    urxvtc -e enc2h264 audio 96 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    @ Encode to vhq 140 1000 (scale to 624x352, enc2h264 series %f)
    urxvtc -e enc2h264 series %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    e Encode to mpg 160 1152 (enc2mpg mpg 160 1152 %f)
    urxvtc -e enc2mpg mpg 160 1152 %f &
    + f \.avi$ | f \.mpg$ | f \.mpeg$ | f \.mkv$ | f \.ts$ | f \.rm$ | f \.vob$ | f \.VOB$ | f \.rmvb$ | f \.flv$ | f \.wmv | f \.ram | f \.mp4 | f \.asf | f \.ogm | f \.m2v | f \.evo$ & t r & ! t t
    f mplayer framebuffer (mplayer -vo fbdev -fs)
    mplayer -vo fbdev -fs %f
    + f \.mkv$ & t r & ! t t
    e Extract mkv file (video-audio-subtitle, extractmkv %f)
    urxvtc -e extractmkv %f &
    #### Audio File Menu ####
    + f \.wav$ | f \.mp3$ | f \.au$ | f \.aiff$ | f \.snd$ | f \.mp2$ | f \.flac$ | f \.wma$ | f \.snd$ | f \.mpc$ | f \.ac3$ | f \.mid$ | f \.ogg$ & t r & ! t t
    p mplayer
    urxvtc -e mplayer %f &
    + f \.wav$ | f \.mp3$ | f \.au$ | f \.aiff$ | f \.snd$ | f \.mp2$ | f \.flac$ | f \.wma$ | f \.snd$ | f \.mpc$ | f \.ac3$ | f \.mid$ | f \.ogg$ & t r & ! t t
    i ffmpeg -i (show audio/video info)
    ffmpeg -i %f &
    + f \.wav$ | f \.mp3$ | f \.au$ | f \.aiff$ | f \.snd$ | f \.mp2$ | f \.flac$ | f \.wma$ | f \.snd$ | f \.mpc$ | f \.ac3$ | f \.mid$ | f \.ogg$ & t r & ! t t
    i mediainfo (show audio/video info)
    mediainfo %f &
    + f \.wav$ | f \.mp3$ | f \.au$ | f \.aiff$ | f \.snd$ | f \.mp2$ | f \.flac$ | f \.wma$ | f \.snd$ | f \.mpc$ | f \.ac3$ | f \.mid$ | f \.ogg$ & t r & ! t t
    a audacity
    audacity %f
    + f \.wav$ | f \.mp3$ | f \.au$ | f \.aiff$ | f \.snd$ | f \.mp2$ | f \.flac$ | f \.wma$ | f \.snd$ | f \.mpc$ | f \.ac3$ | f \.mid$ | f \.ogg$ & t r & ! t t
    e Encode to ABR MP3 (enc2mp3)
    urxvtc -e enc2mp3 %f &
    #### Disk Image File Menu ####
    + f \.iso$ | f \.ccd$ | f \.img$ | f \.nrg$ | f \.mdf$ | f \.cue$ | f \.bin$ | f \.daa$ | f \.b6t$ | f \.b6i$ & t r & ! t t
    i isomaster
    isomaster %f
    + f \.cue$ | f \.bin$ & t r & ! t t
    3 Convert BIN to ISO (bin2iso)
    urxvtc -e bin2iso %f &
    + f \.iso$ | f \.ccd$ | f \.img$ | f \.nrg$ | f \.mdf$ | f \.cue$ | f \.bin$ | f \.daa$ | f \.b6t$ | f \.b6i$ & t r & ! t t
    c Poweriso convert image to ISO (all2iso)
    urxvtc -e all2iso %f &
    + f \.ccd$ & t r & ! t t
    5 Convert CCD to ISO (myccd2iso)
    urxvtc -e myccd2iso %f &
    + f \.iso$ | f \.bin$ | f \.img$ | f \.nrg$ | f \.mdf$ & t r & ! t t
    5 Fuseiso mount image /mnt/cdrom (fuseiso %f /mnt/cdrom)
    fuseiso %f /mnt/cdrom
    + f \.iso$ | f \.bin$ | f \.img$ | f \.nrg$ | f \.mdf$ & t r & ! t t
    5 Fuseiso mount image /mnt/iso1 (fuseiso %f /mnt/iso1)
    fuseiso %f /mnt/iso1
    + f \.iso$ | f \.bin$ | f \.img$ | f \.nrg$ | f \.mdf$ & t r & ! t t
    5 Fuseiso mount image /mnt/iso2 (fuseiso %f /mnt/iso2)
    fuseiso %f /mnt/iso2
    + f \.cue$ & t r & ! t t
    5 Burn BIN/CUE image (cdrdao write --device /dev/cdrom %f)
    urxvtc -e cdrdao write --device /dev/cdrom %f &
    + f \.iso$ | f \.bin$ & t r & ! t t
    5 Burn ISO image (burn-cd -m)
    urxvtc -e burn-cd -m %f &
    + f \.iso$ & t r & ! t t
    5 Burn ISO image (wodim -v dev=/dev/cdrom)
    urxvtc -e wodim -v dev=/dev/cdrom %f &
    #### Image File Menu ####
    + f \.jpg$ | f \.jpeg$ | f \.bmp$ | f \.png$ | f \.gif$ | f \.svg$ & t r & ! t t
    v xv
    xv %f &
    + f \.jpg$ | f \.jpeg$ | f \.bmp$ | f \.png$ | f \.gif$ | f \.svg$ & t r & ! t t
    v feh
    feh %f &
    + f \.jpg$ | f \.jpeg$ | f \.bmp$ | f \.png$ | f \.gif$ | f \.svg$ & t r & ! t t
    f feh --scale-down
    feh --scale-down %f &
    + f \.jpg$ | f \.jpeg$ | f \.bmp$ | f \.png$ | f \.gif$ | f \.svg$ & t r & ! t t
    g gimp
    gimp %f &
    + f \.jpg$ | f \.jpeg$ | f \.bmp$ | f \.png$ | f \.gif$ | f \.svg$ & t r & ! t t
    3 geeqie
    geeqie %f &
    #### PDF File Menu ####
    + f \.pdf$ & t r & ! t t
    v epdfview
    epdfview %f &
    + f \.pdf$ & t r & ! t t
    x xpdf
    xpdf %f
    + f \.pdf$ & t r & ! t t
    x viewpdf
    urxvtc -e viewpdf %f &
    #### Text File Menu ####
    + f \.txt$ | f \.nfo$ | f \.cfg$ | f \.log$ | f \.srt$ | f \.sub$ | f \.ssa$ & t r & ! t t
    v leafpad
    leafpad %f &
    + f \.txt$ | f \.nfo$ | f \.cfg$ | f \.log$ | f \.srt$ | f \.sub$ | f \.ssa$ & t r & ! t t
    g gvim
    gvim %f &
    #### Archive File Menu ####
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    l List file contents (7z l)
    urxvtc -e 7z l %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    1 xarchiver
    xarchiver %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    2 Extract *.tar.gz (tar -xzvf)
    urxvtc -e tar -xzvf %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    3 Extract *.tar.bz2 (tar -xjvf)
    urxvtc -e tar -xjvf %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ | f \.cbr$ | f \.cbz$ & t r & ! t t
    4 Extract *.rar Full Path (unrar x)
    urxvtc -e unrar x %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ | f \.cbr$ | f \.cbz$ & t r & ! t t
    5 Extract *.rar Current Dir (unrar e)
    urxvtc -e unrar e %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ | f \.cbr$ | f \.cbz$ & t r & ! t t
    5 Extract broken *.rar Full Path (unrar x -kb)
    urxvtc -e unrar x -kb %f &
    + f \.zip$ & t r & ! t t
    6 Extract *.zip (unzip)
    urxvtc -e unzip %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    6 Extract *.zip with bsdtar (bsdtar -xvf)
    urxvtc -e bsdtar -xvf %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    7 Extract *.7z Full Path (7z x)
    urxvtc -e 7z x %f &
    + f \.zip$ | f \.tar.gz$ | f \.rar$ | f \.bz2$ | f \.tgz$ | f \.7z$ | f \.ace$ & t r & ! t t
    8 Extract *.7z Current Dir (7z e)
    urxvtc -e 7z e %f &
    + f \.ace$ & t r & ! t t
    9 Extract *.ace Full Path (unace x)
    urxvtc -e unace x %f &
    + f \.ace$ & t r & ! t t
    a Extract *.ace Current Dir (unace e)
    urxvtc -e unace e %f &
    + f \.rar$ | f \.cbz$ & t r & ! t t
    b Extract *.rar in *.rar_dir directory (unrar2dir)
    urxvtc -e unrar2dir %f &
    + f \.zip$ & t r & ! t t
    c Extract *.zip in *.zip_dir directory (unzip2dir)
    urxvtc -e unzip2dir %f &
    + f \.tar.gz$ | f \.bz2$ | f \.tgz$ & t r & ! t t
    e yaourt Install/Upgrade Package (yaourt -U)
    yaourt -U %f
    #### Windows Executable File Menu ####
    + f \.exe$ | f \.EXE$ | f \.bat$ | f \.BAT$ & t r & ! t t
    r wine
    urxvtc -e wine %f &
    + f \.exe$ | f \.EXE$ | f \.bat$ | f \.BAT$ | f \.cmd$ | f \.CMD$ | f \.COM$ | f \.com$ & t r & ! t t
    r Dosbox (Dosbox normal)
    Dosbox normal %f &
    + f \.exe$ | f \.EXE$ | f \.bat$ | f \.BAT$ | f \.cmd$ | f \.CMD$ | f \.COM$ | f \.com$ & t r & ! t t
    r Dosbox (Dosbox normal3x)
    Dosbox normal3x %f &
    + f \.exe$ | f \.EXE$ | f \.bat$ | f \.BAT$ | f \.cmd$ | f \.CMD$ | f \.COM$ | f \.com$ & t r & ! t t
    r Dosbox (Dosbox advmame3x)
    Dosbox advmame3x %f &
    #### Internet File Menu ####
    + f \.htm$ | f \.html$ | f \.php$ | f \.asp$ & t r & ! t t
    k kazehakase
    kazehakase %f
    + f \.htm$ | f \.html$ | f \.php$ | f \.asp$ & t r & ! t t
    s swiftweasel
    swiftweasel %f
    + f \.htm$ | f \.html$ | f \.php$ | f \.asp$ & t r & ! t t
    s elinks
    urxvtc -e elinks %f &
    + f \.htm$ | f \.html$ | f \.php$ | f \.asp$ & t r & ! t t
    s links -g
    links -g %f
    #### Document File Menu ####
    + f \.doc$ | f \.rtf$ & t r & ! t t
    a abiword
    abiword %f
    + f \.doc$ | f \.rtf$ & t r & ! t t
    o OpenOffice Writer
    soffice -writer %f
    + f \.doc$ | f \.rtf$ & t r & ! t t
    o antiword
    urxvtc -e antiword %f &
    + f \.doc$ | f \.rtf$ & t r & ! t t
    o viewword (antiword -f %f > vi)
    urxvtc -e viewword %f &
    + f \.lit$ & t r & ! t t
    o c-lit
    c-lit %f
    #### Spread Sheet File Menu ####
    + f \.xls$ | f \.csv$ & t r & ! t t
    g gnumeric
    gnumeric %f
    #### Presentation File Menu ####
    + f \.ppt$ | f \.pps$ & t r & ! t t
    v OpenOffice Impress (soffice -impress)
    soffice -impress %f
    #### Java File Menu ####
    + f \.jar$ & t r & ! t t
    e Execute java program (java -jar)
    java -jar %f
    #### Help/Manual File Menu ####
    + f \.chm$ & t r & ! t t
    v xchm
    xchm %f
    #### Emulator Roms ####
    + f \.smc$ & t r & ! t t
    v zsnes
    zsnes %f
    + f \.smc$ & t r & ! t t
    v snes9x (snes9x -tr -dfr -y2)
    snes9x -tr -dfr -y2 %f
    + f \.smd$ & t r & ! t t
    v dgen (dgen -G 1280x960)
    dgen -G 1280x960 %f
    + f \.v64$ | f \.z64$ & t r & ! t t
    v mupen64_nogui
    mupen64_nogui %f
    + f \.nes$ & t r & ! t t
    v tuxnes
    tuxnes %f
    + f \.nes$ & t r & ! t t
    v fceu
    fceu -input1 gamepad %f
    + f \.nes$ & t r & ! t t
    v ines
    ines %f
    + f \.int$ & t r & ! t t
    v intellivission
    int %f
    + f \.gb$ | f \.gba$ & t r & ! t t
    v VisualBoyAdvance
    VisualBoyAdvance -4 %f
    + f \.gb$ | f \.gba$ & t r & ! t t
    v gvba
    gvba %f
    + f \.gba$ & t r & ! t t
    v vgba
    vgba %f
    + f \.gb$ & t r & ! t t
    v vgb
    vgb %f
    + f \.adf$ & t r & ! t t
    v amigacomputer
    e-uae %f
    + f \.gcm$ & t r & ! t t
    v tuxcube
    tuxcube %f
    + f \.st$ & t r & ! t t
    v hatari
    hatari %f
    + f \.a26$ & t r & ! t t
    v stella
    stella %f
    + f \.col$ & t r & ! t t
    v colem32
    colem32 %f
    #### Source-Code File Menu ####
    + f \.c$ & t r & ! t t
    c compile source file (gcc -O2 -Wall -pedantic)
    urxvtc -e gcc -O2 -Wall -pedantic %f
    + f \.cpp$ & t r & ! t t
    c compile source file (gcc -O2 -Wall -pedantic)
    urxvtc -e g++ -O2 -Wall -pedantic %f

  • [SOLVED] DWM+pertag+bstack error

    hi
    i'm trying to compile dwm with pertag diff patch and bstack.c
    i get an error while compiling it:
    CC dwm.c
    In file included from config.h:42,
    from dwm.c:254:
    bstack.c: En la función 'bstack':
    bstack.c:7: error: puntero deferenciado a tipo de dato incompletoº
    bstack.c:11:error:puntero..
    make: *** [dwm.o] Error 1
    ==> ERROR: Falló la compilación.ª
    Abortando...
    º means: dereference pointer to incomplete data type
    ª means: Compilation failed.
    it sucks 'cos i want to read pdf on top of my 10" screen and write documents at bottom, without the problem of change to another desktop and have to move to another layout, i.e., floating for gimp
    another thing: for write this post i must to write the code manually, 'cos a don't know how to copy from urxvt and paste it to firefox.. yep, that's a newbie question
    Edit: solved here
    Last edited by kismet010 (2010-02-08 05:51:09)

    Looks like this workaround isn't enough to get it to compile on the latest hg clone.
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.8" -DXINERAMA
    LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11 -L/usr/lib/X11 -lXinerama
    CC = cc
    CC dwm.c
    dwm.c: In function 'gaplessgrid':
    dwm.c:262: error: dereferencing pointer to incomplete type
    dwm.c:276: error: dereferencing pointer to incomplete type
    dwm.c:276: error: dereferencing pointer to incomplete type
    dwm.c:279: error: dereferencing pointer to incomplete type
    dwm.c:282: error: dereferencing pointer to incomplete type
    dwm.c:282: error: dereferencing pointer to incomplete type
    dwm.c:283: error: dereferencing pointer to incomplete type
    dwm.c:284: error: dereferencing pointer to incomplete type
    make: *** [dwm.o] Error 1
    Line 262 for me is:
    for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next))
    I've tried many things and maybe i'm missing something very simple here.

  • Problem w.r.t. JSF 2.0 with faces-config.xml

    Hi All,
    I am trying to evaluate the features of JSF2.0.
    For that, I have created a very simple application with "JSF 2.0.2".
    There is a page that displays a composite component and some other form related components (inputtext, commandbutton).
    When I deploy my application without any faces-config.xml file, everything renders perfectly fine.
    When I deploy the app with faces-config.xml (even an empty one without any configuration), none of the components get rendered.
    Only the html elements get displayed.
    I need to define some navigation-rules in my config file. I am not sure how to go further from here.
    The app server I am using for deploying my app is GlassFish(v3).
    Any help or pointers towards solving my problem are highly appreciated.
    You can find the xhtml file, etc of my project below.
    Thank you,
    With best regards,
    Praveen
    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
         <context-param>
              <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
              <param-value>.xhtml</param-value>
         </context-param>
         <servlet>
              <servlet-name>Faces Servlet</servlet-name>
              <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
              <load-on-startup>1</load-on-startup>
         </servlet>
         <servlet-mapping>
              <servlet-name>Faces Servlet</servlet-name>
              <url-pattern>*.jsf</url-pattern>
         </servlet-mapping>
    </web-app>
    faces-config.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
    <faces-config xmlns="http://java.sun.com/JSF/Configuration">
    </faces-config>
    resources->acicomp->namesection.xhtml
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:composite="http://java.sun.com/jsf/composite">
    <composite:interface>
    </composite:interface>
    <composite:implementation>
         <h:panelGroup>
         <h:panelGrid columns="2">
              <h:outputText value="Name: "/>
              <h:inputText value="myName"/>
              <h:outputText value="Company: "/>
              <h:inputText value="myComp"/>
         </h:panelGrid>
         </h:panelGroup>
    </composite:implementation>
    </html>
    index.xhtml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:aci="http://java.sun.com/jsf/composite/acicomp">
    <h:head>
         <title>JSF Test Program</title>
    </h:head>
    <h:body>
         <p>My Simple Test Program</p>
            <h:form id="testForm" >
                <p>TEST</p>
                <aci:namesection></aci:namesection>
                <h:inputText id="username" value="John" />
                <h:commandButton id="submit" action="response" value="Submit"/>
            </h:form>
    </h:body>
    </html>

    I found the problem.
    The dtd location of the faces-config.xml had to be changed. It was pointing to the schema of 1.1.
    With the following faces-config.xml, my application worked perfectly fine.
    <?xml version="1.0"?>
    <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
                  version="2.0">             
    </faces-config>

  • [SOLVED] dwm Recompile Difficulty

    I am currently running dwm. I followed the abs intall method from the ArchWiki, but have run into trouble when I attempt to make changes to the config.h and recompile. If I make a single simple change to config.h (ex. change the value of "static const char ...color" or "static unsigned int borderpx") I do not notice any change in dwm upon restarting it.
    [filam@lotte dwm]$ makepkg -efi
    ==> Making package: dwm 5.3-1 i686 (Tue Dec 30 11:47:02 EST 2008)
    ==> Checking Runtime Dependencies...
    ==> Checking Buildtime Dependencies...
    ==> WARNING: Skipping source retrieval -- using existing src/ tree
    ==> WARNING: Skipping source integrity checks -- using existing src/ tree
    ==> WARNING: Skipping source extraction -- using existing src/ tree
    ==> Removing existing pkg/ directory...
    ==> Entering fakeroot environment...
    ==> Starting build()...
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.3"
    LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11
    CC = cc
    CC dwm.c
    CC -o dwm
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/X11R6/include -DVERSION="5.3"
    LDFLAGS = -s -L/usr/lib -lc -L/usr/X11R6/lib -lX11
    CC = cc
    installing executable file to /home/filam/dwm/pkg/usr/bin
    installing manual page to /home/filam/dwm/pkg/usr/share/man/man1
    ==> Tidying install...
    -> Compressing man pages...
    -> Stripping debugging symbols from binaries and libraries...
    ==> Creating package...
    -> Generating .PKGINFO file...
    -> Adding install script...
    -> Compressing package...
    ==> Leaving fakeroot environment.
    ==> Finished making: dwm 5.3-1 i686 (Tue Dec 30 11:47:04 EST 2008)
    ==> Installing package dwm with pacman -U...
    We trust you have received the usual lecture from the local System
    Administrator. It usually boils down to these three things:
    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.
    Password:
    filam is not in the sudoers file. This incident will be reported.
    As a reletively new end-user I can imagine I have made some simple mistake, but just can't imagine what that might be.
    Last edited by filam (2008-12-30 16:57:29)

    Thanks for the help lake.
    string wrote:You need root privs to install packages but you don't need them in order to create packages. You are running `makepkg -efi` which will try to install the package after its creation. The solution is simple, first create the package as a regular user via `makepkg -ef` (the `i` flag has been stripped), then, log in as root and run `pacman -U /full/path/to/your/newly/created/package`.
    Thanks string. Perfect explanation. This solution was exactly what I was looking for. Worked like a charm.

  • [SOLVED] dwm pertag patch no working properly

    Hello everybody! I recently had to redo my system.
    Before this change I was using the DWM 6.0 with patches NMaster and pertag.
    link to the source code used - https://github.com/abara/config/tree/master/dwm-pertag
    But now, after having reinstalled the base system, I realized that the same code that I used before is no longer behaving as it should.
    He is working as if there is no patch applied in dwm.c
    I wonder what would be the possible reasons.
    P.S. will not use sprinkles fork
    Last edited by abarahc (2013-07-11 23:14:07)

    ANOKNUSA wrote:NMaster patch is now part of the base code, so applying a patch for it is superfluous.
    Yeah, that's what I meant ;P http://dwm.suckless.org/patches/nmaster
    I'm using dwm with pertag patch and things are working as expected.

  • [SOLVED] DWM Compile Errors

    Hey guys,
    I'm new to arch linux, and newish to linux in general. I'm trying to compile dwm and keep running into the same error. I have been trying to follow the wiki entry on dwm to a T but have not had success thus far.
    Currently what I've done is:
    1. update abs
    2. copy makepkg files to ~/dwm
    3. edit config.h, save
    4. makepkg -f >> PKGFILE
    5. makepkg -efi
    Then I get this
    Any suggestions would be greatly appreciate
    thanks
    Last edited by raidicus (2010-05-29 23:43:57)

    Well, its definitely possible that I misunderstood the process of compiling. i thought you needed to edit dwm's config.h before you compiled it...
    IE you get a bunch of config files, edit them, then make an installable package out of them.
    in other words i thought I *was* following the wiki...but now I see that I mixed up the steps a little bit..
    So basically config.h doesn't have to be messed with then compiled...

  • [SOLVED] dwm: cannot open mixer

    I've been setting up dwm through the last hours and I had an issue with sound playback. Firstly, I can play any sound from the console or any other wm. The problem appears when I start dwm by using xinit but loading it through gdm seems to solve the problem but still I'm not satisfied with that solution. I think that gdm do something in order to grant access to the sound card but on the other hand I still have another problem with multiple running applications that playback sound, only the first opened application can.
    After starting dwm with xinit I get "amixer: Mixer attach default error: No such file or directory" and by running alsamixer I get "cannot open mixer: No such file or directory".
    Thanks in advance
    Last edited by russo (2011-06-20 04:01:15)

    Well, I checked those posts.
    /dev/mixer exists
    I tried to load the snd-pcm-oss but nothing changed.
    However I noticed that I can run alsamixer as root. I'm not sure but maybe having to run gdm as root while running xinit as user made the difference but still it doesn't make sense since I can run openbox with xinit and everything works fine. I'll keep trying
    EDIT: Finally, I tried to load openbox through xinit and had the same problem. Next I tried to reboot removing gdm from the daemons and start dwm directly with the xinitrc options. Now it seems to work fine. Maybe gdm blocked the sound card once it opened.
    Last edited by russo (2011-06-20 04:00:56)

  • [Solved] DWM and extra key's.

    Hello.
    I'm using DWM and now I have new keyboard with extra kyes Audio Mute, Raise or Lower volume you know
    I tried:
    showkey
    And I have my key in .Xmodmap , I typed:
    /path/to/.Xmodmap
    and all was ok
    And typed xmodmap and my keys was in mod4 section , this is the output of xmodmap:
    xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
    shift Shift_L (0x32), Shift_R (0x3e)
    lock Caps_Lock (0x42)
    control Control_L (0x25), Control_R (0x6d)
    mod1 Alt_L (0x40), Meta_L (0x9c)
    mod2 Num_Lock (0x4d)
    mod3
    mod4 XF86AudioRaiseVolume (0x73), XF86AudioRaiseVolume (0x74), Super_L (0x7f), Hyper_L (0x80)
    mod5 Mode_switch (0x5d), ISO_Level3_Shift (0x71), ISO_Level3_Shift (0x7c)
    Now I care to play with config.h of my DWM.
    Here is part of it:
    { MODKEY, XF86AudioRaiseVolume, spawn, SHCMD("exec mpc volume -5")}
    And when I tried to compile it with that config I got following errors:
    In file included from dwm.c:271:
    config.h:41: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Key'
    config.h:65: warning: ISO C does not allow extra ';' outside of a function
    config.h:69: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Button'
    config.h:80: warning: ISO C does not allow extra ';' outside of a function
    dwm.c: In function 'buttonpress':
    dwm.c:440: error: 'buttons' undeclared (first use in this function)
    dwm.c:440: error: (Each undeclared identifier is reported only once
    dwm.c:440: error: for each function it appears in.)
    dwm.c: In function 'grabbuttons':
    dwm.c:929: error: 'buttons' undeclared (first use in this function)
    dwm.c: In function 'grabkeys':
    dwm.c:952: error: 'keys' undeclared (first use in this function)
    dwm.c: In function 'keypress':
    dwm.c:1020: error: 'keys' undeclared (first use in this function)
    make: *** [dwm.o] Errpr 1
    And building stop's :(
    Is someone use extra keys with DWM.
    Thanks for any help
    Last edited by SpeedVin (2009-08-12 18:33:25)

    SpeedVin wrote:
    Tillotson wrote:/* See LICENSE file for copyright and license details. */
    /* appearance */
    static const char font[] = "-*-fixed-medium-r-*-*-18-*-*-*-*-*-iso8859-*";
    static const char normbordercolor[] = "#C7C7C7";
    static const char normbgcolor[] = "#000000";
    static const char normfgcolor[] = "#888888";
    static const char selbordercolor[] = "#1793D1";
    static const char selbgcolor[] = "#000000";
    static const char selfgcolor[] = "#FFFFFF";
    static unsigned int borderpx = 1; /* border pixel of windows */
    static unsigned int snap = 32; /* snap pixel */
    static Bool showbar = True; /* False means no bar */
    static Bool topbar = True; /* False means bottom bar */
    /* tagging */
    static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
    static Rule rules[] = {
    /* class instance title tags mask isfloating */
    { "Thunar", NULL, NULL, 0, True },
    { "VirtualBox", NULL, NULL, 0, True },
    { "MPlayer", NULL, NULL, 0, True },
    { "Vlc", NULL, NULL, 0, True },
    { "XCalc", NULL, NULL, 0, True },
    /* layout(s) */
    static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
    static const Bool resizehints = True; /* False means respect size hints in tiled resizals */
    static const Layout layouts[] = {
    /* symbol arrange function */
    { "[]=", tile }, /* first entry is default */
    { "><>", NULL }, /* no layout function means floating behavior */
    { "[M]", monocle },
    /* key definitions */
    #define MODKEY Mod4Mask
    #define TAGKEYS(KEY,TAG) \
    { MODKEY, KEY, view, {.ui = 1 << TAG} }, \
    { MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
    { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
    { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
    /* helper for spawning shell commands in the pre dwm-5.0 fashion */
    #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
    /* commands */
    static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
    static const char *termcmd[] = { "urxvtc", NULL };
    static const char *browsercmd[] = { "firefox", NULL };
    static const char *musiccmd[] = { "urxvtc", "-e", "ncmpcpp", NULL };
    static const char *talkcmd[] = { "urxvtc", "-e", "weechat-curses", NULL };
    static const char *shutcmd[] = { "sudo", "shutdown", "-h", "now", NULL };
    static const char *filebrowse[] = { "thunar", NULL };
    static const char *mutecmd[] = { "amixer", "-q", "sset", "Master", "toggle", NULL };
    static const char *volupcmd[] = { "amixer", "-q", "sset", "PCM", "5-", "unmute", NULL };
    static const char *voldowncmd[] = { "amixer", "-q", "sset", "PCM", "5+", "unmute", NULL };
    static const char *calccmd[] = { "xcalc", NULL };
    static Key keys[] = {
    /* modifier key function argument */
    { 0, 0x1008ff12, spawn, {.v = mutecmd } },
    { 0, 0x1008ff11, spawn, {.v = volupcmd } },
    { 0, 0x1008ff13, spawn, {.v = voldowncmd } },
    { 0, 0x1008ff1d, spawn, {.v = calccmd } },
    { MODKEY, XK_p, spawn, {.v = dmenucmd } },
    { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
    { MODKEY|ShiftMask, XK_b, spawn, {.v = browsercmd } },
    { MODKEY|ShiftMask, XK_m, spawn, {.v = musiccmd } },
    { MODKEY|ShiftMask, XK_f, spawn, {.v = filebrowse } },
    { MODKEY|ShiftMask, XK_t, spawn, {.v = talkcmd } },
    { MODKEY|ShiftMask, XK_Delete, spawn, {.v = shutcmd } },
    { MODKEY, XK_b, togglebar, {0} },
    { MODKEY, XK_j, focusstack, {.i = +1 } },
    { MODKEY, XK_k, focusstack, {.i = -1 } },
    { MODKEY, XK_h, setmfact, {.f = -0.05} },
    { MODKEY, XK_l, setmfact, {.f = +0.05} },
    { MODKEY, XK_Return, zoom, {0} },
    { MODKEY, XK_Tab, view, {0} },
    { MODKEY|ShiftMask, XK_c, killclient, {0} },
    { MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
    { MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
    { MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
    { MODKEY, XK_space, setlayout, {0} },
    { MODKEY|ShiftMask, XK_space, togglefloating, {0} },
    { MODKEY, XK_0, view, {.ui = ~0 } },
    { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
    { MODKEY, XK_comma, focusmon, {.i = -1 } },
    { MODKEY, XK_period, focusmon, {.i = +1 } },
    { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
    { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
    TAGKEYS( XK_1, 0)
    TAGKEYS( XK_2, 1)
    TAGKEYS( XK_3, 2)
    TAGKEYS( XK_4, 3)
    TAGKEYS( XK_5, 4)
    TAGKEYS( XK_6, 5)
    TAGKEYS( XK_7, 6)
    TAGKEYS( XK_8, 7)
    TAGKEYS( XK_9, 8)
    { MODKEY|ShiftMask, XK_q, quit, {0} },
    /* button definitions */
    /* click can be a tag number (starting at 0),
    * ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
    static Button buttons[] = {
    /* click event mask button function argument */
    { ClkLtSymbol, 0, Button1, setlayout, {0} },
    { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
    { ClkWinTitle, 0, Button2, zoom, {0} },
    { ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
    { ClkClientWin, MODKEY, Button1, movemouse, {0} },
    { ClkClientWin, MODKEY, Button2, togglefloating, {0} },
    { ClkClientWin, MODKEY, Button3, resizemouse, {0} },
    { ClkTagBar, 0, Button1, view, {0} },
    { ClkTagBar, 0, Button3, toggleview, {0} },
    { ClkTagBar, MODKEY, Button1, tag, {0} },
    { ClkTagBar, MODKEY, Button3, toggletag, {0} },
    Thank you very much I will see what I can do .
    Sadly still no reaction

  • [SOLVED] DWM patch error

    Hi. I want to apply the Bottom Stack patch to my dwm. I did for 5.6 but i don't know how
    This is my PKGBUILD
    # $Id: PKGBUILD 3133 2009-09-28 09:01:18Z spupykin $
    # Maintainer: Sergej Pupykin <[email protected]>
    # Contributor: Dag Odenhall <[email protected]>
    # Contributor: Grigorios Bouzakis <[email protected]>
    pkgname=dwm
    pkgver=5.7.2
    pkgrel=1
    pkgdesc="A dynamic window manager for X"
    url="http://dwm.suckless.org"
    arch=('i686' 'x86_64')
    license=('MIT')
    options=(zipman)
    depends=('libx11')
    install=dwm.install
    source=(http://code.suckless.org/dl/dwm/dwm-$pkgver.tar.gz \
    config.h bstack.c)
    md5sums=()
    build() {
    cd $srcdir/$pkgname-$pkgver
    cp $srcdir/config.h config.h
    patch -p0 -i /home/kismet/.dwm/patch/bstack.c
    make X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 || return 1
    make PREFIX=/usr DESTDIR=$pkgdir install || return 1
    install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE && \
    install -m644 -D README $pkgdir/usr/share/doc/$pkgname/README
    I don't how exactly put the patch.. this is the error i get
    ~/.dwm makepkg -efi
    ==> Creando el paquete: dwm 5.7.2-1 i686 (mié dic 16 18:02:39 CET 2009)
    ==> Comprobando Dependencias en tiempo de Ejecución...
    ==> Comprobando Dependencias en tiempo de Compilación...
    ==> PRECAUCIÓN: Saltando obtención de fuentes -- usando el arbol src/ existente
    ==> PRECAUCIÓN: saltando pruebas de integridad -- usando el arbol src/ existente
    ==> PRECAUCIÓN: Saltando extracción de las fuentes -- usando src/tree existente
    ==> Eliminando directorio pkg/ existente...
    ==> Entrando a un ambiente fakeroot...
    ==> Comenzando build()...
    patch: **** Only garbage was found in the patch input.
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.7.2" -DXINERAMA
    LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11 -L/usr/lib/X11 -lXinerama
    CC = cc
    CC dwm.c
    En el fichero incluído de dwm.c:274:
    config.h:37:20: error: bstack.c: No existe el fichero o el directorio
    In file included from dwm.c:274:
    config.h:44: error: 'bstack' no se declaró aquí (no en una función)
    make: *** [dwm.o] Error 1
    ==> ERROR: Falló la compilación.
    Abortando...
    ~/.dwm
    What's happen?
    Last edited by kismet010 (2010-02-08 05:51:28)

    well, new error..
    applying another patch:
    patch -i ~/.dwm/src/dwm-5.7.2/bstack.c
    patch -i ~/.dwm/src/dwm-5.7.2/dwm-5.7.2-pertag.diff
    get this:
    ~/.dwm makepkg -efi
    ==> Creando el paquete: dwm 5.7.2-1 i686 (mié dic 16 19:28:13 CET 2009)
    ==> Comprobando Dependencias en tiempo de Ejecución...
    ==> Comprobando Dependencias en tiempo de Compilación...
    ==> PRECAUCIÓN: Saltando obtención de fuentes -- usando el arbol src/ existente
    ==> PRECAUCIÓN: saltando pruebas de integridad -- usando el arbol src/ existente
    ==> PRECAUCIÓN: Saltando extracción de las fuentes -- usando src/tree existente
    ==> Eliminando directorio pkg/ existente...
    ==> Entrando a un ambiente fakeroot...
    ==> Comenzando build()...
    patch: **** Only garbage was found in the patch input.
    patching file dwm.c
    Reversed (or previously applied) patch detected! Assume -R? [n]
    Apply anyway? [n] y
    Hunk #1 FAILED at 120.
    Hunk #2 succeeded at 303 with fuzz 2 (offset 30 lines).
    Hunk #3 FAILED at 1475.
    Hunk #4 FAILED at 1493.
    Hunk #5 FAILED at 1534.
    Hunk #6 FAILED at 1645.
    Hunk #7 FAILED at 1665.
    Hunk #8 FAILED at 1937.
    7 out of 8 hunks FAILED -- saving rejects to file dwm.c.rej
    dwm build options:
    CFLAGS = -std=c99 -pedantic -Wall -Os -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.7.2" -DXINERAMA
    LDFLAGS = -s -L/usr/lib -lc -L/usr/lib/X11 -lX11 -L/usr/lib/X11 -lXinerama
    CC = cc
    CC dwm.c
    In file included from config.h:37,
    from dwm.c:254:
    bstack.c: En la función 'bstack':
    bstack.c:7: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:11: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:12: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:12: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:13: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:13: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:13: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:13: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:17: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:18: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:18: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:19: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:20: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:20: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:20: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:20: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:22: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:25: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:25: error: puntero deferenciado a tipo de dato incompleto
    bstack.c:26: error: puntero deferenciado a tipo de dato incompleto
    dwm.c: En el nivel principal:
    dwm.c:281: error: redefinición de 'struct Monitor'
    dwm.c:306: error: redefinición de 'struct Monitor'
    make: *** [dwm.o] Error 1
    ==> ERROR: Falló la compilación.
    Abortando...
    ~/.dwm
    Edit: same error (without hunks) althought not patching for bstack.c
    Last edited by kismet010 (2009-12-16 18:36:13)

  • Problem with reading config file

    Hello,
    I have problem with reading config file from the same dir as class is. Situation is:
    I have servlet which working with DB, and in confing file (config.pirms) are all info about connection (drivers, users, passw, etc.). Everything work fine if I hardcoded like:
    configFileName = "C:\\config.pirms";I need to avoid such hardcoding, I tryied to use:
    configFileName = Pirms.class.getClassLoader().getResourceAsStream ("/prj/config.pirms").toString();but it isn't work.
    My config file is in the same directory as Pirms.class (C:\apache-tomcat-5.5.17\webapps\ROOT\WEB-INF\classes\prj)
    Also I tryied BundledResources, it isn't work fo me also.
    Can anybody help me to solve this problem? with any examples or other stuff?
    Thanks in advance.
    Andrew

    Thanks, but I am getting error that "non-static method getServletConfig() cannot be referenced from a static context"
    Maybe is it possibility to use <init-param> into web.xml file like:
    <init-param>
      <param-name>configFile</param-name>
      <param-value>/prj/config.pirms</param-value>
    </init-param>If yes can anybody explain how to do that?
    I need to have that file for:
    FileReader readFile = new FileReader(configFile);Thanks in advance.

  • Problems with Qt Config (Xfce 4.6)

    Hi
    I have problems with QT Config .
    I use Desktop Environments XFCE , when you save settings QT Congif (set size fonts etc ) .
    Setting do not save
    I have set chmod in catalog QT config .
    How to fix  ?
    Last edited by nocentis (2009-03-16 12:00:29)

    Welcome to the Apple discussion forums.
    As Joeuu stated, assuming you don't have an Intel-based MacBook Pro, that means that your PowerBook is PowerPC-based. There are several steps that should get you back on track.
    First, reset your power management unit (PMU). Follow directions at http://docs.info.apple.com/article.html?artnum=14449
    Next, repair permissions by running Disk Utility, located in your mac hd, application/utilities folder. Highlight your hard drive and repair permissions.
    Did you use the software update function or did you download the update from the Apple support site? In any event, download the combo update 10.4.6 from http://www.apple.com/support/downloads/macosx1046comboforppc.html Updates through the software update function have recently created some unique 'situations', that use of the combo update have solved.
    After the update, repair disk permissions again. This is good housekeeping to do before and after any major software installation.
    PB G4 1.67ghz 1.5gb; mini G4 1.5ghz 1gb   Mac OS X (10.4.6)  

  • [SOLVED] Problem with "su" and "login".

    Hi, I reinstalled Arch Linux today when I updated "filesystem" and reboot appeared an error with root device, but I solved with installation CD.
    I restarted laptop after solving error with root device when I went to XFCE4 and open a terminal I tried to login as root with "su" and "su -" but showed this error:
    bash: su: command not found
    So I rebooted to start in text mode.
    When loaded SLIM I press ctrl+alt+F1 to enter text mode.
    I type root to login but did'nt appear to enter the pass, appeared again to enter login. I tried type my user but did the same.
    Someone can help me?
    Thanks!
    Last edited by surrealistic (2012-10-12 08:54:58)

    Thank you falconindy. I upgrade with --force because I search in Google the problem show "filesystem" when I tried install and I read that solution is upgrade "filesystem" with --foce.
    I tried to reinstall util-linux and now works. Thank you!

Maybe you are looking for