⸻ Ban DHMO 🇦🇺 ⸻

  • 8 Posts
  • 73 Comments
Joined 1 year ago
cake
Cake day: June 13th, 2023

help-circle









  • I asked this a while ago which is how I discovered Beyond All Reason which has been my FOSS game of choice as of late.

    I’d also recommend Naev and Endless Sky (Both are based on the Escape Velocity Series, Naev is getting a 3D PBR renderer in the next release). Mindustry is good fun, actually purchased this one on steam to support the amazing developer. Extreme Tux Racer is a bit of fun and Super Tux Kart seems to get better with every update (did I mention it can run on the Nintendo Switch via homebrew!)

    Edit: I forgot about 0ad and Minetest which I used to play a bit of a while back







  • I’ve worked it out, thanks for the responses, maybe I didn’t word the question properly or something, but here’s what I did for anyone interested in the future:

    You only need to do this once for every machine you want to work on.

    Add the llvm freedesktop sdk extensions to get a clangd executable to your flatpak manifest:

    "sdk-extensions": [
            "org.freedesktop.Sdk.Extension.llvm18"
        ],
    

    Install these extensions:

    • Native Debug
    • Flatpak
    • Meson Build
    • clangd (optional)

    Run the Flatpak: Build command in the command palette (Ctrl+Shift+P) this might take a minute. Make sure you have the required sdks installed (see the manifest for details).

    There should now be two folders: .flatpak and _build. There should also be a script generated at .flatpak/meson.sh. Run:

    python gen-flatpak-scripts.py
    

    This will generate .flatpak/gdb.sh and .flatpak/clangd.sh. If you want to use the clangd vscode extension extension add this to .vscode/settings.json:

    "clangd.path": "./.flatpak/clangd.sh"
    

    Now run the clangd: Restart language server command in the command palette (Ctrl+Shift+P) and you should be good to go!

    gen-flatpak-scripts.py:

    # Simple script to generate scripts to make life easy when using flatpak with vscode
    
    import subprocess;
    
    def gen_script(outfile, exec):
        with open(".flatpak/meson.sh", "rt") as fin:
            with open(outfile, "wt") as fout:
                for line in fin:
                    fout.write(line.replace("/usr/bin/meson", exec))
        subprocess.run(["chmod", "+x", outfile])
    
    # GDB for debugging
    gen_script(".flatpak/gdb.sh", "/usr/bin/gdb")
    # clangd for suggestions
    gen_script(".flatpak/clangd.sh", "/usr/lib/sdk/llvm18/bin/clangd")