From f091f4ae351b8acba793190014ba51437872bb6d Mon Sep 17 00:00:00 2001 From: Morten Linderud Date: Mon, 20 Nov 2017 16:36:30 +0100 Subject: [PATCH] Initial upload: dwm 6.1-3 Added dwm Signed-off-by: Morten Linderud --- .SRCINFO | 27 +++++++++++++ PKGBUILD | 39 ++++++++++++++++++ config.h | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++ dwm.desktop | 7 ++++ dwm.install | 4 ++ 5 files changed, 190 insertions(+) create mode 100644 .SRCINFO create mode 100644 PKGBUILD create mode 100644 config.h create mode 100644 dwm.desktop create mode 100644 dwm.install diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 0000000..c76b584 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,27 @@ +# Generated by mksrcinfo v8 +# Mon Nov 20 15:36:34 UTC 2017 +pkgbase = dwm + pkgdesc = A dynamic window manager for X + pkgver = 6.1 + pkgrel = 3 + url = http://dwm.suckless.org + install = dwm.install + arch = i686 + arch = x86_64 + license = MIT + depends = libx11 + depends = libxinerama + depends = libxft + depends = freetype2 + depends = st + depends = dmenu + options = zipman + source = http://dl.suckless.org/dwm/dwm-6.1.tar.gz + source = config.h + source = dwm.desktop + md5sums = f0b6b1093b7207f89c2a90b848c008ec + md5sums = 80c4ef2a3eca0fe2d14e2203e3833200 + md5sums = 939f403a71b6e85261d09fc3412269ee + +pkgname = dwm + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..bb62ff3 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,39 @@ +# $Id$ +# Maintainer: Sergej Pupykin +# Contributor: Dag Odenhall +# Contributor: Grigorios Bouzakis + +pkgname=dwm +pkgver=6.1 +pkgrel=3 +pkgdesc="A dynamic window manager for X" +url="http://dwm.suckless.org" +arch=('i686' 'x86_64') +license=('MIT') +options=(zipman) +depends=('libx11' 'libxinerama' 'libxft' 'freetype2' 'st' 'dmenu') +install=dwm.install +source=(http://dl.suckless.org/dwm/dwm-$pkgver.tar.gz + config.h + dwm.desktop) +md5sums=('f0b6b1093b7207f89c2a90b848c008ec' + '80c4ef2a3eca0fe2d14e2203e3833200' + '939f403a71b6e85261d09fc3412269ee') + +prepare() { + cd $srcdir/$pkgname-$pkgver + cp $srcdir/config.h config.h +} + +build() { + cd $srcdir/$pkgname-$pkgver + make X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 FREETYPEINC=/usr/include/freetype2 +} + +package() { + cd $srcdir/$pkgname-$pkgver + make PREFIX=/usr DESTDIR=$pkgdir install + install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE + install -m644 -D README $pkgdir/usr/share/doc/$pkgname/README + install -m644 -D $srcdir/dwm.desktop $pkgdir/usr/share/xsessions/dwm.desktop +} diff --git a/config.h b/config.h new file mode 100644 index 0000000..7054c06 --- /dev/null +++ b/config.h @@ -0,0 +1,113 @@ +/* See LICENSE file for copyright and license details. */ + +/* appearance */ +static const char *fonts[] = { + "monospace:size=10" +}; +static const char dmenufont[] = "monospace:size=10"; +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 = 1; /* border pixel of windows */ +static const unsigned int snap = 32; /* snap pixel */ +static const int showbar = 1; /* 0 means no bar */ +static const int topbar = 1; /* 0 means bottom bar */ + +/* tagging */ +static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; + +static const Rule rules[] = { + /* xprop(1): + * WM_CLASS(STRING) = instance, class + * WM_NAME(STRING) = title + */ + /* class instance title tags mask isfloating monitor */ + { "Gimp", NULL, NULL, 0, 1, -1 }, + { "Firefox", NULL, NULL, 1 << 8, 0, -1 }, +}; + +/* layout(s) */ +static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ +static const int nmaster = 1; /* number of clients in master area */ +static const int resizehints = 1; /* 1 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 Mod1Mask +#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 char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */ +static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL }; +static const char *termcmd[] = { "st", NULL }; + +static Key keys[] = { + /* modifier key function argument */ + { MODKEY, XK_p, spawn, {.v = dmenucmd } }, + { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } }, + { MODKEY, XK_b, togglebar, {0} }, + { MODKEY, XK_j, focusstack, {.i = +1 } }, + { MODKEY, XK_k, focusstack, {.i = -1 } }, + { 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_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, view, {0} }, + { ClkTagBar, 0, Button3, toggleview, {0} }, + { ClkTagBar, MODKEY, Button1, tag, {0} }, + { ClkTagBar, MODKEY, Button3, toggletag, {0} }, +}; + diff --git a/dwm.desktop b/dwm.desktop new file mode 100644 index 0000000..b0c3354 --- /dev/null +++ b/dwm.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Dwm +Comment=Dynamic window manager +Exec=dwm +Icon=dwm +Type=XSession diff --git a/dwm.install b/dwm.install new file mode 100644 index 0000000..44b50ed --- /dev/null +++ b/dwm.install @@ -0,0 +1,4 @@ +post_install() { + echo "-- Edit config.h in dwm's PKGBUILD directory (generally /var/abs/community/dwm/)" + echo "-- and rebuild package if you want to change settings." +}