sun microsystems Systems Architecture Committee _________________________________________________________________ Subject: /usr/gnu Submitted by: Stephen Hahn File: PSARC/2007/047/opinion.ms Date: January 31st, 2007 Committee: James D. Carlson, Kais Belgaied, Ed Gould, Joseph Kowalski, Tim Marsland, Glenn Skinner, Bill Sommerfeld, Gary Winiger. Product Approval Committee: Solaris PAC solaris-pac@sun.com 1. Summary This project builds on "Enabling serendipitous discovery" (PSARC 2005/185) and proposes two new policies for Solaris related to GNU/FSF-derived software that conflicts with Solaris components. The first is the creation of a new "/usr/gnu" hierarchy to be delivered with Solaris, and popu- lated with GNU/FSF-derived objects that conflict with Solaris objects. The second is a policy relating to 'g'- prefixed variants in the standard file system locations. 2. Decision & Precedence Information The project is approved as specified in reference [1]. The project may deliver in a patch/micro release of Solaris. See the final specification in reference [1] for details on the new policies. 3. Interfaces The project exports the following interfaces. ____________________________________________________________ | Interfaces Exported | |___________________|________________|_____________________| |Interface | Classification| Comments | |___________________|________________|_____________________| |/usr/share/info | Committed | Single directory | |___________________|________________|_____________________| PSARC/2007/047 Copyright 2007 Sun Microsystems - 2 - ____________________________________________________________ | Interfaces Exported | |___________________|________________|_____________________| |Interface | Classification| Comments | |___________________|________________|_____________________| |/usr/gnu | Committed | Directory hierarchy| |/usr/gnu/bin | Committed | | |/usr/gnu/sbin | Committed | | |/usr/gnu/include | Committed | | |/usr/gnu/lib | Committed | | |/usr/gnu/libexec | Committed | | |/usr/gnu/share | Committed | | |/usr/gnu/share/info| Committed | | |/usr/gnu/share/man | Committed | | |/etc/gnu | Committed | Directory hierarchy| |/var/gnu | Committed | Directory hierarchy| |/var/gnu/com | Committed | | |___________________|________________|_____________________| 4. Opinion 4.1. Why GNU? The existing precedent for XPG and UCB environments is based on ideal or historic systems that the user may need to emu- late. Several ARC members asked why GNU in particular (rather than some GNU-using system, such as a particular Linux distribution) was an interesting reference point, and why we should not be examining other possible software repo- sitories. The project team made several points in response. First, this project deals with conflict resolution, and conflicts are an issue primarily with Unix-like environments. GNU is the only alternative Unix-like repository of any signifi- cance, given our intertwined BSD history, and the only one expected to exist in the future. Further, close integration of these tools into Solaris is a great benefit for JDS and other consolidations, both in building open source software and in supporting applications. The ARC members agreed with this answer. 4.2. Full Versus Sparse Directory Several ARC members objected to the fully-populated symlink forest in the original proposal, as it's both less flexible than a sparse (conflicts-only) directory and unnecessarily different from our precedents. The team agreed to update the specification to remove the symlinks. PSARC/2007/047 Copyright 2007 Sun Microsystems - 3 - 4.3. Administrative Utilities Excluded A few ARC members pointed out that administrative applica- tions designed for Linux or some other GNU system are unlikely to work correctly on Solaris, whatever their mer- its. The team agreed to update the specification to exclude the new policy from applying to things that are deemed to be administrative in nature. One important issue is that what is considered "administra- tive" is sometimes subjective. The distinctions are some- times based on how the utilities are used rather than what they do. This is an issue that may need to be examined again as future projects use the policies set forth in this case. The ARC members did not review a proposal to include admin- istrative utilities, but it's expected that such items in a future case would be subject to much more substantial review and constraint. 5. Minority Opinion(s) None 6. Advisory Information None 7. Appendices 7.1. Appendix A: Technical Changes Required None 7.2. Appendix B: Technical Changes Advised None 7.3. Appendix C: Reference Material Unless stated otherwise, path names are relative to the case directory PSARC/2007/047. 1. Final specification File: final.spec.txt PSARC/2007/047 Copyright 2007 Sun Microsystems