Remove the legalese from start.exe?

Francois Gouget fgouget at
Wed Sep 21 04:40:10 CDT 2011

Start has the following lines at the end of its usage message:

   "start.exe version 0.2 Copyright (C) 2003, Dan Kegel\n"
   "Start comes with ABSOLUTELY NO WARRANTY; for details run with /L option.\n"
   "This is free software, and you are welcome to redistribute it\n"
   "under certain conditions; run 'start /L' for details.\n"

And also this resource:
   "start.exe version 0.2 Copyright (C) 2003, Dan Kegel\n"
   "This program is free software; you can redistribute it and/or\n"
   "modify it under the terms of the GNU Lesser Public License\n"
   "as published by the Free Software Foundation; either version 2.1\n"
   "along with this program; if not, write to the Free Software\n"
   "Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.\n"
   "See the COPYING.LIB file for license information.\n"

We also have another copy of this copyright notice in shell32 for the 
'About Wine' dialog but without the 'start.exe' and 'COPYING.LIB' lines, 
and with 'This program' replaced with 'Wine'.

One more copyright notice we have is this in msrle32.rc:

   "Wine MS-RLE video codec\n"
   "Copyright 2002 by Michael Guennewig"

Now this is all legalese which is a pain to translate (weird vocabulary) 
and pretty scary too. And because of the small differences the copyright 
notice needs to be translated twice (though tools like Virtaal/Launchpad 
may notice the similarity and prefill a fuzzy translation). Also 
start.exe and msrle32.dll are the only ones to have these notices which 
seems pretty inconsistent.

So what can we do to make this simpler?

The simplest would be to remove all copyright notices from start.rc and 
msrle32.rc. (we would keep the ones in the source of course). I guess 
that would require Dan's and Michael's approval.

The other options involve separating the strings that change from one 
tool to the next, from those that stay the same. This way the latter 
will only appear once in the PO file and thus need to be translated only 
once. The various parts can then trivially be concatenated when they are 
displayed. (unfortunately this does not help for the msrle32.rc case)

For instance we could decide to only keep the 'COPYING.LIB' string and 
tack it to the end of the usage message. We could also make things more 
consistent by doing this in every tool. So in pseudo-code we would have 
something like this:

    /* Load the tool-specific usage message */
    usage_message = load_string(IDS_USAGE);

    /* Load the generic copying.lib reference. This one is duplicated in 
     * every tool but always the same.
    copying_reference = load_string(IDS_COPYING);

    /* Print both */

Another option would be to reuse the exact same main copyright notice as 
in the About Wine dialog since we need to translate that anyway (I think 
it would work wrapping-wise). So the start.exe pseudo-code for showing 
the license would be something like this:

    /* Load the copyright notice header, that is:
     *   start.exe version 0.2 Copyright (C) 2003, Dan Kegel
     *   start.exe is part of Wine.
    notice_header = load_string(IDS_NOTICE_HEADER);

    /* Load the generic Wine copyright notice. Note that it
     * says 'Wine' like in the 'About Wine' dialog, not 'This program' 
     * and would be the same in any other Wine tool:
     *    Wine is free software; you can redistribute it and/or modify 
     *    ...
    notice_generic = load_string(IDS_NOTICE_GENERIC);

    /* Load the copyright notice trailer:
     *    See the COPYING.LIB file for license information.
    notice_trailer = load_string(IDS_NOTICE_TRAILER);

    /* Print all the parts together */

Francois Gouget <fgouget at>    
          tcA thgirypoC muinelliM latigiD eht detaloiv tsuj evah uoY

More information about the wine-devel mailing list