On 29/08/17 13:26, Adam Borowski wrote:
On Sun, Aug 27, 2017 at 09:14:11PM -0400, Steve Litt wrote:
I tried ctwm.
The package manager installs it like a breeze, but in the tradition of
Debian packages, it doesn't work out of the box.
Instead of complaining here, it'd be more productive to talk to the
package's maintainer:
Debian QA Group <[email protected]>
Oh, wait -- the maintainer is you! (And also your cat and your mother in
law.). Thus, please submit patches. The package is orphaned, so you are
allowed to make any sane changes whatsoever (as a non-DD, "sane" is defined
as "whatever passes uploader's review"). Drive-by changes are fine.
You may submit the patches to Devuan or Debian, but as this matter is not
related to systemd, the latter would be greatly better: (still) 100-1000
times more users, packages migrate to Devuan anyway. Thus, it'd be nice if
you could send your proposed changes for review to anyone who can upload to
Debian (like me for example).
First problem: The Debian package forgets to install
/usr/share/xsessions/ctwm.desktop, so pressing F1 on the slim login screen
doesn't find it. You can't get to ctwmrc using normal methods. Oops.
So create the following /usr/share/xsessions/ctwm.desktop :
[snip]
This looks like an obvious, undebatably good change.
If you only use a mouse...
Trouble is, as it ships from the factory, ctwm is extremely keyboarder
hostile. Try it and see: No matter what you do with your keyboard, you
need to grab your mouse to fix the focus. Given that most lightweight
WMDE users are keyboardists, this is a problem.
Or not.
Edit ~/.ctwmrc after copying it elsewhere, and add the following lines
below the list of simple settings like "NoGrabServer" or "GrabServer",
"DecorateTransients", the font assignments, etc, add the following
lines:
==================================================
UsePPosition "on" # Help kbd instantiated windows get focus
RandomPlacement "on" # Help kbd instantiated windows get focus
AutoFocusToTransients # Help kbd instantiated windows get focus
SaveWorkspaceFocus # Obviously workspace focus should be retained
WindowRing # Enable Alt+Tab type window circulation
WarpRingOnScreen # Enable Alt+Tab type window circulation
==================================================
I don't know ctwm (and was greatly relieved as a newbie that I can replace
that twm thingy with WindowMaker) -- thus, in your opinion, is what you
propose:
ᴀ) a default good for everyone
ʙ) personal preference of a random (if well-meaning) guy?
If ᴀ, then what about making it work better out of the box?
Now go below all the Button assignments as well as any hotkey
assignments, and add the following:
==================================================
# HOTKEY DMENU Ctrl+Shift+;
"semicolon" = s | c : all : f.exec "/home/myuid/bin/dmenu_litt.sh"
# HOTKEY defops MENU, HIGHEST LEVEL CTWM MENU
"comma" = s | c : all : f.menu "defops"
# HOTKEY LIST OF ALL MENUS ON ALL WORKSPACES
"period" = s | c : all : f.menu "TwmAllWindows"
# NOTE! ALT+TAB CANNOT BE MADE TO WORK.
# USE Ctrl+Shift+h and Ctrl+Shift+l instead.
"h" = s | c : all : f.warpring "prev" # HOTKEY REV THIS WKSPC WINS
"l" = s | c : all : f.warpring "next" # HOTKEY FWD THIS WKSPC WINS
"u" = s | c : all : f.menu "TwmWindows" # HOTKEY THIS WKSPACE WIN LIST
==================================================
I'd put this into /usr/share/doc/ctwm/examples/ -- unless you believe it'd
be reasonable to override the current/old upstream default with what you
propose.
I don't know how resource-conserving ctwm is compared to twm, Openbox
and its other competitors, but I believe ctwm can be crafted into a
demu-equipped, keyboarder high productivity machine just like Openbox
and all the others, while still respecting your machine's resources and
not spending them profligately.
I'd dismiss this particular argument. We're not talking about a WM which
is so bloated to require the machine to have whole 4MB ram and thus needs to
be trimmed down to run on 2MB. The crummiest monitor-capable SoC you can
buy today has ~1GB ram, with anything real having 2GB in the low-end ARM
world and far more everywhere else.
Only a few WMs can be still called "bloated": GNOME (needs a mid-end GPU to
even run, or slooow software emulation otherwise), Cinnamon (uses GNOME's
backend), maybe some configurations of KDE.
Choice between everything else should be a matter of ergonomics only: you
use what is most comfortable for you; micromanaging the last bit of resource
usage is counterproductive -- it'd be like writing an editor in assembly.
But, returning to the original issue: you can't claim that the maintainer
does a bad job if there's no maintainer. There's also no one to step in
your way if you'd want to make improvements.
Meow!
I wondered why ctwm in debian was 10 years out of date!
I've never built a proper deb before, and I didn't do a proper job this
time, just did enough to get ctwm working.
If you want the latest 4.0.1 version released in June 2017 do this:-
*ctwm*
Now we come to ctwm. The version of ctwm in debian and therefore devuan
is 3.7-4 which is more than 10 years old!
The latest version of ctwm is 4.0.1 dated 2017-06-05.
Note that cmakeis a requirement and will be installed using aptitude as
normal.
*so we are going to use the source code from the ctwm project.*
sudo apt-get install cmakebzr
now use aptitude to install:- libX11-dev libxmu-dev libxpm-dev
libjpeg-dev flex bison cmake checkinstall
ctwm needs yacc, debian has bison so we’ll try that… and it worked!
create ~/code/bzr
# Create a workspace and get the current code
% mkdir -p ~/src/ctwm
% cd ~/src/ctwm
% bzr branch lp:ctwm trunk
## The `bzr branch command will probably give a warning about
## "launchpad-login". If you're not intending to push code back
## up to launchpad, you can ignore it.
## Build, etc
% cd ~/src/ctwm/trunk
% makethen inside the /bzr/ctwm/trunk/build directory where ctwm
is:-sudo checkinstall
and it worked!
The final info from the make is “You can remove it from your system
anytime using:dpkg -r build
/installing ctwm on sid the only dependency seems to be librplay3 but
ctwm say USE PLAY is OFF by default! Probably doesn’t need it then!
Seems to work OK./
_______________________________________________
Dng mailing list
[email protected]
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng