Hey everyone, especially those of you who use the Community OBS!
I have spent the last few days on a new tool to potentially help with interacting with the OBS:
OBS Master, an OBS GUI and osc frontend
OBS Master is basically a wrapper around the osc
utility with some additional functionality.
It is currently on very very Alpha/PoC state, and announced here to request feedback about it.
Most importantly I would be interested in your “use cases”, or workflow with OBS, and what you would like to have in a GUI app like OBS Master, that would improve your workflow compared to using osc
or the OBS web page.
NOTE: if you do not have an OBS account, this tool will be of very little use. Also, if you do, you will have to have osc
installed on your device, and configured login.
Supported Features:
- Loading package and project information from a local obs working directory
- Viewing, editing, updating Project and Package, PrjConf Meta information
- Viewing Build Results and ongoing build processes (worker/repository status)
- Triggering rebuilds (if a
_service
file is in use) - Viewing Build Logs
- Viewing Build result (package) information
- Downloading binary packages
- Adding OBS repos to the local system
- Checking out a project from OBS
- Checking out a package from OBS
- Creating a new project remotely
- Creating a new package remotely
- Creating a new package locally
- DBus-interface for remote controlling some functions (setting local work dir)
Planned Features (no promises):
- Interacting with local and remote source files (update, check-in, …) #27
- Creating, editing
_foo
files (like_service
,_multibuild
etc) #28 - Branching, Linking projects and packages #14
- Supporting the Request/Submission system #13
- Caching of remote data to have less trips to the API
- Online-only support MS, #17
- Offline-only support MS
- Chum specialties: compare chum and chm:testing packages, report differences #30
- Chum specialties: .spec metadata editor #29
Issues:
- very steam-of-consciousness code base (QML)
- probably not very intuitive GUI, ugliness
- slow and inefficient: the internal usage of Python and calling the
osc
utility - some features unreliable, very little edge case/error handling
Hacking:
Pull requests of any kind are always welcome.
I’m sure there are many areas of improvement, but one ugly design flaw right now is how the app used its python interface, and the osc
utility. Because Python is basically only used to do os.subprocess
, calling osc
, and returning the results.
Now, this works, and isn’t really an issue - but osc
also comes as a Python module, so that should be used natively instead of the way it is done now.
Progress on this issue can be managed at Issue 12