Skip to content

tango-controls: init at 9.4.2#247936

Closed
pmiddend wants to merge 7 commits intoNixOS:masterfrom
pmiddend:tango-controls-init-9-4-2
Closed

tango-controls: init at 9.4.2#247936
pmiddend wants to merge 7 commits intoNixOS:masterfrom
pmiddend:tango-controls-init-9-4-2

Conversation

@pmiddend
Copy link
Contributor

@pmiddend pmiddend commented Aug 8, 2023

Description of changes

This adds the Tango controls system that is being widely used by different particle accelerator facilities across the globe. We're using it here at DESY to control our motors, detectors etc., and we're using Nix as well, so it makes sense to put it into nixpkgs.

This derivation is sort of battle-tested by now, but it's hard to give an example. You could build the derivation and try to run one of the Java-based UIs for Tango, Jive: result/bin/jive. This needs a working Tango server, however, and that's not trivial to set up because it needs a MariaDB database.

I have systemd services for that as well, but I wanted to contribute just the core.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@pmiddend pmiddend force-pushed the tango-controls-init-9-4-2 branch from e1635df to cf37452 Compare August 8, 2023 12:52
@pmiddend
Copy link
Contributor Author

pmiddend commented Aug 8, 2023

@ofborg build tango-controls

@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Aug 8, 2023
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/2517

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/2600

pname = "tango-controls";
version = "9.4.2";

src = fetchurl {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why don't you use fetchFromGitLab?

Copy link
Contributor Author

@pmiddend pmiddend Sep 1, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good question! The thing about tango-controls is that it's assembled from a lot of components, all in different repositories: starter, cpptango, tango-database, ...

The TangoSourceDistribution repository contains an ant build script to clone all these repositories and build them. It also contains a package (the tarball that I download here) that has all these repositories with the proper versions (!) pre-cloned, so building is much easier.

Edit: you know what, I'll make this PR into a draft again and try to package these components individually.

@pmiddend
Copy link
Contributor Author

pmiddend commented Sep 1, 2023

I'll squash once the review is over.

@pmiddend pmiddend marked this pull request as draft September 1, 2023 09:42
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. and removed 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Sep 13, 2023
@pmiddend
Copy link
Contributor Author

I have to give this up, since my day job doesn't involve tango anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

8.has: package (new) This PR adds a new package 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants