You are not logged in.

#76 2010-05-11 19:08:42

rb
Member
From: Argentina
Registered: 2010-05-07
Posts: 143

Re: The dwm thread

I combined both scripts and now runs fine, thanks for that!

I didn't mapped anything to mod4+b. The only modified mod4+enter (launch term), mod4+shift+enter (swap), mod4+r (launch dmenu). Weird, isn't it?


Sorry for my English. Feel free to point out my errors.

Offline

#77 2010-05-20 07:26:10

necr0mancer
Member
Registered: 2010-05-01
Posts: 28

Re: The dwm thread

Hey, sorry if this is a n00b question, but; Is there a way to toggle clients from master to stack and vice versa?


arch64 :: zsh :: dwm :: urxvt \\ Still using the same computer I built when I was 15 smile
I also use twitter entirely too much.

Offline

#78 2010-05-20 07:33:08

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

The push patch allows you to move them around: http://dwm.suckless.org/patches/push

Is that what you were after?


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#79 2010-05-20 08:32:29

necr0mancer
Member
Registered: 2010-05-01
Posts: 28

Re: The dwm thread

jasonwryan wrote:

The push patch allows you to move them around: http://dwm.suckless.org/patches/push

Is that what you were after?

Yes! That does exactly what I was looking for. Thanks. smile


arch64 :: zsh :: dwm :: urxvt \\ Still using the same computer I built when I was 15 smile
I also use twitter entirely too much.

Offline

#80 2010-06-07 20:34:34

skanky
Member
From: WAIS
Registered: 2009-10-23
Posts: 1,847

Re: The dwm thread

Can't get on the dwm page (keeps timing out) to see what the difference between this key combination and that patch, but just in case....

Mod1-Return-Zooms/cycles focused window to/from master area (tiled layouts only).


"...one cannot be angry when one looks at a penguin."  - John Ruskin
"Life in general is a bit shit, and so too is the internet. And that's all there is." - scepticisle

Offline

#81 2010-06-07 20:45:59

skanky
Member
From: WAIS
Registered: 2009-10-23
Posts: 1,847

Re: The dwm thread

I've got a pretty vanilla version of dwm on my laptop. I've got scrotwm on my netbook, but for various reasons that I won't go into here, I am thinking of adding dwm onto it. Now, I will probably start customising both installations (patches, colours & keys), so I think I my manual and ad-hoc config.h editing and makepkg updating will not cut the mustard.

So, I need to decide on a better method. I've been reading the various threads on the two methods in the wiki - with the suggestion of adding patches to the PKGBUILD, but I'm not sure which to method to use.

Some points I need to consider:

*) I've never used hg (the suckless hg queue tutorial is half understandable but will require some extra reading)
*) I've never edited a PKGBUILD or used ABS any more than the basic method specified in the dwm wiki entry
*) So that (plus a couple of other reasons) means both methods will require a learning curve - which I'm happy to go through, but might prefer not to go through both at the moment.
*) The set-ups will become reasonably stable (laziness will mean that I'll tend not to tweak too much)
*) I want to use the same method for both machines - the netbook is a 901.
*) I'd like to reduce the manual steps as much as possible - including knowing when there's a new version released.
*) The laptop is used for work, so some degree of stability is preferred.

Some of those may be irrelevant, but thought I ought to cover all potential issues.
Any suggestions, recommendations, hints, tips or otherwise, welcome. smile


"...one cannot be angry when one looks at a penguin."  - John Ruskin
"Life in general is a bit shit, and so too is the internet. And that's all there is." - scepticisle

Offline

#82 2010-06-07 20:49:46

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

push.c moves the focussed client around in the tag: Mod-Return swaps between master (essentially the same thing if you only have two clients in a tag, but once you get three or four, push.c provides more control/functionality....)


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#83 2010-06-07 20:55:08

skanky
Member
From: WAIS
Registered: 2009-10-23
Posts: 1,847

Re: The dwm thread

jasonwryan wrote:

push.c moves the focussed client around in the tag: Mod-Return swaps between master (essentially the same thing if you only have two clients in a tag, but once you get three or four, push.c provides more control/functionality....)

Makes sense, thanks. (Still can't get onto their site.)


"...one cannot be angry when one looks at a penguin."  - John Ruskin
"Life in general is a bit shit, and so too is the internet. And that's all there is." - scepticisle

Offline

#84 2010-06-07 20:55:22

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

I don't mean to hijack this thread, but dwm 5.8.2 came out recently and there is no bstack for 5.8.2. Has anybody modified it to work yet? (I'm assuming it's unmaintained since it hasn't been updated in so long.)

Offline

#85 2010-06-07 20:57:43

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

cabrey wrote:

