muse / Captain

A dynamic lemonbar script written almost entirely in bash.
MIT License
49 stars 5 forks source link

Captain #12

Open muse opened 8 years ago

muse commented 8 years ago

I'm currently in the process of rewriting this in a different more suitable language, this will take some time since I have full-time study. The language of choice is Rust. I'll be reordering branches and keep the old bash version intact.

I'll be keeping a checklist with features I want to implement in the new captain, suggestions are welcome as always.

Configuration

Originally I went for a simplistic look and flow in captain, but after having implemented manual mode I was really unsatisfied with the flow. It didn't feel right and kind of stood out. I'm hoping to find a better more... natural way of giving this freedom without going through too much hassle. For the time being I'm leaving this as a separate section with only a single check box before we move towards the specifics.

I'm quite pleased with the current approach, having the scripts nicely ordered in a separate directory. I did feel however they're a little disconnected still, and currently also quite limited due to only allowing bash. I think it will be quite easy to allow scripts of any language to be used. Another thing I consider is having to specify whether to template the file or not in a header variable or something. This will be the least work honestly.

These are my biggest concerns and thought currently. I'll likely update this post from time to time as my progress evolves and my mind expands. Below are a few things I want to quickly bring to mind regarding the biggest changes to Captain.

Dependencies

It's quite obvious, but I'm covering it anyway. The dependencies will change, they won't be bash & python, but Rust and Cargo (Lemonbar and Git are still dependencies... duh). This should be quite easy to install on most distributions.

Rust being a fast developing language, the Debian repositories will likely lack the most recent versions

Locating

It was kind of wacky currently, having users move their stuff in the right location manually. I do believe Cargo offers a feature to automate this, otherwise good 'ol Make will have to do. Just nothing that it will be simplified.

Do let me know what you think/feel about this and current captain, what would you want implemented or rethought.