Apache OpenOffice (AOO) Bugzilla – Issue 63030
Empty directories not packaged
Last modified: 2006-10-28 21:17:38 UTC
In scp2/source/ooo/directory_ooo.scp there are a number of directories, which have Styles = (CREATE) proerty set, but use DosName property for their name. Unfortunatly the code in solenv/bin/modules/installer/scriptitems.pm tests for HostName property only, which causes empty directories to no longer get packaged.
Potentially the problem is even before collect_directories_with_create_flag_from_directoryarray function. However, the following snippet works Directory gid_Dir_User_Fonts ParentID = gid_Dir_User; DosName = "fonts"; HostName = "fonts"; Styles = (WORKSTATION, CREATE); End while the same snippet without "HostName" does not.
ericb->obr Thank you for the CC :-) ericb->is Mac OS X / gcc-4.0 / XCode 2.1/ m158 + macosxfondu cws. I confirm none of the three following cases works : 1) using Styles = (WORKSTATION, CREATE); 2) using Styles = (CREATE); 3) using ..nothing .. Only add a file (making it not empty) in fonts works ...
ericb->obr Please have a look at http://www.openoffice.org/issues/show_bug.cgi?id=62551 Maybe relevant for this issue.
"DosName" is converted to "HostName" by the scp linker. I allowed the usage of "DosName" because of historical reasons, but the correct syntax is "HostName". But nevertheless both works, because of the linker par2script in cvs module solenv. Please verify, that in the script created in scp2 only "HostName" can be found. If you find "DosName" the script is broken and the linker does not work correct. I just checked this for Solaris, Linux and Windows and everything works fine. All OpenOffice.org installations are working without problems. Using in scp2 Directory gid_Dir_User_Fonts ParentID = gid_Dir_User; DosName = "fonts"; Styles = (WORKSTATION, CREATE); End leads to the creation of an empty folder presets/fonts on all three tested platforms. On Linux and Solaris the folder is part of the core01 package and in Windows the folder is explicitely included into the table "CreateFolders" which is required for the creation of empty folders. For the tested platforms there are no problems. Please give me some more information about your platforms. It sounds, as if there is a problem with the scp linker.
Obviously I was too fast saying that packaging works with HostName: I only checked setup_osl.ins, but the install set still doesn't have e.g. presets/fonts. The real problem is that epm creates empty directories in the .install script for pkgtype portable, which is not run during .dmg generation.
The following patch changes the packaging process for the drag-and-drop installation to use the -simple option. NOTE: the patch does not include any changes to configure yet, to test it one needs to manually unset PKGFORMAT variable. Open items: 1) Since this patch also changes the installation structure in scp2 from install_root/program etc. to install_root/OpenOffice.org 2.0.app/Contents/MacOS/program etc. we could easily move the readmes and lincenses directories into the install_root, where they probably make more sense. 2) Currently the changes in instsetoo_native/util/makefile.mk are only made for the openoffice target. Do we want openofficemulti and oosdk also ? BTW: oolanguagepacks do not make much sense now, since there is no way to install them currently. Feedback welcome.
Created attachment 35021 [details] Part1 of the OSX packagng rework
obr: It might also make sense to 'borrow', with permission of course, the image that is used in the Firefox installation to gentlely remind new users to drag the .app image to the Applications folder, and place it in the install_root. James
Created attachment 35077 [details] Made previous patch apply cleanly on rc4 sources
build was broken with: MacOSX Tiger+gcc-4.0 MD5 sum of OOo_2.0.2rc4_060227_src.tar.gz MD5 (/Volumes/OpenOffice.org/MacOSX/files//OOo_2.0.2rc4_060227_src.tar.gz) = 1b50c8c4c1002edbc4993060ca05ca8f PKGFORMAT unset.
Created attachment 35150 [details] build log
Created attachment 35151 [details] log at instset_oo
obrmac: I unsetenv'ed PKGFORMAT after `source MacOSIntel.sh' (something like that) see the build log for details.
*** Issue 57831 has been marked as a duplicate of this issue. ***
Unfortunatly the first version of the patch caused the office to no longer start, because the soffice.bin no longer got stripped and so there were duplicate static instances of the ref-counted UNO types. The second version of the patch patches deliver.pl to strip on OS X as well. The patch still doesn't have the configure change in it, so PKGFORMAT must be unset manually. I am also awaiting a background image for the OOo dmg in the next days. However, SDK and URE come now as .dmg as well, which was the same amount of work as creating tar.gz. In the long run, we probably should look into how to make OSX Frameworks out of them.
Created attachment 35241 [details] V2 of proposed patch (against OOB680 m5)
Issue 11409 was the original discussion on moving to an installer vice a packager. I am certain there are others that have been closed as OpenOffice 1.1.x never got to the installer/packager stage. IMHO, issue 56189 should be closed as WONTFIX as work in that issue will be stopped by this issue. James
This issue currenlty blocks issue 57252. The proposed fix is a temporary solution for the X11 port, but might get re-used with the Aqua port.
re-assigned.
Added CC: to yossy_takeuchi
Ran build of m161 with v2 patch but did not unset the PKGFORMAT. Build broke, as expected, in instset_oo. Will re-run with PKGFORMAT unset. James
obr: As issue 63630 intends to create a .pkg install for Mac X11, what would be the best way to proceed, for things related to this bug: 1) Just integrate the current patch and fix the .pkg building in another issue? 2) Create a new patch that does .pkg for OS==MACOSX && GUIBASE==unx, and use the code in the currect patch (drag&drop install) for OS==MACOSX && GUIBASE==aqua ? What do you think?
Since this issue blocks macosxfondu, I propose to integrate the patch as is first. Re-enabling osx as default PKGFORMAT for X11 builds can hopefully be done easily in configure.
Also look at 62251. This may be a duplicate of that bug. I am going to rerun the build with this patch as the build did not create the appropriate files for a .pkg or .mpkg installer. James
Removed .pkg issues as this issue addresses the missing empty directory problem and does not introduce new functionality as far as installer versus drag and drop capabilities. James
Added IZ 62765 as this issue breaks 2.0.2 rc 4's ability to work Wizards functionality for producing form letters, agendas, Fax Cover sheets and other items that depend on the existance of the empty templates folder. On a good note, I ran a build of 2.0.2 rc 4 with the proposed v2 patch in place and after manually updating the MacOSXPPC.set.sh file, the build completed and Wizards functionality is restored to the template folder. I send Oliver a message asking how the PKGFORMAT unset feature was going to be incorporated in configure.in. If we want to permenantly change the MacOSX portable builds, this will be unnecessary. James
Created attachment 35435 [details] (Hopefully) final version of this patch for OOB680m5
Updated the patch to include a background image: please put the files into instsetoo_native/res manually. This version of the patch does no longer require to unset PKGFORMAT variable, the new packaging is triggered by OS == MACOSX && PKGFORMAT == portable now. Going forward, changing configure not to set PKGFORMAT=portable is still desired.
OBR: Do you have a cws to put this in? I would like to run a verification build because the empty directory issue blocks release of 2.0.2 James
Recommend that this be installed with 2.0.2.rc5. We will need another build of 2.0.2 rc for OS X. James
I have applied V3 of the patch to CWS macosx20xfixes02 (based on m161).
obr: Now I just started to build with your v3 patch. questions: where should I place osxdndinstall.png ? (you seem to delete this file for cws_src680_macosx20xfixes02) how about DS_store files? Can I simply ignore this?
maho: please put both files (osxdndinstall.png _and_ DS_Store) into instsetoo_native/res directory manually. BTW: The files are newly integrated in CWS macosx20xfixes02, which makes them appear as "deleted" on head/master.
obr: thanks. that's why I cannot figure out why we need these files! from bonsai, these files are in Attic. Now I stated to rebuild all from scratch.
full build verified on Tiger (Intel Mac)+gcc-4.0
obr: fix verified on intel Mac+gcc-4.0 (wizard problem is disappeared) now I started to build release packages. Huge thanks!!!!
Since this issue is fixed on MacOSX, does this fix also correct the failure to correct the missing directories in FreeBSD for 2.0.2 rc 4? James
Issue is verified as fixed in 2.0.2 rc 4. Release is out to QA.
*** Issue 63691 has been marked as a duplicate of this issue. ***
.