[gobolinux-users] Source repositories and other suggestions
gobo-users-dufus at wotfun.com
Mon Dec 4 01:01:37 UTC 2006
On 12/4/06, Martin Baldan <martinobal at gmail.com> wrote:
> On 12/4/06, Michael Homer <gobo-users-dufus at wotfun.com> wrote:
> > The system knows, yes (in a sense, more below), but you're proposing
> > to have it execute your code when that happens. That's kernel-patch
> > territory. Otherwise, you've got to wrap them.
> Well, I'd rather do some kernel patching than wrap every application
I don't think you really have a choice. Doing it properly by patching
the kernel would be difficult to impossible, and I certainly wouldn't
use a kernel patched to use X.
> > At the DE level applications are launched by a wrapper (the shell). So
> > the shell can display indications that something's opening, or that
> > it's done, because you told the shell before it was launched (by
> > picking from a menu, say) and because the shell is the parent process
> > of the application.
> So, even zsh can be the wrapper. You don't need X, just a terminal. Or you
> can have a DE do the job. That pretty much covers all the wrapping needed,
> doesn't it. Kernel patch would probably be overkill.
So you're manually patching all shells, command-line and desktop?
Well... good luck with that, then. Pretty unlikely to make it into
Gobo, though. And all the other problems with automatic detection
> > Sending a negative vote if the program ends abnormally is
> > semi-reasonable; the other's a bit of an assumption. It's a bit of an
> > assumption either way really; what about programs that are expected to
> > return a failure status code in normal operation? Examples: grep (no
> > match), gcc (compile failed), anything with mandatory parameters.
> So, a user can't distinguish when grep found nothing, from when grep is
> broken? How do they find out when it's broken then? Anyway, all the apps
> that show a nice popup in other distros when they break (which are kinda all
> desktop user apps) can send a report in Gobolinux. Having this service for
> absolutely every program is desirable, but not vital.
No, users can read error messages, that's how they tell. When do you
expect a user to look at the return codes of their applications?
Essentially never. Failure codes are normal, and you can't assume they
mean something's broken. `grep foo /var/log/messages && echo "Foo
occurred" || echo "Nope, no foo"` is the usecase for that.
GNOME and KDE have back-handed tricks to do those popups for their own
applications that would require patching to implement elsewhere. They
also do a little bit of guesswork.
No matter how you do that, you're going to have to do a lot of
patching - whether it's to add a wrapper for everything or to make
them hook in to another system, or to add a chunk of guesswork logic
into all the shells. The latter two aren't really plausible. Adding
wrappers to everything would be the easiest way to do it.
One simpler way to do it: You could make applications launch
immediately after compiling to test (like installers do on Windows).
There's still the issue of knowing which binary(ies) to run, but
you've got all the logic in one place and it's not too unexpected that
it'd be there. That could all be architected fairly unobtrusively to
people who didn't want to use the system.
More information about the gobolinux-users