68 lines
No EOL
3.4 KiB
Text
68 lines
No EOL
3.4 KiB
Text
There's a lot that the SUS doesn't define, stuff that's up to us. This is a list
|
|
of some of that stuff.
|
|
|
|
Stuff it doesn't include:
|
|
=========================
|
|
|
|
Tools specifically use for for development. The development tools are, according
|
|
to the Guide to the Single Unix Specification, intended for the installation,
|
|
not development of debugging. This includes stuff like debuggers, assembly
|
|
language tools (like as), and program style tools (like linters). There can
|
|
be standards for this sort of thing (things that a linter might want to include,
|
|
assembly language definitions like the x86 assembly standard, etc.), but it's
|
|
not in the SUS. So, if we want to include any of these, we gotta do 'em
|
|
ourselves.
|
|
|
|
Stuff that isn't "useful to conforming applications"/"from shell scripts or
|
|
typical application programs" This is a lot of user-facing stuff that they'd
|
|
use interactively and that can't be used from, like, a shell script and that
|
|
isn't useful for any of the goals of the SUS. For example, news and calendar
|
|
are listed this way. I definitely want those. I may also include a music player,
|
|
assuming I can figure that out. And, of course, other, similar applications,
|
|
like web browsers, RSS readers, etc. Stuff that we can just include if we want.
|
|
|
|
Things that might have been replaced. Specifically, I'm talking about cpio and
|
|
tar. Those were removed in favour of pax, but we still probably want those lying
|
|
around.
|
|
|
|
Things that have been subsumed by other applications. Sure, cpp and ld might be
|
|
a part of c99, but we probably still want those around separately, even if it's
|
|
just breaking the rule ("rule", guideline) that what a program does shouldn't be
|
|
determined by how it was invoked. (i.e. We just make c99 behave with linking
|
|
flags if started as ld and with compiling C++ flags if started as cpp.)
|
|
|
|
"Terminal-oriented" or otherwise low-level programs. Things like login, passwd,
|
|
chroot, or su. These are things we're gonna need but that the SUS doesn't touch.
|
|
(Oh, and wall.)
|
|
|
|
mknod. It's only excluded for being too implementation-defined, but we still
|
|
probably want it.
|
|
|
|
Graphical interfaces. Curses is part of the SUS, but anything beyond that
|
|
(X servers, the actual interfaces that run on said servers) is up to us (at
|
|
least to the extent there isn't a standard; we can't just write our own graphics
|
|
server and call it X11).
|
|
|
|
Anything on the system level. XSH defines a lot of interfaces to that system
|
|
level stuff, and I think there are a few more utilities that do that interfacing
|
|
in XCU, but the kernel level stuff they reference is up to us. This includes
|
|
how we do scheduling (niceness notwithstanding), memory allocation (as called
|
|
through the malloc family), interrupts, hard disk stuff (including the file
|
|
system), and more.
|
|
|
|
dump, an old backup program. Fun stuff.
|
|
|
|
Stuff the standard mentions probably needing:
|
|
=============================================
|
|
|
|
Text formatting. I'd put my money on troff, but we could do TeX. The POSIX
|
|
standard mentioned work in the area of SGML could help, as this is something
|
|
they feel they don't have but need, and the FHS mentioned SGML directories, so
|
|
we could do SGML (though I think I'd rather do troff).
|
|
|
|
More control over printing. Specifically, I think we're gonna have an lpd,
|
|
instead of lp just going straight to the printer, so we could have control over
|
|
scheduling (and even cancelling) print jobs. We could also probably put in some
|
|
stuff to help with formatting print jobs.
|
|
|
|
Tools for working in other programming langauges besides C and FORTRAN. |