SynthstromAudible / DelugeFirmware

https://synthstromaudible.github.io/DelugeFirmware/
GNU General Public License v3.0
564 stars 94 forks source link

Next steps for DBT #70

Closed litui closed 12 months ago

litui commented 1 year ago

Now that DBT is in community there is a laundry list of stuff I want to add to it but I'll start with the following:

More to be added.

Playing around with Kconfiglib is on my to-do list here as well, but I'm not sure I have a specific goal in mind with it yet or idea of how it fits. Once I do, expect some checkboxes to be added.

Pie-in-the-sky / requires a lot of other things to be in place:

m-m-adams commented 1 year ago

Copying from the PR - on ARM Fedora 37 I get an error about missing libcrypt.so, but it builds successfully after installing libxcrypt-compat. This is arguably a distro issue but probably worth noting it as a requirement since this appears to affect Arch and WSL2 as well per this discussion in python-build-standalone: https://github.com/indygreg/python-build-standalone/issues/173

Otherwise I guess it will go away once everyone is running python 3.13

So confirmed working on Fedora 37 ARM!

litui commented 1 year ago

I'll add a bullet for that. I was thinking about the best way to approach testing for that and providing a notification if it's missing. Maybe something like:

if the OS is Linux, grep ldconfig -p and determine if libcrypt.so.1 is in place/what we're expecting. Could even maybe ldd the file if we need to dig deeper.

eg ldconfig -p | grep "libcrypt.so.1" output

libcrypt.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libcrypt.so.1
bfredl commented 1 year ago

This is arguably a distro issue but probably worth noting it as a requirement since this appears to affect Arch and WSL2 as well per this discussion in python-build-standalone: https://github.com/indygreg/python-build-standalone/issues/173

A possible solution could be to use the system's python3.11 executable if it is available, and set up a venv to still install the packages into an isolated environment.

litui commented 1 year ago

Possible, not my preference though. Venvs are useful, but that's a whole other pile of logic and additional layers of path mangling magic I'd want to avoid for simplicity's sake. In one of the earlier iterations of DBT I tried bundling poetry wheels and using the system python, and it was messier than I'd like.

litui commented 1 year ago

Not done with this issue yet!