Article View: comp.sys.next.misc
Article #4220Loginwindow Dwrites
From: Jess Anderson
Date: Fri, 01 Jan 1993 16:17
Date: Fri, 01 Jan 1993 16:17
155 lines
6773 bytes
6773 bytes
Here, I hope, is the quasi-definitive story on dwrites that
affect the loginwindow. I'm indebted to several people,
notably Art Isbell, Kristian Koehntopp, Dan Danz, Louie
Mamakos, John Kheit, Felix Lugo, and Paul Sears, for some of
the information presented here.
Remember that dwrites are not supported by NeXT; they may
change with any subsequent system release. These I've
checked out using 3.0; some or all may work with earlier
releases, but I can't vouch for most of them.
All these dwrites must be done as root. You can also run as
root and use DefaultMgr to set them (which is a whole lot
more convenient if you're intending to fiddle with some of
them).
After setting the things you want, restart the WindowServer
by logging out of the current session and typing exit<cr> on
the login panel.
OK, here's what we know (or think we do :-):
dwrite loginwindow DefaultUser <login-name>
Most new machines have <login_name> set to me. This
dwrite logs in user <login_name> automatically. User
<login_name> must not have a password set, hence *don't*
use this in a networked environment!
dwrite loginwindow HostName "<host_name>"
dwrite loginwindow HostName localhost
These cause your host name to appear on the login panel.
You need quote marks only if there's a space in the name.
The first form hard-codes the name into root's defaults
database. The second form uses whatever name has been set
as localhost in NetInfo, which is convenient for
networked machines.
The font, size, color, and position of the printed string
are not accessible (drat!).
dwrite loginwindow ImageFile <path/to/a/suitable.tiff>
This uses the tiff image pointed to instead of the
standard one (in
/usr/lib/NextStep/loginwindow.app/English.lproj/nextlogin.tiff,
<language>.lproj as appropriate for your main language)
as the login panel. Be sure you get the pointer right,
though, or you'll have to boot single-user to fix it. In
practical terms, the image is constrained in various ways
I won't detail here.
dwrite loginwindow TimeToDim <integer_number>
No relation to the dim time set by Preferences. The
units are odd, I think. Felix reported them as 1/34
second. However, when I changed it to 1020, I got 15
seconds to dimming, and 680 gives 10 seconds, that I'm
sure of. So I think the units are 1/68 second. Maybe
Felix just thought it was too damn long! We all know it
*seems* longer when you're not having fun waiting. :-)
Whatever, the login screen dims to about half after this
length of time.
dwrite loginwindow MoveWhenIdle YES
This causes the panel to move around approximately in
Backspace bouncing-off-the-walls-tiff fashion. The point
is to avoid burning the screen phosphors, as a static
image would tend to do. The animation is controlled by
the next couple dwrites.
dwrite loginwindow MovementTimeout <real_number>
The units are seconds. The panel starts moving (assuming
the preceding is set to YES) after this time. If you set
it to be less than the TimeToDim time, the movement
starts before the dimming occurs. I did not try zero. I
can't stand waiting around for things to happen, so I use
10 seconds for both times. The default appears to be 5
minutes.
dwrite loginwindow MovementScale <integer_number>
No movement occurs if this is set to 1. But it looks
like the units might be approximately pixels for each
change of position (the frequency of which is controlled
by the next dwrite). If you put a big number here, say
200, the image moves in big jumps, but I don't know if
the 200 is divided up somehow between change in x- and
y-coordinates. I wouldn't worry about it much, just set
it to something you like. Since my image contains
readable text, I want it to scroll smoothly around, so I
use the apparently minimum value, 2. The default appears
to be 10.
dwrite loginwindow MovementRate <real_number>
The units are seconds. The image jumps by the amount
above every this many seconds. The default is 0.0666
seconds. Bigger numbers mean slower motion. Since I
don't like things being too jumpy or zooming around, I
set this to 0.1 seconds. This makes my image ooze at a
pace befitting an elderly person like me.
The remainder of these I do not use, but am reporting them
for the sake of completeness.
dwrite loginwindow PowerOffDisabled YES
This makes it a little harder to turn the machine off;
you have to use the monitor or the minimonitor
(<right-command>-~) if it's set, rather than the <power>
key.
dwrite loginwindow LoginHook <path/to/loginhook/executable>
dwrite loginwindow LogoutHook <path/to/logouthook/executable>
Pointers to the login and logout hooks, if used. It
should be pointed out that some of these things
(login/logout hooks, for example) are maybe more
logically set where the loginwindow is invoked by the
WindowServer, namely /etc/ttys.
There are yet others. Here's the full list (thanks, Art):
NXGetDefaultValue("loginwindow", "DebugHook") => 0x0
NXGetDefaultValue("loginwindow", "DryRun") => 0x0
NXGetDefaultValue("loginwindow", "WindowServerTimeout") => 0x0
NXRegisterDefaults("loginwindow", 0x16024)
KeyMapPath: 0x12d97 "~/Library/Keyboards:/LocalLibrary/Keyboards:/NextLibrary/Keyboards"
Keymap: 0x12de1 "/NextLibrary/Keyboards/USA"
SwappedKeymap: 0x12e0a "No"
LoginHook: 0x0
LogoutHook: 0x0
HostName: 0x0
ImageFile: 0x0
DefaultUser: 0x12e41 "me"
PowerOffDisabled: 0x0
TimeToDim: 0x12e69 "2040"
MoveWhenIdle: 0x12e0a "No"
MovementTimeout: 0x12e8b "300.0"
MovementRate: 0x12e9e "0.06666"
MovementScale: 0x12eb4 "10"
Goodness, this was more work than I planned on. Enjoy the
new year and long may the pennant of the Black Box wave.
--
[Jess Anderson <> Madison Academic Computing Center <> University of Wisconsin]
[Internet: anderson@macc.wisc.edu <-best, UUCP:{}!uwvax!macc.wisc.edu!anderson]
[Room 3130 <> 1210 West Dayton Street / Madison WI 53706 <> Phone 608/262-5888]
[---------> Discrimination, Bigotry, and Hate are not Family Values <---------]
Technical Details
Message-ID:
<1993Jan1.161713.18721@macc.wisc.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!rutgers!uwvax!zazen!andersonShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!rutgers!uwvax!zazen!anderson From: anderson@macc.wisc.edu (Jess Anderson) Newsgroups: comp.sys.next.misc Subject: Loginwindow Dwrites Message-ID: <1993Jan1.161713.18721@macc.wisc.edu> Date: 1 Jan 93 16:17:13 GMT Sender: news@macc.wisc.edu (USENET News System) Organization: Madison Academic Computing Center, UW-Madison Lines: 155