Upcoming X.org release and splitting packages

Harold L Hunt II harold@codeweavers.com
Thu Mar 18 02:31:00 GMT 2004


We will soon (possibly next week) be releasing a new version of all 
Cygwin/X packages built from the source code tree managed by X.org and 
hosted on freedesktop.org.  This will be a very good thing since all of 
the Cygwin/X developers will be able to stay in sync with the exact code 
that is in distribution via CVS, compared to our current system today 
where the code in distribution has many differences from that in CVS. 
The rebuild won't mean much to end users: all libraries remain binary 
compatible with the current packages and the contents of the release 
(programs, etc.) will be almost identical.

In case you have not noticed, I created a build and packaging script 
system for Cygwin/X last week (took 60+ hours).  This script system does 
a few things for us, such as allowing us to easily distribute source 
tarballs via Cygwin's setup.exe.  More importantly, the script system 
allows us to exercise a finer control over what files each package 
contains and how many packages we break the distribution up into.  We 
can very easily rename current packages when we make the next release, 
we can split existing packages into pieces, or we could take a set of 
packages, roll them back together, then split that entire mess into 
mixed pieces of the originals.

I am mentioning this now because I can think of a few things that I 
would like to change in our package layout in time for the X.org 
release, but I would also like to get feedback from the community on 
what you think would be useful.  Please take a look at my brief list of 
ideas below and send your thoughts to the mailing list if you have 
something about our packaging that you have wanted changed for a long time.

My Proposals for Packaging Changes
==================================
1) Due to popular demand, rename the "prog" package to "devel".  The 
name "devel" matches the defacto standard used by other packages for 
link libraries and header files; most people have no idea what the 
"prog" package is for, but they do know what a "devel" package is for.

2) Split the "bin" package into at least a few pieces (but not too many 
pieces):

2a) "bin-dlls" will contain the .dll files only.  This would allow 
packages like emacs or xemacs to depend only on bin-dlls instead of on 
the entire bin package which includes programs not used by emacs nor xemacs.

2b) "bin-lndir" would contain the lndir utility.  lndir has no 
dependence on X libs and can be used by any programmer for non-X projects.

2c) "bin-apps" would contain all other applications originally contained 
in "bin" but not contained in "bin-dlls" nor "bin-lndir".

3) Rename all fonts packages from "f100, cyr, fenc, fnts, fscl" to 
something like "fonts-100dpi", "fonts-cyrillic", "fonts-encodings", 
"fonts-75dpi", and "fonts-scalable".

4) Split the "fnts" package into a "fonts-required" and "fonts-75dpi". 
fonts-required should be a very small package that would allow people to 
minimize their download if they are using Xdmcp to reach a KDE or Gnome 
desktop, both of which you client-rendered fonts (few fonts required on 
your Cygwin/X host in that case).

5) Rename the "lib" package to something more meaningful.  The name 
currently implies that it might contain link libraries or run-time 
libraries, but it really contains files shared among X packages. 
Perhaps "shared-files" would be a better name.  I would appreciate it if 
someone would look into what Debian and/or Fedora call this package.

6) Rename "fsrv" to "font-server".

7) Rename "html" to "manual-pages-html".

8) Rename "man" to "manual-pages".


Let us know what you think of those and send in your own suggestions as 
well.

Harold



More information about the Cygwin-xfree mailing list