I don't mean to hijack this thread, but dwm 5.8.2 came out recently and there is no bstack for 5.8.2. Has anybody modified it to work yet? (I'm assuming it's unmaintained since it hasn't been updated in so long.)

Works fine here...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#86 2010-06-07 20:59:26

ber_t
Member
From: Berlin, Germany
Registered: 2010-03-10
Posts: 214
Website

Re: The dwm thread

skanky wrote:

Can't get on the dwm page (keeps timing out)

From the mailing list:

there is a scheduled downtime from 2010-06-07 21:00 UTC - 2010-06-08
07:00 UTC of suckless.org because the server will be relocated physically.

Offline

#87 2010-06-07 21:02:15

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

jasonwryan wrote:
cabrey wrote:

I don't mean to hijack this thread, but dwm 5.8.2 came out recently and there is no bstack for 5.8.2. Has anybody modified it to work yet? (I'm assuming it's unmaintained since it hasn't been updated in so long.)

Works fine here...

Really? makepkg kept failing for me:

config.h: In function 'bstack':
config.h:36:28: error: dereferencing pointer to incomplete type
config.h:39:17: error: dereferencing pointer to incomplete type
config.h:40:8: error: dereferencing pointer to incomplete type
config.h:40:19: error: dereferencing pointer to incomplete type
config.h:41:13: error: dereferencing pointer to incomplete type
config.h:41:20: error: dereferencing pointer to incomplete type
config.h:41:27: error: dereferencing pointer to incomplete type
config.h:41:56: error: dereferencing pointer to incomplete type
config.h:44:7: error: dereferencing pointer to incomplete type
config.h:45:8: error: dereferencing pointer to incomplete type
config.h:45:62: error: dereferencing pointer to incomplete type
config.h:46:7: error: dereferencing pointer to incomplete type
config.h:47:8: error: dereferencing pointer to incomplete type
config.h:47:36: error: dereferencing pointer to incomplete type
config.h:47:44: error: dereferencing pointer to incomplete type
config.h:47:56: error: dereferencing pointer to incomplete type
config.h:49:8: error: dereferencing pointer to incomplete type
config.h:52:13: error: dereferencing pointer to incomplete type
config.h:52:21: error: dereferencing pointer to incomplete type
config.h:53:12: error: dereferencing pointer to incomplete type

Offline

#88 2010-06-07 21:04:14

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

skanky wrote:

...
*) The set-ups will become reasonably stable (laziness will mean that I'll tend not to tweak too much)
*) I want to use the same method for both machines - the netbook is a 901.
*) I'd like to reduce the manual steps as much as possible - including knowing when there's a new version released.
*) The laptop is used for work, so some degree of stability is preferred.
...

Sounds like the mercurial queue is the way to go: one repo for both machines, manages all your patches and you pull when you are ready to... Mercurial is extremely well documented, so while there is a learning curve, it should be relatively gentle.


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#89 2010-06-07 21:05:53

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

@cabrey What other patches have you applied? You might want to try applying it manually...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#90 2010-06-07 21:08:00

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

jasonwryan wrote:

@cabrey What other patches have you applied? You might want to try applying it manually...

Just bstack and pertag.

Offline

#91 2010-06-07 21:11:34

skanky
Member
From: WAIS
Registered: 2009-10-23
Posts: 1,847

Re: The dwm thread

ber_t wrote:
skanky wrote:

Can't get on the dwm page (keeps timing out)

From the mailing list:

there is a scheduled downtime from 2010-06-07 21:00 UTC - 2010-06-08
07:00 UTC of suckless.org because the server will be relocated physically.

Ah thanks for that. smile
I suppose I should subscribe to it - but I've been trying to free up procrastination time by cutting the number of mailing lists I'm sub'd to.


"...one cannot be angry when one looks at a penguin."  - John Ruskin
"Life in general is a bit shit, and so too is the internet. And that's all there is." - scepticisle

Offline

#92 2010-06-07 21:13:51

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

cabrey wrote:
jasonwryan wrote:

@cabrey What other patches have you applied? You might want to try applying it manually...

Just bstack and pertag.

You'll need to apply bstack manually - pertag moves a chunk of the code around.


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#93 2010-06-07 21:17:44

skanky
Member
From: WAIS
Registered: 2009-10-23
Posts: 1,847

Re: The dwm thread

jasonwryan wrote:
skanky wrote:

...
*) The set-ups will become reasonably stable (laziness will mean that I'll tend not to tweak too much)
*) I want to use the same method for both machines - the netbook is a 901.
*) I'd like to reduce the manual steps as much as possible - including knowing when there's a new version released.
*) The laptop is used for work, so some degree of stability is preferred.
...

Sounds like the mercurial queue is the way to go: one repo for both machines, manages all your patches and you pull when you are ready to... Mercurial is extremely well documented, so while there is a learning curve, it should be relatively gentle.

