home.social

#scons — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #scons, aggregated by home.social.

fetched live
  1. Why not switch your crappy software from crappy #SCons build system to even more crappy #Bazel build system over a patch release, call it "fully backwards compatible", and then effectively leave all the distros stuck on old versions with half a dozen vulnerabilities?

    Yeah, just a random reminder that #MongoDB is total crap, and you shouldn't use it. Or expect people to package it for you.

    jira.mongodb.org/browse/SERVER

    #Gentoo

  2. I want a build system that:

    - is as powerful and flexible as
    - as readable and concise as
    - has a fricking progress bar+ETA
    - is :datalad: / :gitannex: agnostic (knows that files can be fetched from elsewhere
    - remembers how long building things takes
    - balances that to decide if rebuilding locally instead of fetching gigabytes via slow internet is favorable
    - integrates well with :nixos: for reproducibility

  3. It is beyond me why build systems like et al. all don't have a flag like `--pattern '*2022-*'` that will make only those files it knows how to make matching a given pattern.

    (using shell brace expansion and/or globbing is risky and doesn't work fully if not all the files exist yet)

  4. @cbleslie Yeah seems like you can set the store path globally, but that doesn't help and will cause everything to be rebuilt.

    I guess theoretically each derivation *could* have its own store defined, but guaranteeing those are available might be a problem.

    The way to go is probably what I currently do: pin the environment with nix, then use a build system like to build the files. But then you're in build-system land again with all those quirks.

  5. I finally finished my blog post on how to use C/C++ package managers with SCons and integrating third-party libraries into your projects. This can be useful for all Godot GDExtension users wanting to integrate a library in C++

    paddy-exe.github.io/posts/how-

    #godot #scons #cpp

  6. Insight of the week:

    To parallelize data processing :scons: , use separate scripts. scons runs Python-only builders as threads, which is amazing to keep the code simple and concise and even shared progress bars are possible, but the GIL (🤷) makes it super ineffective. Running in a multiprocessing.Process is unreliable and prone to freezing or is downright impossible when your data structures aren't pickleable.

    Separate scripts means a lot more boilerplate, but at least it works.

  7. I have to say, :scons: + :nixos: + :datalad: / :gitannex: is a very powerful combination for - or just data analysis in general! Reproducibility is as much a service you do for yourself as for others.

    · nix provides the identical software environment
    · DataLad / git-annex help you move input and output files between machines, see and track changes
    · scons lets you organize processing of all your files

    @datalad

  8. @linux_mclinuxface Isn't this just the equivalent of using a build system like for parallelisation?

  9. I have just updated and tagged GDExtensionTemplate for Godot 4.2!

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev #cpp

  10. @[email protected] The logs were targets, made from data and code sources. The process got stuck or whatever, I CTRL-C'd it, logs (targets) were removed.

    Make had never failed me - I used it extensively - but for this it is apparently the wrong tool. Although I think would have dole the same, I'm not sure.

  11. CW: software grumble

    Trying to compile an old Commodore PLUS4 emulator and #SCons is going on my "build systems I never wish to interact with" list, next to CMake, among others.
    Also, this unresolved #FLTK issue from 2009 (!!!) from is, well it's causing me some issues. fltk.org/str.php?L2180
    All other libraries this project uses are imported with pkg-config, except FLTK.
    Anyways, gonna rewrite the build script for #Meson. Seems easier than trying to debug SCons.

  12. Today's progress on #FreeBSD #Linuxulator "userland from source" project: We have build systems! 🥳

    Supported now (apart of plain #make): GNU #autotools (including #autoreconf), #cmake, #meson and #ninja!

    They're all supported with their original #ports "USES", by some #bmake trickery in my new "USES=linuxsrc", fixing up just the parts that are different when building from/for the Linuxulator (like adjusting dependencies and commands to use the #Linux-native versions).

    Ok, no #scons yet, didn't need it so far 🙈

  13. @birnim Sure, I could also directly use , but it's multi*threaded*, not multi*processed*, which has some problems when working with NetCDF4 files for example. Intermediate files can also be huge, so a RAMDISK is not ideal. Also, why introduce temporary files for stuff that really shouldn't be stored but are just variables in ?

  14. I am looking for a parallelized pipeline system in . Basically a build system lile but without the files as intermediary step, all in memory. So for example I'd like to read some data files, extract metadata from them, then save that metadata (with :gitannex: ). Along the way there might be other branches of logic that could need parallelization.

    Ideally with progress visualisation.

    Is there something like this in or do I have to roll my own?

  15. I have just updated and tagged GDExtensionTemplate for Godot 4.1!

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev #cpp

  16. I have just updated and tagged GDExtensionTemplate for Godot 4.0.3.

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev #cpp

  17. Welp, I tried to get #distcc working with #scons, but it never seemed to pick it up. I guess I'll have to try another day.

  18. I have just updated and tagged GDExtensionTemplate for Godot 4.0.2. Still keeping up with all the releases!

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    #cpp #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev

  19. Building a #sphinx theme, that uses #nodejs pinned down to a minor version, which is now required by #scons (and won't build using a system provided nodejs of a higher minor version, because having 4(!) separate nodejs major versions in the repos is not yet enough... #WTF 🤬 ).

    Ecosystems really get more insane by the minute.

    #questioninglifechoices #archlinux #packagerlife

  20. I keep forgetting the golden rule: provide the absolute minimum of information that's strictly relevant to the issue at hand. Otherwise, people are just going to cling to a tangential point that's entirely irrelevant to the problem. Sigh.

    That said, any help at explaining this would be welcome.

    github.com/SCons/scons/pull/43

  21. I have just updated and tagged GDExtensionTemplate for Godot 4 RC 1.

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    #cpp #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev

  22. I have updated and tagged GDExtensionTemplate for Godot 4 Beta 11.

    If you want to use an existing C++ library in #Godot or use #CMake instead of #Scons for your C++ extension, check it out!

    github.com/asmaloney/GDExtensi

    It takes care of all the setup/building/linking with godot-cpp and the GitHub CI so you can focus on your code right away.

    I've also added auto-generation of a version header file since the last update.

    #cpp #GodotEngine #Godot4 #GDExtension #extension #plugin #GameDev #IndieDev