RecBox ToolKit (home studio)

Ladies, gentlemen, I am happy to announce that I finally finished :grin:

Previously I was working on Manjaro spin with custom tools, but I gave up because
will be better for tools like RecBox Workflow not to be limited to one desktop environment,
plus there is no point to work on separate spin when you can change system from daily machine
into studio box with few clicks. All stuff use Zenity widgets for GUI, so it’s a bit annoying
and you can forget about UX, however I already start working on GTK versions.

The below list is a bit tiny, but I needed to restrict myself to finally deliver.
I have few ideas like side panel like Raven from Budgie DE but with stuff related to recording.
This is far future, so now I just start from simple thing to finally drift into Workflow
and then work on other tools.

Tools list:

Workflow:

Workflow is a utility to manage system settings for Daily and Studio usage, which means there is no need to dual boot or create a new user to have separated system configuration for daily usage and recording or mix and mastering sessions.

preview

img

Repository: RecBox Workflow


Studio Backup:

RecBox Studio Backup is a simple tool made for backing up recording session and DAW config files with rsync help.

preview

img

Repository: RecBox Studio Backup


Dark Mode:

RecBox Dark Mode is a simple theme switcher for XFCE desktop environment.

preview

img

Repository: RecBox Dark Mode


Night Light:

RecBox Night Light is a graphical front end for Redshift to change color temperature, brightness and gamma in One-shot mode.

preview

img

Repository: RecBox Night Light


Xfce Shortcuts:

Shortcuts list for XFCE desktop environment.

preview

img

Repository: RecBox Xfce Shortcuts

4 Likes

Hi guys and gals, I thought it’s worth to share my progress from GTK’s land of unicorns :smile:

At the moment, App creates config file, save user choice to config, and show path to folder where backup will be created, path to folder with records or DAW config file.

gtk-rsb.gif

Updating labels with paths doesn’t work now (path is loaded only when App starts), but I’ll manage it now and add progress bar, which will replace label in backup/sync process :slight_smile:

Have a good day/night. Regards :slight_smile:

3 Likes

Hi guys and gals.

I’ve made some nice progress, so I thought I write a few words about it. I guess that most work is done at the moment, and the toughest thing will be to make progress bar working (at the moment, it’s only show up). To the point, I learn how to make similar one like in Timeshift progress bar will be only pulsating. Will see how it goes, for now it’s learning everything at once, so I’m pretty disoriented from time to time.

I’m not sure if it will be useful, but I’m thinking of adding a Help tab with basic info like which flags are set in app for rsync.

Have a good day/night. Regards :slight_smile:

3 Likes

Hi boys and girls :slight_smile:

I feel like it took at least half of the year, but it’s only a month.

In that time I was mainly working or rather learning of asynchronous GUI update (window don’t freeze when something work in background) and a bit C in general. In the meantime, I’ve dropped the progress bar in favor of spinner because it’s too complicated at the moment and I want to push forward. I’ll be back to the original concept when I have better understanding of what I’m actually doing :smile:

Anyway, at the moment app have working rsync and show warnings when directories are empty or doesn’t exist, so user don’t remove records for whatever reason.

Preview

https://i.imgur.com/qBB9vDM.gif

Next in queue will be canceling backup or sync process and some cosmetic stuff. I’m also thinking of adding a dialog window to sync in case of missclick.

Looks like its about it for now. Till the next time. Regards :slight_smile:

1 Like

Hello there!

The update is mostly (from user perspective) cosmetic. I’ve replaced GtkNotebook with GtkStackSidebar and GtkStack, added icons to messages, so it’s more pleasant for an eye and faster to catch changes. Also, changing tabs have animations. Using GtkNotebook was a bit confusing sometimes, because Records and DAW tabs content is almost the same and I caught myself as I don’t know which tab I’ve selected.

Boring part, code itself is improved a bit, and preventing rsync from starting work, work as it should. Before, I forgot that if a directory with backup will be empty, rsync will erase content from main directory while Sync and things like that. I’ll test everything a hundred times before publishing, so no worries, I want my records to be safe as well.

When it goes to canceling rsync process, I’ve tackled the issue from the wrong side, so it’s not ready yet or rather doesn’t exist. There is also “window closing” part which needs to be addressed, but I think when I manage cancel buttons it will be easy-peasy. At least, I hope :smile:

Preview here:

Have a good day/night. Regards :slightly_smiling_face:

1 Like

Not much this time, but pretty significant. I’m also thinking of adding some indication if syncing was canceled, so the user wouldn’t need to remember about it when backing up next time.

What’s new:

  • window is automatically locked when rsync is syncing files
  • syncing file process can be canceled

Video preview:

Playlist here.


Have a good day/night. Regards :slightly_smiling_face:

2 Likes

Hi folks.

I’ve made some progress, and it’s time to update :slightly_smiling_face:

What I’ve prepared for today is:

  • GtkFrames are replaced with borders, so it looks like regular GTK App
  • added border on top
  • window content resize with window (but I forgot to record)
  • Sync button name is replaced with Restore
  • when Backup/Restore process is cancelled, app will remember it and show info label with Resume button after start
  • the info label will be shown and replace Backup and Restore buttons when rsync process is canceled
  • when one or more options in config file will be removed by accident, they will be recreated on start, this will be helpful for new options for future like remembering window size

From things under the hood, I (probably) understood something about using GKeyFile while shortening code, but I don’t say anything because I didn’t test it yet :grin:

Have a good day/night. Regards :slightly_smiling_face:

1 Like