12 Replies Latest reply: Mar 18, 2007 7:06 PM by Bojan Landekic
Bojan Landekic Level 1 Level 1 (0 points)
After a system install, a user account or a few are created. Some of these users will customize settings using System Preferences. Others will install icons, themes, pictures, applications, change Library settings, edit com. values, adjust plists and so forth.

Then a system upgrade happens and all their hard work is gone. After several of these incidents the users no longer bother to spend as much time customizing - this is the clear fault of the admins.

I am wondering if anyone has figured out how to fully preserve all the customizations that a user may make to their account and then to re-apply them successfully upon a system update.

Please only reply with tools or links to tools that can do the job or a partial task, or lists to files that need to be preserved, edited, and updated.

iMac G4 350, Mac OS X (10.3.9), customizatoin, hacking, modification, user settings
  • Thomas Brierley Level 3 Level 3 (540 points)
    The user can simply make a backup of the entire Preferences directory within their Library (all settings that they have access to are kept there for both the system and apps.) The entire users Library can be copied also ... although caches and application support can become quite large over time. if only after settings then you can also pick the Safari directory out of the Library which contains bookmarks and history.

    System and Application icons have to be changed directly (not per user), so as soon as that component of the System or App is replaced, it is lost. The theming app Shapeshifter (which most people use) avoids directly appending the extras.rsrc file containing GUI graphics and instead intercepts calls to the file. The themer is a preference pane which can be installed per user (within the users Library) So that could also be saved to some extent by backing up the library.

    Even so, simply updating a system should not alter a users account in any way. It is possible that customizations made directly to the system will be lost but that is unavoidable.
  • Bojan Landekic Level 1 Level 1 (0 points)
    An empty folder seems to be between 4kb and 12kb; a custom icon increases the empty folder size sometimes up to 145kb or more. Where is this icon stored? Why is there a difference in empty folder sizes?

    The Preferences folder contains only plist, ini, sol, html and unlabelled CDDB formats.
  • Thomas Brierley Level 3 Level 3 (540 points)
    Ahh, applying custom icons to specific directories actually places the picture inside the directory... a dot precedes the file making it invisible... that is why there is a size difference.
  • Bojan Landekic Level 1 Level 1 (0 points)
    Seems the Terminal application can be used to locate these files. The only file as described is ".DS_Store". Maybe not a renamed icon, also within uncustomized folders - presuming Finder references an internal one in these cases.

    Some applications claim to be able to remove ".DS_Store files resource forks and more junk the Finder creates". Junk to a user is that which is unneeded. If a user spent hours customizing such a tool may bring them to tears.

    How is a user to know all this without hours of unix, shell, coding and such concepts? is this good user interface design?
  • Thomas Brierley Level 3 Level 3 (540 points)
    Sorry the way icons are stored seems to have changed... the file is now called "Icon?"

    However it has 0 size and contents so it must be a reference file of some kind, it's not a link of any kind that the terminal can decipher though... I can only imagine that there is some cache somewhere that all the custom icons are kept.

    The .DS_store files are what stores the view options, arrangement of files and folders, and size and placement of a window for each directory.

    They are only created in a directory when a view is modified for that particular directory.

    It's size is insignificant and they are only created where they are needed... i fail to see how this is not good interface design.

    What do you think a user would need to learn a UNIX shell for?
  • Bojan Landekic Level 1 Level 1 (0 points)
    Sorry the way icons are stored seems to have
    changed... the file is now called "Icon?"


    No documentation included with my Macs explained any of this!
    Strangely the file is not actually called "Icon?" but rather "Icon\013". The question mark is actually a CR (carriage return); the visual terminal renders these characters the way discussions renders the last letter of my name, with a question mark.

    However it has 0 size and contents so it must be a
    reference file of some kind, it's not a link of any
    kind that the terminal can decipher though... I can
    only imagine that there is some cache somewhere that
    all the custom icons are kept.


    Hypothetically, on every references to a folder the Finder checks for presence of the Icon\013 file and if it is found it accesses the location where a custom graphic is stored. In fact, you can store many icons (try pasting 10 icons!) per item and it'll keep them all - perhaps for having animated icons? However there seems to be no way to flip between them by the user other than to use the backspace key when removing them all.

    The .DS_store files are what stores the view options,
    arrangement of files and folders, and size and
    placement of a window for each directory.


    If this file contains customized settings for a folder than it should also contain the icon.

    They are only created in a directory when a view is
    modified for that particular directory.


    This is incorrect. I have created a new folder, change it's specific settings to have a dark background and large icons and added a new folder and there was no .DS_Store file whatsoever afterwards even though the settings remained. Perhaps custom folder settings are held elsewhere?

    It's size is insignificant and they are only created
    where they are needed... i fail to see how this is
    not good interface design.


    The size is quite significant depending on the volume of customizations, number of users, hard disk performance and memory utilization. Perhaps you should spend a week customizing your folders and user settings and then you might have a different opinion as well as a more thorough understanding of actual OS X internals.

    What do you think a user would need to learn a UNIX
    shell for?


    If what I've written so far does not explain I do not have any more time to waste rephrasing.
  • Thomas Brierley Level 3 Level 3 (540 points)
    No documentation included with my Macs explained any of this!
    Strangely the file is not actually called "Icon?" but rather "Icon\013".
    The question mark is actually a CR (carriage return);
    the visual terminal renders these characters the way discussions renders
    the last letter of my name, with a question mark.


    If you are going to argue that the specific workings of custom icon storage should have been included with the basic documentation then you have to argue why it is relevant to a user... you do not have to understand how the icon is stored to apply one, the same way as you do not have to know how the kernel works to use your OS at all. For what? is a full understanding of this necessary to achieve?

    If this file contains customized settings for a folder than it should also
    contain the icon.


    Again why? You cannot just state that it should. Storing these files separately seems like a perfectly logical design. Storing both as one resource would only achieve one less directory entry, cause complications and increase the risk of corruption.

    This is incorrect. I have created a new folder, change it's specific settings
    to have a dark background and large icons and added a new folder and
    there was no .DS_Store file whatsoever afterwards even though the
    settings remained. Perhaps custom folder settings are held elsewhere?


    All i can say is you must be wrong. Every time i have purposely changed specific settings, a .DS_Store file has been created for me, i know this because when purposely customizing a folder i usually want it to be relatively permanent so i change the ownership and permissions of the .DS_Store file which prevents the settings from being modified.

    The size is quite significant depending on the volume of customizations,
    number of users, hard disk performance and memory utilization. Perhaps
    you should spend a week customizing your folders and user settings and
    then you might have a different opinion as well as a more thorough
    understanding of actual OS X internals.


    Most .DS_Store files with all the various customizations made are no larger than 6148 bytes (6 Kilobytes). Whether you consider the collective size of these files is significant is up to you, personally i think youd be mad to think so or are using your 386 for storage.

    To put things into perspective: using the normal .DS_Store size and the total number of directories on my system (which is not true to the number of .DS_Store files as almost all of the system and library directories contain none unless ventured into)

    .DS_Store = 6148

    Directories = 34,172

    collective size = 200 MB

    realistically it would be far less as most .DS_Store files are smaller and not present in the system directories. So consider that a maximum under most circumstances. If you want a true size then write yourself script to find all your .DS_Stores and add their sizes.

    So you are complaining of it's size yet you want customization ... can you think of a way to make the storing of window and icon size and location smaller??

    I fail to see any real problem Bojan, your original post was about how to preserve user customizations after a system upgrade. Folder customizations are stored within the folder... unless the user is customizing system components no settings are lost. As long as the folder continues to exist so should it's customizations. I can't see why anyone would need to access the CLI to modify or preserve these customizations ether... all can be done via the GUI.
  • Bojan Landekic Level 1 Level 1 (0 points)
    If you are going to argue that the specific workings
    of custom icon storage should have been included with
    the basic documentation then you have to argue why it
    is relevant to a user...


    In my post on Mar 18, 2007 1:21 AM in second paragraph the last sentence states why.

    you do not have to
    understand how the icon is stored to apply one, the
    same way as you do not have to know how the kernel
    works to use your OS at all. For what? is a full
    understanding of this necessary to achieve?


    The user should not even need to use the Terminal or even know it exists. In fact, I'd argue that having more than one mouse button is counter-productive to an efficient workflow. Simplicity is beautiful. A 15 button mouse might be practical if there is no keyboard though though I'd much rather prefer Mac OS with a single button mouse without a keyboard!

    It takes a lot to control Mac OS with Wii - that is why a user would need to know how to decompile a kernel, write driver code, and then recompile it. Then a system update, and all their changes are lost, and the kdev might not be supported. Had the designers of Wii used standard interfaces such as USB or Firewire, a consumer could simly plug and play - a concept of 10 years ago that still has not materialized. So please, let's not ******* argue.

    I disagree that the user of a system should need to know how to decompile a kernel, how to hack bash, how to move com.apple and plists, I disagree that there is no simple way to manage icons by default.

    If this file contains customized settings for a

    folder than it should also
    contain the icon.


    Again why? You cannot just state that it should.


    I did not just state that it should, the reason was provided in a prior reply as referred at the top of this reply. Please read it. As well I asked you to do something so you'd understand why - have you done so?

    Storing these files separately seems like a perfectly
    logical design. Storing both as one resource would
    only achieve one less directory entry, cause
    complications and increase the risk of corruption.


    What complications and corruptions are you referring to? Have you done what I asked in a prior reply or merely ignored it? If you have not, then why not?

    This is incorrect. I have created a new folder,

    change it's specific settings
    to have a dark background and large icons and added

    a new folder and
    there was no .DS_Store file whatsoever afterwards

    even though the
    settings remained. Perhaps custom folder settings

    are held elsewhere?

    All i can say is you must be wrong.


    What I am describing to you is the manner in which my computer works. And if yours does not work that way, then presuming I am wrong is stupid. Instead it would make more sense to conclude that we have different versions, or something similar. I cannot be wrong in stating a fact.

    Every time i have
    purposely changed specific settings, a .DS_Store file
    has been created for me, i know this because when
    purposely customizing a folder i usually want it to
    be relatively permanent so i change the ownership and
    permissions of the .DS_Store file which prevents the
    settings from being modified.


    As I have asked already and as you seem to have ignored, try to change more than just simple administrative non-sense things like permissions. Change the backgrounds of most of your folders, change their icons. For me, there is no .DS_Store! As a user I really don't want to know about permissions and ownerships and groups - it's not something someone writing music, or drawing, or surfing the web needs to know - is it? What do ownership and permissions have to do with sending and receiving email or chatting online? Or sending a picture to a family member? Is that trully good interface design? Should that be part of the user experience? Do I need to waste my time further writing what I already wrote and you simply did not read?

    Most .DS_Store files with all the various
    customizations made are no larger than 6148 bytes (6
    Kilobytes). Whether you consider the collective size
    of these files is significant is up to you,
    personally i think youd be mad to think so or are
    using your 386 for storage.


    If I use a 200kb jpeg as a background for a folder, and then use a 28kb icon where are all these files stored? And if this is done to over 1,000 folders, per user, can you take the time to do the math instead of concluding others are mad and wrong all the time?

    To put things into perspective: using the normal
    .DS_Store size and the total number of directories on
    my system (which is not true to the number of
    .DS_Store files as almost all of the system and
    library directories contain none unless ventured
    into)

    .DS_Store = 6148

    Directories = 34,172

    collective size = 200 MB


    How many users is this totalling?

    realistically it would be far less as most .DS_Store
    files are smaller and not present in the system
    directories. So consider that a maximum under most
    circumstances. If you want a true size then write
    yourself script to find all your .DS_Stores and add
    their sizes.


    I am just a user and do not wish to write scrpts, code, nor decompile the kernel. Which part of that did I fail to make clear several times thus far?

    So you are complaining of it's size yet you want
    customization ... can you think of a way to make the
    storing of window and icon size and location
    smaller??


    Incorrect. I did not complain about the size at any point whatsoever. I asked how to preserve the customizations. Please refrain from presumptuously altering the words of others to suit your own needs.

    As for your question - I leave such answers to those who get paid to find them as I am just a user of the system.

    I fail to see any real problem Bojan, your original
    post was about how to preserve user customizations
    after a system upgrade. Folder customizations are
    stored within the folder... unless the user is
    customizing system components no settings are lost.


    Except they are not stoerd within the folders. For example, I set an icon for a folder, and in some parts of the system that folder does not have that icon but a regular one. Then I removed the icon and set it again, and this time it was system-wide as far as my time permitted me to check.

    It is true that you fail to see the problem. As i instructed you in my prior reply, spend a week customizing lots of folders, and then perhaps you might understand.

    As long as the folder continues to exist so should
    it's customizations. I can't see why anyone would
    need to access the CLI to modify or preserve these
    customizations ether... all can be done via the GUI.


    I know you can't, as it seems your system is not as customized as mine. There's a lot in the CLI that the GUI simply does not account for, unfortunately it is a dire situation.

    I still don't know how to preserve my customizations! This is of utmost importance to a user so they can transfer their workspace from one computer to another.
  • eww Level 9 Level 9 (52,975 points)
    The indications are that it isn't of utmost importance to anyone but you, Bojan. Or maybe people who care about it just prefer more congenial company.
  • Thomas Brierley Level 3 Level 3 (540 points)
    I'm sorry Bojan, I really dont have the patience to argue this with you anymore.

    All i can get gather is that you want fully potable customizations. And as portable customizations and user accounts are not an intended feature of OS X it cannot be achieved via the GUI.

    There's a lot in the CLI that the GUI simply does not account for, unfortunately it is a dire situation.


    This will always be the case. The GUI only provides the most useful and commonly used functions to accommodate at least a novice user, Apple decides what goes there... more specific things are left to the CLI because people who want to do things like change permissions will know how to use the CLI anyway. If you try and make the GUI accommodate all the functionality of the CLI then you end up with a very cluttered and confusing interface.

    As I have asked already and as you seem to have ignored, try to change
    more than just simple administrative non-sense things like permissions.
    Change the backgrounds of most of your folders, change their icons. For
    me, there is no .DS_Store! As a user I really don't want to know about
    permissions and ownerships and groups - it's not something someone
    writing music, or drawing, or surfing the web needs to know - is it? What do
    ownership and permissions have to do with sending and receiving email or
    chatting online? Or sending a picture to a family member? Is that truly good
    interface design? Should that be part of the user experience? Do I need to
    waste my time further writing what I already wrote and you simply did not
    read?


    I agree, ownership and permissions have nothing to do with any of that. However i was using them for a specific purpose. I was using them to achieve read only customizations, if you think that is a feature all users should have access to and should be included in the GUI then that is your opinion... however you can't just spin that around and attach it to Surfing, Email, Chat etc. because as you said: "As a user I really don't want to know about permissions and ownerships" ... and you don't have to know about it for any of those things.

    As for all the backgrounds and icons... i have tried them and they CAN all be done via the GUI. You are only ending up in the terminal becasue you want to find out how it works so you can make it portable... as i said it's not an intended feature so you can't complain.

    I'm sorry to hear OS X cannot fulfill your excessive portable customization needs...

    But you can't expect a tin of beans to grow you a bean stalk unless it says so on the packaging.

    I have nothing more to say
  • Bojan Landekic Level 1 Level 1 (0 points)
    The indications are that it isn't of utmost
    importance to anyone but you, Bojan. Or maybe people
    who care about it just prefer more congenial company.


    Perhaps your indication tresholds are wrongly calibrated eww?
  • Bojan Landekic Level 1 Level 1 (0 points)
    I'm sorry Bojan, I really dont have the patience to
    argue this with you anymore.


    It's okay. The problem is not that simple to solve, it seems far too complicated for even those Apple has hired!

    All i can get gather is that you want fully potable
    customizations. And as portable customizations and
    user accounts are not an intended feature of OS X it
    cannot be achieved via the GUI.


    Do you work for Apple or have been on the design team of OS X?

    There's a lot in the CLI that the GUI simply does

    not account for, unfortunately it is a dire
    situation.

    This will always be the case.


    No it won't.

    The GUI only provides
    the most useful and commonly used functions to
    accommodate at least a novice user, Apple decides
    what goes there... more specific things are left to
    the CLI because people who want to do things like
    change permissions will know how to use the CLI
    anyway.


    A novice user would want to customize the GUi as the first step towards familiarization and then learn all the commands and interface widgets and other ********. Do you learn how to build a house first or do you first decorate your room? What sort of ****** up logic are you using to rationalize what you just wrote? I've never built a house from the ground up and neither should a novice user - unless your definition of novice differs from mine. To me a novice user is someone who has just got a Mac and has no unix, hacking, coding, or similar computer experience. Do we at least agree on the meaning of novice?

    Changing permissions is actually easier with the GUI, unfortunately it does not always work! Selecting a folder, pressing apple-I, clicking a triangle, then selecting an item from a list and clicking a button that applies it to all enclosed items is far easier than opening the terminal, knowing about deprecated properties of chmod, chown and chgrp, knowing the proper syntax of - and --, understanding hfs+ and it's now unix-derived history, and remembering which flavor uses a capital R vs lower case r. By all aspects, the GUI seems far more efficient and makes the CLI seem as if used by rather stupid and hard headed admins who make the user's life difficult thus forcing almost every user to become an admin if they want to do something as simple an bening as move a folder from one computer to another without losing their folder icons and background image.

    If you try and make the GUI accommodate all
    the functionality of the CLI then you end up with a
    very cluttered and confusing interface.


    You've tried and that's what you think? Because as I've explained just now the file permissions and ownership change is implemented much better in the GUI than the CLI. I did mention it doesn't work all the time, and when it doesn't, if the user doesn't know what I explained then they'd have to change permissions one item at a time.

    That requiers way more patience than you seem to have.


    As I have asked already and as you seem to have

    ignored, try to change
    more than just simple administrative non-sense

    things like permissions.
    Change the backgrounds of most of your folders,

    change their icons. For
    me, there is no .DS_Store! As a user I really don't

    want to know about
    permissions and ownerships and groups - it's not

    something someone
    writing music, or drawing, or surfing the web needs

    to know - is it? What do
    ownership and permissions have to do with sending

    and receiving email or
    chatting online? Or sending a picture to a family

    member? Is that truly good
    interface design? Should that be part of the user

    experience? Do I need to
    waste my time further writing what I already wrote

    and you simply did not
    read?


    I agree, ownership and permissions have nothing to do
    with any of that. However i was using them for a
    specific purpose. I was using them to achieve read
    only customizations, if you think that is a feature
    all users should have access to and should be
    included in the GUI then that is your opinion...
    however you can't just spin that around and attach it
    to Surfing, Email, Chat etc. because as you said: "As
    a user I really don't want to know about permissions
    and ownerships" ... and you don't have to know about
    it for any of those things.


    I am not sure why read-only permission customizations are used for since the Public folder allows anyone else to access whatever files are there.

    And then a folder of all other users' Public folders is on a system, and each user customizes the icon of their public folder with their face and it's very easy to tell whose stuff is where. "Hey, grab my work from my pub". You know who it is based on what it looks like, or sounds like, or reads likes, however it is rendered to the user - feels like? But this is way off topic and far too advanced for this post.

    As for all the backgrounds and icons... i have tried
    them and they CAN all be done via the GUI. You are
    only ending up in the terminal becasue you want to
    find out how it works so you can make it portable...
    as i said it's not an intended feature so you can't
    complain.


    How the **** do you know why I am ending up in the Terminal? Did you hack my system, too? Should I report you? Or maybe you're pressuming again - I'll pressume that you are presumptive and show you the reason I ended up in the Terminal...

    Can you explain how a folder that contains only 11 empty folders takes up over half a meg of space in Mac OS X (there are no hidden files!)?

    [mac7:~/Desktop] user1% du -hk The\ Earth\ Solar\ System/
    56K The Earth Solar System//Earth
    56K The Earth Solar System//ES Giant
    72K The Earth Solar System//Jupiter
    64K The Earth Solar System//Mars
    68K The Earth Solar System//Mercury
    68K The Earth Solar System//Neptune
    48K The Earth Solar System//Pluto
    64K The Earth Solar System//Saturn
    28K The Earth Solar System//Sol
    56K The Earth Solar System//Uranus
    60K The Earth Solar System//Venus
    640K The Earth Solar System/
    [mac7:~/Desktop] user1% ls -aRl The\ Earth\ Solar\ System/ | grep -v ' [0-9][0-9]\:[0-9][0-9] \.$' | grep -v ' [0-9][0-9]\:[0-9][0-9] \.\.$'
    total 0
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:18 ES Giant
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:16 Earth
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:15 Jupiter
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:14 Mars
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:14 Mercury
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:17 Neptune
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:17 Pluto
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:16 Saturn
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:19 Sol
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:15 Uranus
    drwxr-xr-x 3 user1 group1 102 18 Mar 21:15 Venus

    The Earth Solar System//ES Giant:
    total 112
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:18 Icon

    The Earth Solar System//Earth:
    total 112
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:16 Icon

    The Earth Solar System//Jupiter:
    total 144
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:15 Icon

    The Earth Solar System//Mars:
    total 128
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:14 Icon

    The Earth Solar System//Mercury:
    total 136
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:14 Icon

    The Earth Solar System//Neptune:
    total 136
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:17 Icon

    The Earth Solar System//Pluto:
    total 96
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:17 Icon

    The Earth Solar System//Saturn:
    total 128
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:16 Icon

    The Earth Solar System//Sol:
    total 56
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:19 Icon

    The Earth Solar System//Uranus:
    total 112
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:15 Icon

    The Earth Solar System//Venus:
    total 120
    -rw-r--r-- 1 user1 group1 0 18 Mar 21:15 Icon
    [mac7:~/Desktop] user1%


    Just one question of a course I'm taking and I'm finding out that the vast majority of people who use the Internet don't know how to answer this stuff!

    I'm sorry to hear OS X cannot fulfill your excessive
    portable customization needs...


    This seems like a sarcasm directed to be an insult of some sort, either that or you are an Apple empoyee honesty apologizing - unfortunately I simply cannot tell over the Internet which it is. I'll presume the latter and wait for Leopard!

    But you can't expect a tin of beans to grow you a
    bean stalk unless it says so on the packaging.


    Isn't it the other way around? You can't expect freedom unless the police and military are absent?

    I have nothing more to say


    Maybe you can do the exercise I asked you to do, then you might have more to say, and not to me either!