Date: Thu, 31 Aug 2000 00:43:31 +0000 From: Tony Finch <dot@dotat.at> To: Jonathan Smith <jonsmith@dragonstar.dhs.org> Cc: freebsd-questions@freebsd.org Subject: Re: apm and X Message-ID: <20000831004331.B25064@hand.dotat.at> In-Reply-To: <Pine.BSF.4.21.0008211140410.9706-100000@dragonstar.dhs.org>
index | next in thread | previous in thread | raw e-mail
Jonathan Smith <jonsmith@dragonstar.dhs.org> wrote:
>I'm running X 4 on 4.1-RELEASE and apm -z blanks the screen and puts the
>machine to sleep happily, but when done from within X, the X descktop
>stays on screen and the monitor doesn't blank out.
Can you recover from this situation? My laptop hangs *hard* when I try
to suspend from within X, so I wrote a small wrapper to switch to a
text console before running `apm -z` which I keep in /usr/local/bin.
You should also change /etc/apmd.conf to invoke this zzz rather than
the standard one.
Tony.
--
en oeccget g mtcaa f.a.n.finch
v spdlkishrhtewe y dot@dotat.at
eatp o v eiti i d. fanf@covalent.net
/*
* zzz.c: a wrapper around apm(8) that works on my dodgy laptop
*
* (C) 2000 Tony Finch <dot@dotat.at>
*/
static const char *const cvsid =
"$Header: /cvs/fanf/zzz/zzz.c,v 1.1.1.1 2000/06/22 08:43:37 fanf Exp $";
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <machine/console.h>
#include <unistd.h>
#include <fcntl.h>
#include <err.h>
int main() {
int fd, vt, status;
fd = open("/dev/vga", O_RDONLY);
if(fd < 0) err(1, "open /dev/vga");
if(ioctl(fd, VT_GETACTIVE, &vt) < 0)
err(1, "ioctl VT_GETACTIVE");
if(ioctl(fd, VT_ACTIVATE, 1) < 0)
err(1, "ioctl VT_ACTIVATE");
switch(fork()) {
case -1:
err(1, "fork");
case 0:
execl("/usr/sbin/apm", "apm", "-z", NULL);
err(1, "exec apm -z");
default:
wait(&status);
if(!WIFEXITED(status) || WEXITSTATUS(status))
errx(1, "apm -z failed");
}
sleep(3);
if(ioctl(fd, VT_ACTIVATE, vt) < 0)
err(1, "ioctl VT_ACTIVATE");
exit(0);
}
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000831004331.B25064>