Thanks...the set-ups might be different across the two machines (different uses) which might affect the shared repo (?) - though I may not do that if I end up confusing myself.

The other upside of going down that route is that it'll finally force me to decide which dvcs to learn and use. neutral


"...one cannot be angry when one looks at a penguin."  - John Ruskin
"Life in general is a bit shit, and so too is the internet. And that's all there is." - scepticisle

Offline

#94 2010-06-09 01:14:26

rb
Member
From: Argentina
Registered: 2010-05-07
Posts: 143

Re: The dwm thread

jasonwryan wrote:

You'll need to apply bstack manually - pertag moves a chunk of the code around.

Now you mention this, I'm having issues installing pertag in combination with other patches.

I've this patches installed:
- nmaster
- attachaside
- push

If I install pertag alone every works fine, however when I install it in combination with the above patches (no matter in what order), it doesn't work (the last patch applied is pertag). I got this error:

==> Making package: dwm 5.8.2-1 i686 (Tue Jun  8 22:05:36 ART 2010)
==> 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   = -g -std=c99 -pedantic -Wall -O0 -I. -I/usr/include -I/usr/include/X11 -DVERSION="5.8.2" -DXINERAMA
LDFLAGS  = -g -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:33:0,
                 from dwm.c:260:
nmaster-sym.c: In function 'incnmaster':
nmaster-sym.c:18:20: error: dereferencing pointer to incomplete type
nmaster-sym.c:18:31: error: dereferencing pointer to incomplete type
nmaster-sym.c:18:58: error: dereferencing pointer to incomplete type
nmaster-sym.c:20:17: error: dereferencing pointer to incomplete type
nmaster-sym.c:21:20: error: dereferencing pointer to incomplete type
nmaster-sym.c:22:18: error: dereferencing pointer to incomplete type
nmaster-sym.c: In function 'setnmaster':
nmaster-sym.c:28:20: error: dereferencing pointer to incomplete type
nmaster-sym.c:28:31: error: dereferencing pointer to incomplete type
nmaster-sym.c:28:58: error: dereferencing pointer to incomplete type
nmaster-sym.c:30:17: error: dereferencing pointer to incomplete type
nmaster-sym.c: In function 'ntile':
nmaster-sym.c:42:12: error: dereferencing pointer to incomplete type
nmaster-sym.c:42:32: error: dereferencing pointer to incomplete type
nmaster-sym.c:42:62: error: dereferencing pointer to incomplete type
nmaster-sym.c:43:28: error: dereferencing pointer to incomplete type
nmaster-sym.c:44:17: error: dereferencing pointer to incomplete type
nmaster-sym.c:45:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:45:35: error: dereferencing pointer to incomplete type
nmaster-sym.c:50:9: error: dereferencing pointer to incomplete type
nmaster-sym.c:50:20: error: dereferencing pointer to incomplete type
nmaster-sym.c:51:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:53:9: error: dereferencing pointer to incomplete type
nmaster-sym.c:54:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:56:15: error: dereferencing pointer to incomplete type
nmaster-sym.c:56:36: error: dereferencing pointer to incomplete type
nmaster-sym.c:57:29: error: dereferencing pointer to incomplete type
nmaster-sym.c:57:37: error: dereferencing pointer to incomplete type
nmaster-sym.c:58:13: error: dereferencing pointer to incomplete type
nmaster-sym.c:67:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:68:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:69:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:70:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:72:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:75:27: error: dereferencing pointer to incomplete type
nmaster-sym.c:75:35: error: dereferencing pointer to incomplete type
nmaster-sym.c:76:12: error: dereferencing pointer to incomplete type
nmaster-sym.c: In function 'nbstack':
nmaster-sym.c:89:12: error: dereferencing pointer to incomplete type
nmaster-sym.c:89:32: error: dereferencing pointer to incomplete type
nmaster-sym.c:89:62: error: dereferencing pointer to incomplete type
nmaster-sym.c:90:28: error: dereferencing pointer to incomplete type
nmaster-sym.c:91:17: error: dereferencing pointer to incomplete type
nmaster-sym.c:92:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:92:35: error: dereferencing pointer to incomplete type
nmaster-sym.c:97:9: error: dereferencing pointer to incomplete type
nmaster-sym.c:97:20: error: dereferencing pointer to incomplete type
nmaster-sym.c:98:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:100:9: error: dereferencing pointer to incomplete type
nmaster-sym.c:101:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:103:18: error: dereferencing pointer to incomplete type
nmaster-sym.c:103:42: error: dereferencing pointer to incomplete type
nmaster-sym.c:103:50: error: dereferencing pointer to incomplete type
nmaster-sym.c:104:23: error: dereferencing pointer to incomplete type
nmaster-sym.c:105:13: error: dereferencing pointer to incomplete type
nmaster-sym.c:114:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:115:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:116:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:117:7: error: dereferencing pointer to incomplete type
nmaster-sym.c:119:8: error: dereferencing pointer to incomplete type
nmaster-sym.c:121:36: error: dereferencing pointer to incomplete type
nmaster-sym.c:121:44: error: dereferencing pointer to incomplete type
nmaster-sym.c:123:12: error: dereferencing pointer to incomplete type
In file included from config.h:55:0,
                 from dwm.c:260:
