How to find needed librarys for closed source bin applications

Tell me this isn’t happening :face_with_peeking_eye:
That I didn’t see that again…omg… and it works…

And the end. It is save to delete. But it is a good idea?

And secondly. In my office dokument :laughing: i have copied:

if later you want to change stuff in your derivation, instead of doing a commit + squash, just commit with:
$ git commit -a --amend --no-edit
and it will modify the last commit directly (then, force push)
$ git push --force myfork HEAD

after changing the ver from 10.21 to 10.22 and changed some hashes for example.

Yeah, you can delete the branch now that it is merged.

OK, that is done. I have left my fork btw.

To update i would go to my local copy and update with

git pull

Modify the derivation to the next release and…

git checkout -b update_stereotool

git commit -am “stereotool: init at 10.22”
git push myfork HEAD --force

Or is it completly wrong and as a maintainer i shouldn’t ask such questions… :laughing:

First, make sure to go first to master just in case like git checkout master (not sure what git pull does otherwise). Then, if origin points to NixOs/nixpkgs (which should be the case if you followed my above tutorial), then:

$ git pull

should indeed get the latest branch if I’m not wrong, but always double check with git log and/or git status that you are pointing to the latest version. Then, yes, create a new branch like

$ git checkout -b update_stereotool_10_22 master

(maybe before doing any change, not sure what happens otherwise). The commit is nearly good, it should be different for updates:

$ git commit -am "stereotool: 10.21 -> 10.22"
$ git push myfork HEAD --force

Ah, can see the stereotool package in “unstable”. That’s in unstable, because i’m using unstable? Or will switch over to stable after some days or weeks?

Unstable is just the “rolling” version of nixpkgs, with the very latest version. Regularly (every 6 months), unstable is forked to create a stable branch like 23.05 (before, we make sure that a maximum number of packages build correctly), after the point of fork, the stable release barely changes, except to add some bug fixes or security updates.

Very nice.

Installed the new “Stereotool” package and it worked like a charme…
The next challenge could be the radio production system Rivendell. Challenge because it needs as I already told a running mariadb, NFS server and or client, qt5,…
For any progress info u would open an new thread…

The first step would be to compile the program itself (seems to be doable, it might not even be difficult, the source are available). Then, if you say that to run it needs some databases etc, one must write a NixOs module. Databases are well supported in nixos modules, so I don’t see any obvious obstacle here. (also I guess NFS are not always needed right? so one must write the module in a way that adapts to different users possibilities)

Yes, that should be easy… More or less. The biggest difficulties i have on Debian to find out the needed libs and devs tools.

That software is a client-server solution. So only the server needs nfs and sql. There is a installer, where you can choose, what u want to install.
But it is possible to run nfs and sql server on the client without using it. Don’t know whats the best idea?
Only one “rivendell” package with the abillity to disable nfs and sql server? But they will be installed in any case… I know, the linux way is only install needed software.

Just try to write a basic derivation stdenv.mkDerivation pointing to the above source, and it well tell you when you try to compile it what is missing ^^ You can also start from the list given in to also populate the option dependencies appropriately in buildInputs. Note that you should not put anything into the buildPhase nor the installPhase: since it uses make, it should automatically get this right for you.

For now I would just build GitHub - ElvishArtisan/rivendell: A full-featured radio automation system targeted for use in professional broadcast and media environments that seems like the main tool to package and contains everything as far as I understand. Later, you can see how to configure a service to load the sql service etc appropriately, but for the sake of compilation this should not be required (at least if their tool is properly made). For instance, never mentions NFS or anything like that.

Back to stereotool… Time to update:

cd nixpkgs/
git checkout master
git pull
git checkout -b update_stereotool_10_30 master
micro pkgs/by-name/st/stereotool/package.nix 

No i can change to package.nix, change versionnumber and hashes…?
After that:

commit -am "stereotool: 10.21 -> 10.30"
git push myfork HEAD --force

Thats it so far? I’m on the edit package.nix position…

commited and pushed… lets see

Good work! I’ll try to review it now

Great, tnx…

:slight_smile: All checks have passed