Opened 10 years ago

Closed 6 months ago

Last modified 3 months ago

#6866 closed enhancement (no change required)

Updating from USB stick clobbers some settings

Reported by: humdinger Owned by: korli
Priority: normal Milestone:
Component: Applications/Installer Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All


This is hrev39552.

Updating an existing Haiku installation by booting from a USB stick and using the Installer to copy things unto your Haiku partition clobbers existing settings. This is because when booting from the USB stick several setting files are created on first boot and later also copied over. Booting from an install CD obviously doesn't has this problem...

Attached is the {{{ du -a }} output of the ~/config/settings folder of the install-USB stick before and after booting it.

Esp. bad are, I think:

4	./Deskbar_security_code
4	./Deskbar_settings
10	./Key_map                    (<- this one is even in the image before booting from USB)
6	./Tracker/DefaultFolderTemplate
6	./Tracker/DefaultQueryTemplates/application_octet-stream
6	./Tracker/DefaultQueryTemplates/application_x-person
6	./Tracker/DefaultQueryTemplates/application_x-vnd.Be-bookmark
6	./Tracker/DefaultQueryTemplates/text_x-email
30	./Tracker/DefaultQueryTemplates
4	./Tracker/TrackerSettings
4	./Tracker/tracker_shelf
50	./Tracker
4	./mount_server
4	./print_server_settings
2	./shortcuts_settings
6	./system/app_server
6	./system/notifications
4	./system/registrar/RosterSettings
10	./system/registrar
28	./system
4	./time_dststatus
4	./x-vnd.Haiku-desklink

I'm not sure all of these files replacing existing ones have negative effects, but at least Key_Map and Tracker/* is a bummer as you'll loose your query templates and replicants on the Desktop.

Attachments (2)

du-before-booting.txt (5.0 KB ) - added by humdinger 10 years ago.
before first bootup
du-after-booting.txt (13.4 KB ) - added by humdinger 10 years ago.
after first bootup

Download all attachments as: .zip

Change History (10)

by humdinger, 10 years ago

Attachment: du-before-booting.txt added

before first bootup

by humdinger, 10 years ago

Attachment: du-after-booting.txt added

after first bootup

comment:1 by luroh, 10 years ago

Is replacing files like this actually to be considered a bug?

comment:2 by Disreali, 10 years ago

Haiku does not yet have an upgrage facility/system. AFAIK, over-writing of the settings is the expected behaviour.

comment:3 by humdinger, 10 years ago

Type: bugenhancement

It may be expected behaviour, but it's wrong. It's a requirement that the Installer updates a system without needlessly touching a user's data and settings. At the moment it doesn't and even says so in an alert, popping up when installing onto a non-emtpy partition. Changed to "enhancement".

comment:4 by idefix, 10 years ago

Also see ticket:3709.

comment:5 by luroh, 10 years ago

Actually, the Installer popup says that Installer will merge all folders (except for /boot/system, which will be a clean copy) and that the source volume's files take precedence in cases where files exist on both volumes. That said, coupled with a bit of wishful thinking, allowing new installations on top of older ones does allude to some kind of supported upgrade procedure, which it isn't. I know for a fact that this is a cause of many hours of frustration, wild goose chasing and invalid tickets.

In contrast to #3709, I'd like to put forward the suggestion of disallowing installations on top of older ones while optionally allowing archiving of [at least] /boot/home.

comment:6 by stargatefan, 10 years ago

Actually if you do a clean install from a USB stick your desktop preflets don't get setup for process monitor,volume and network. Also they will not stay installed after a reboot.

I think all of these issues are intertwinned with some file permissions issues.

comment:7 by pulkomandy, 6 months ago

Resolution: no change required
Status: newclosed

We have a real update system now.

comment:8 by nielx, 3 months ago

Milestone: R1

Remove milestone for tickets with status = closed and resolution != fixed

Note: See TracTickets for help on using tickets.