push.c: In function 'prevtiled':
push.c:5:16: error: dereferencing pointer to incomplete type
push.c:5:25: warning: left-hand operand of comma expression has no effect
push.c:6:24: error: dereferencing pointer to incomplete type
push.c:6:24: error: dereferencing pointer to incomplete type
push.c: In function 'pushup':
push.c:13:22: error: dereferencing pointer to incomplete type
push.c:22:12: error: dereferencing pointer to incomplete type
push.c:23:10: error: dereferencing pointer to incomplete type
push.c:25:18: error: dereferencing pointer to incomplete type
push.c: In function 'pushdown':
push.c:41:22: error: dereferencing pointer to incomplete type
In file included from dwm.c:260:0:
config.h: At top level:
config.h:94:2: warning: initialization makes integer from pointer without a cast
config.h:95:2: warning: initialization makes integer from pointer without a cast
dwm.c:868:1: warning: 'focusmon' defined but not used
dwm.c:1659:1: warning: 'tagmon' defined but not used
dwm.c:1677:1: warning: 'tile' defined but not used
nmaster-sym.c:27:1: warning: 'setnmaster' defined but not used
make: *** [dwm.o] Error 1
==> ERROR: Build Failed.
    Aborting...

I looked at pertag source code, but I didn't understand it (not a programmer myself). Is something that I'm missing? What I'm doing wrong?


Sorry for my English. Feel free to point out my errors.

Offline

#95 2010-06-09 01:57:40

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,306
Website

Re: The dwm thread

pertag changes the order of a significant chunk of code (you'll see it in the patch). If you want to make it work with any of the other layout patches, you have to apply it first then manually patch everything else over the top of it.

From memory, there is some discussion about this in this thread: http://bbs.archlinux.org/viewtopic.php?id=92895


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#96 2010-06-09 02:51:25

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

I did as jasonwryan suggested and I got it working. I then generated my own patch using the modified dwm.c and the original dwm.c so makepkg could automatically apply it.

Offline

#97 2010-06-09 05:05:46

rb
Member
From: Argentina
Registered: 2010-05-07
Posts: 143

Re: The dwm thread

Thank you. I found the post related on that thread, although I'm not quite sure I understand the whole concept. I think it's time to do some try-and-error patching tongue

cabrey, would you mind give me some pointers on that? I mean, some basic hits so I can start in the right direction.


Sorry for my English. Feel free to point out my errors.

Offline

#98 2010-06-09 05:14:47

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

@rb:

The problem is the contents of your config.h (or the patches/includes in the config.h) expects Monitor() to be defined before the compiler comes to the config.h. On the other hand, pertag expects the tags to be defined before the Monitor() function. To fix this (specifically for the pertag patch), I stripped the tags[] definition out of config.h into its own header file (tags.h) and placed the config.h after the Monitor() function. I made these modifications after applying the patch(s) and then generated one new, large patch to be applied automatically by makepkg. I can upload my dwm.c if that helps.

edit: of course, the only patches I use are pertag, bstack, and gaplessgrid, so your mileage may vary

Last edited by cabrey (2010-06-09 05:15:59)

Offline

#99 2010-06-09 05:36:01

rb
Member
From: Argentina
Registered: 2010-05-07
Posts: 143

Re: The dwm thread

@cabrey: Thanks for your explanation, was crystal clear. If you don't mind, viewing your dwm.c would be really useful.

What I don't know is how to create a patch like you said. It's 2:30 in the morning, I shall research on that matter tomorrow. I don't think that I'll need more patches in a near future, as the patches I've got installed + pertag does all that I want from my wm.

Thanks again!


Sorry for my English. Feel free to point out my errors.

Offline

#100 2010-06-09 05:44:44

cabrey
Member
Registered: 2009-08-15
Posts: 29

Re: The dwm thread

Here you are: http://pastebin.ca/1879545

Specifically, take a look at lines: 258 - 286

To create the patch, I copied the original dwm.c to dwm.orig.c. I then modified dwm.c however I wished, including adding 3rd party patches and the fix above. After I was done doing that I simply ran in the directory of the source files diff -up dwm.orig.c dwm.c > mods.patch (or however you want to name it). I inserted the necessary lines into the PKGBUILD (including copying the patch to the $srcdir and actually patching it).

Offline

Board footer

Powered by FluxBB