Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Autobackup-SMP (Read 702 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Autobackup-SMP

Another beta script to test.
Essentially it's a 1:1 clone of foo_jesus, but fully working on JS. Uses the same default config, except it now tries a backup every 30 min (instead of a day) and stores 8 backups.

It also adds:
      -  Global switch to enable/disable.
      -  Asynchronous processing (in my case foo_jesus always blocked the UI during seconds...).
      -  Output Path is customizable (not forced to 'Autobackup' folder).
      -  Files and folders to include are easier to edit and add. Works with masks AND maintains entire folder structure.
Spoiler (click to show/hide)
      -  File name is fully configurable with the output path + date replacers (using RegEx).
      -  Tooltip shows the entries to backup (which can be named differently to their path like.. 'my files').
      -  Menu allows to force a backup or open the backup folder
      -  Has proper settings for newer foobar versions for playlists, statistics, etc. Also includes by default some config files from SMP/JSP scripts.

TODO:
Spoiler (click to show/hide)

To use: Download the repository and install it following the wiki (it's the same than Playlist Tools, etc. and compatible with the toolbar)
https://github.com/regorxxx/Autobackup-SMP

Re: Autobackup-SMP

Reply #1
Just updated the repository with:
Quote
- Setting to force autobackup being active on every startup.
- Added headless mode to buttons, which allow to have buttons loaded but not visible on the toolbar.
          + They are now only shown when pressing the mouse middle button or using the toolbar menu.
          + Only specific buttons have this mode available.
          + To enable headless mode, right click at the toolbar and go to 'Other UI settings...'
- General code cleanup
- General reorganization of menus
https://github.com/regorxxx/Autobackup-SMP

Spoiler (click to show/hide)

Re: Autobackup-SMP

Reply #2
First stable release:
https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/autobackup-smp/
Quote

    Saves configuration ("File\Save Configuration"):
        Whole configuration subfolder.
        Media library database (database.*).
        Playlists.
        Additional data managed by other components (for example current theme or playback statistics).
    After saving, a backup of the changed files is created, as a ZIP archive (using 7zip).
    Rules to periodically save and backup can be set:
        While playing (every X min, 0 = off).
        When playback stops (every X min, 0 = off).
        Always, since last autosave (every X min, 0 = off).
        On startup, after X minutes (backup only, 0 = off).
        Every X tracks (0 = off).
    Files and folders to backup can be set by name and mask (for example 'js_data\playlistManager_*').
    Output Zip archive path and name is configurable.
    Backups to keep can be set by number and/or total file size.
    Headless mode: tool button may be invisible but working on background.

Re: Autobackup-SMP

Reply #3
https://github.com/regorxxx/AutoBackup-SMP/releases/tag/v2.0.0
Quote
2.0.0 - 2024-02-28
Added

    Events: added setting to skip backups whenever free space on drive is below a threshold. Since old backups are sent to recycle bin, instead of deleting them, size usage may increase indefinitely if the recycle bin was not emptied by the user. This setting avoids this situation.On demand backups bypass this restriction.
    Events: added setting to create a backup after foobar2000 closes (or on script unloading). By default set to 20 seconds later.
    Configuration: added integrity checks to global user settings files, found at '[FOOBAR PROFILE FOLDER]\js_data\presets\global[...].json'. In particular queries are now check to ensure they are valid and will throw a popup at init otherwise. Other settings are check to ensure they contain valid values too.
    Configuration: expanded user configurable file at '[FOOBAR PROFILE FOLDER]\js_data\presets\global\globSettings.json' with a new setting to output to console profiling logs at script init. They work globally. Disabled by default.
    Toolbar: new settings for text (or icon) position: left, right (default), top and bottom. These settings mimic CUI options at the buttons bar.
    Toolbar: new settings for text scale (now independent of button and icon scale).
    Toolbar: new settings for icon scale (now independent of button and text scale).

Changed

    Backup is now done 2 seconds after foobar2000 configuration is saved.
    Buttons: changed filename for 'buttons_others_utils_autobackup.js' to 'buttons_utils_autobackup.js' Before updating, rename all instances of these names at '[foobar2000 profile]\js_data\buttons_XXX.json' with the new names. 'buttons_XXXXX.json' are all json button toolbar files.
    Helpers: updated helpers.
    Console: improved log file formatting on windows text editors which parse new lines only with CR+LF instead of LF.
    Code cleanup.

Removed
Fixed

    Events: configuration was not being forced to save before creating an automatic backup.
    Events: fixed temporary wrong setting of backups by number of tracks played after changing it (it was fixed by reloading the script).
    Toolbar: buttons' size not restored back to normal height after disabling 'Full size buttons' without reloading the panel.
    File formatting: error checking Regular Expressions on user input.
    UI: wrong parsing of png masks on unix systems (currently, it only affected the ListenBrainz icon when changing the font color).
    Minor fixes.