Closed Bug 92898 Opened 23 years ago Closed 23 years ago

installed-chrome.txt ignored, if user-skins.rdf empty

Categories

(Core :: XUL, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: BenB, Assigned: trudelle)

References

()

Details

Attachments

(2 files)

Reproduction:
1. su userA (which owns the installation)
2. Add "skin,install,select,modern/1.0" to installed-chrome.txt
3. Make sure, user-skins.rdf exists (so Mozilla runs at all later) and is empty
(e.g. |touch user-skins.rdf|)
4. regchrome, regxpcom, touch users-locales.rdf
5. su userB
6. Start Mozilla

Actual result:
Classic skin is used.

Expected result:
Modern skin is used.

Solution:
You need to add the content of the attached file to users-skins.rdf. Not sure,
if it will break, as soon as there is a new component.

Additional Comments:
I spent *days* trying to figure out what's going on. :-(((
the problem is that touching confuses regchrome and mozilla. someone in 
npm.xpinstall had the same complaint.

I'd probably resolve this as WONTFIX since you both can clearly touch files 
randomly you should decide to touch installed-chrome.txt _last_.

The alternative is modifying the chromereg functions and commandline to take a 
param (force=PR_TRUE)/flag ("-f") to force re-registration

warren owned this code...
Assignee: ben → waterson
Component: Skinability → RDF
QA Contact: pmac → tever
timeless,
what I did is what was proposed on the "install as root" bugs. Doing (as I think
you suggest)
./regxpcom
./regchrome
touch chrome/user-skin.rdf
touch chrome/user-locales.rdf
tuuch chrome/installed-chrome.txt
doesn't help either.
dveditz, could that be a dup of bug 54904?
nevermind
OK, now, I am completely confused. I used to run |./regxpcom; ./regchrome| (in
that order), but that didn't create the chrome/user-*.rdf files, assuming my
memory still serves me. But now, regxpcom creates chrome/user-locales.rdf, with
content. chrome/user-skins.rdf is not at all created, neither by regxpcom nor by
regchrome. So, I manually touch chrome/user-skins.rdf, chrome/user-locales.rdf
and chrome/installed-chrome.txt.

Fine, so far no problem. BUT if I now run Mozilla (as a different user), the
ProfileSelector comes up with no UI strings. The app is fine, I can even load
the ProfileSelector chrome URl into the browser, and it displays fine.

It turns out that user-locales.rdf must be empty for the ProfileSelector to work.


Let me summarize my observations:

The (in various bugs) suggested way to "install" Mozilla (without running
mozilla-bin)
- creates user-locales.rdf with content
- does not create user-locales.rdf (if you run only ./regxpcom, ./regchrome)
  or creates an empty user-locales.rdf (if you also use |touch|)

But, to make everything work:
- user-locales.rdf must exist, but be empty
- user-skins.rdf must exist with content

So, the install method does the *exact opposite* of what is needed.


What is going on? Is there a definite install method that will still work in 3
months? (Apart from running Apprunner, which doesn't count.)
FYI: I'm using the 0.9.2 branch.

Adding as blocker of bug 42184. The workaround is to fragile and unpredictable
to be useful.

Also moving to XPToolkit.
Assignee: waterson → trudelle
Blocks: 42184
Component: RDF → XP Toolkit/Widgets
QA Contact: tever → aegis
The following now works for me:

echo "skin,install,select,modern/1.0" >> chrome/installed-chrome.txt
./regxpcom
./regchrome
# user-locales must be empty (but exist),
# or the ProfileSelector will break. See bug 92898.
rm chrome/user-locales.rdf
touch chrome/user-locales.rdf

I will mark this bug as INVALID and file a new one about user-locales.rdf. Sorry
for any confusion.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → INVALID
May God have mercy on us all. The 212 bug spam-o-rama is Now!
QA Contact: aegis → jrgm
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: