Page 1 of 1

Handling user changes

Posted: 27 Nov 2016, 16:47
by brokenman
If you could design a system for users to save changes, what would the system include or consider?


For example:
- If a file (called .changes) is found within the first three levels of each partition root directory, it should be considered to be saved as persistent.
- A config file with paths of folders to be saved should be parsed.
- Users should never have to think about cheat codes or editing files.
- A users home folder should always be considered as persistent.

Re: Handling user changes

Posted: 27 Nov 2016, 18:36
by FURRY_NOVA
I was thinking maybe some kinda GUI window that allows users to specify what to keep and not in their changes dat or file system.

Maybe something like this example:

Code: Select all

[ ] Save everything?

[/] Save guest account files?
- [/] Keep account customizations?
- [/] Keep app data?
- - [ ] Everything
- - [ ] Firefox
- - [/] Opera
- [ ] Keep downloads?
[ ] Save root account files?
- [ ] Keep account customizations?
- [ ] Keep app data?
- - [ ] Everything
- - [ ] Firefox
- - [ ] Opera
- [ ] Keep downloads?

[ ] Keep tmp files?

[/] Custom Path [/some_folder/]
The [ ] and [/] or check boxes to help image the GUI window. Maybe add a option to instantly store everything in a container. Giving users control, could add method to add custom paths like last part.

I can't imagine removal of cheat codes unless there a way to keep it user friendly. Maybe a help menu that allows users to read cheat codes there are during boot?

Re: Handling user changes

Posted: 27 Nov 2016, 20:05
by donald
It is good as it is now.
otherwise:
Users often do not even know how to change the Wallpaper, so
Beginners should never have to think about cheat codes or editing files.

Yep, i'm a grumpy old fart and it's cold and dark outside... :wink:

Re: Handling user changes

Posted: 27 Nov 2016, 20:19
by tome
I prefer a config file with paths of folders and files(otherwise changes-exit.conf wouldn't be saved).
Such dream-idea :) - advanced gui for editing changes-exit.conf file: expandable root tree with checkboxes ABCDE for paths (+some predefined settings):
A - changes will be saved in changes-$date.xzm, old changes-$date.xzm will be moved to Trash (gvfs-trash) while shutting down (only for little, config files) - easy recovery
B - changes will be copied to rootcopy (only for little, config files, overwritten files could be moved to Trash (gvfs-trash) before "over"writing
C - changes will be saved in changes.dat or changes directory
D - changes will be saved via magic changes (need paths)
E - changes will be saved via symlinks (available only for ~/Desktop, ~/Downloads, maybe ~/.cache/...). For example '/home/guest/Desktop' -> /mnt/(ntfs-or-fat-disk)/work/mystuff'/home/guest/Desktop'

Needed parameters in changes-exit.conf:
1. Where is rootcopy:
/.../...
2. Where to set and search target for symlinks:
/work/mystuff
3. If none key is pressed while exiting:
choose "save" or "discard" changes
4. Wait time for decision of press key

Right click menu in File manager: Enable saving changes in this directory (or copy to rootcopy)

Some paths users want to save (changes-exit.conf) for xfce4, l are:

Code: Select all

# Folders listed in this config file will be saved during reboot and shutdown when 'changes=EXIT:' cheatcode is used.
# Folders starting with '!' are omitted. This is useful if you want to save whole folder except for particular subfolder(s).
# An example is inclued in default config below: Porteus will save whole /var folder except for /var/run and /var/tmp subfolders.
# Other example: "!/home/guest/.mozilla/firefox/c3pp43bg.default/Cache" will skip saving of Firefox caches from guest account.
# Thanks to Rava for suggesting implementation of '!' exceptions.
# Folders and files starting with '+' are copied to $COPYDEST while running dump-settings. This is useful if you want to save some files to rootcopy.

COPYDEST=/mnt/data/rootcopies/rootcopy2

# System folders:
/etc/NetworkManager/system-connections
/etc/rc.d
/etc/xdg
/opt
/opt/-mnt
/save
/usr/bin
/usr/lib64
/usr/share/applications
/usr/share/mime
!/var/run
!/var/tmp

# Users:
/home/guest/.cache/fontconfig
/home/guest/.cache/xfce4
#/home/guest/.config/autostart
/home/guest/.config/conky
/home/guest/.config/copy-fast
/home/guest/.config/dconf
/home/guest/.config/doublecmd
/home/guest/.config/geany
/home/guest/.config/leafpad
/home/guest/.config/libfm
/home/guest/.config/lxpanel
/home/guest/.config/mc
#/home/guest/.config/Mousepad
/home/guest/.config/pcmanfm
/home/guest/.config/spacefm
#/home/guest/.config/Thunar
/home/guest/.config/transmission
/home/guest/.config/uGet
/home/guest/.config/xfce4
/home/guest/.gitconfig
/home/guest/.mozilla
/home/guest/.pfilesearch
/root/.config/copy-fast
/root/.config/dconf
/root/.config/leafpad
/root/.config/mc
/root/.config/spacefm
/root/.config/xfce4
#!/root/.config/xfce4/xfconf

# Files:
/etc/changes-exit.conf
/home/guest/.bash_history
/home/guest/.gtk-bookmarks
/home/guest/.config/geany/geany.conf
/home/guest/.wine/.update-timestamp
/root/.bash_history
/root/.gtk-bookmarks

# Symlinks (last in paths) to large, important or frequently changed folders
->/home/guest/.cache/google-chrome/Default
->/home/guest/.cache/mozilla/firefox/firefox-profile-0
->/home/guest/.cache/opera
->/home/guest/.cache/opera-beta
->/home/guest/.cache/opera-developer
->/home/guest/.config/opera
->/home/guest/.config/opera-12-profile
->/home/guest/.config/opera-developer
->/home/guest/.git
->/home/guest/.moonchild productions
->/home/guest/.mozilla/firefox/firefox-3.6-profile
->/home/guest/.mozilla/firefox/firefox-profile-0
->/home/guest/.mozilla/firefox/firefox-profile-1
->/home/guest/.openoffice
->/home/guest/.wine-pipelight
->/home/guest/.dropbox
->/home/guest/Desktop

# Directories that contain symlinks mixed with files or folders
/home/guest/.appdata/

# Symlinks inside paths, if used nothing is saved (it crashes script) during reboot/shutdown:
# share, xfce4 are for example symlinks
#!/home/guest/.config/xfce4/xfconf
#/home/guest/.local/share/applications
#/home/guest/.local/share/notes
#/home/guest/.local/share/parcellite

# Test:
/home/guest/.config/test/test.conf
#->/home/guest/.cache/moonchild productions


Re: Handling user changes

Posted: 27 Nov 2016, 21:33
by Ed_P
brokenman wrote:If you could design a system for users to save changes, what would the system include or consider?
Personally I kinda like the current system. But it doesn't carry over to upgrades well. Understandably so.

The main change that I carry between systems are my browser bookmarks/favorites. And I try to carry most of my /home/guest/ files/scripts even though many require tweaking to match the new system's environment. Saving things to a file system outside the Porteus system allows me to import/copy them into a new Porteus system.
donald wrote:Yep, i'm a grumpy old fart and it's cold and dark outside... :wink:
:lol: