Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ns-3: delete #100770

Closed
wants to merge 2 commits into from
Closed

ns-3: delete #100770

wants to merge 2 commits into from

Conversation

rgrunbla
Copy link
Contributor

Motivation for this change

The current ns-3 version in NixOS is the 3.30 version. The current upstream version is the 3.32 version. Numerous bugfixes have been provided in those two versions, which makes me think anyone /actually/ using ns-3 would have switch to those new versions, or at least to the 3.31 version. The fact the .nix has not been updated is probably the sign that no one is using this package, and providing it is probably doing users a disservice, as no one actually tries to maintain it and the old version should probably not be used for anything.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@teto
Copy link
Member

teto commented Oct 17, 2020

Not sure why providing a (slightly outdated) package is a disservice. Ubuntu 20.04 provides the same version https://packages.ubuntu.com/focal/ns3 and last commit is ~1 year old.
The package is non trivial, non broken and it's not like having an older version is a security hazard either.
I pushed this package because I am the https://github.com/direct-code-execution/ns-3-dce maintainer and I thought ns-3 would have a lot to gain using nix since their custom package management is broken, with many dependencies. I never had the time to properly disseminate the nix knowledge to the ns3 community sadly and the odds of me doing so are decreasing.
I think we could move this to an ns-3 flake when flakes get available ?

@rgrunbla
Copy link
Contributor Author

Hi,

I see it as a disservice because using an old ns-3 version when a new one is out means accepting simulation bugs which lead to wrong or biased simulation results. One could argue every new version also introduce bugs, but, in my book (and I might be wrong), there is not a single advantage to keep using an old ns-3 version.

Indeed, the ns-3 build system, which heavily relies on waf, seems complex and could be seen as broken. But to me, it seems nobody is /actually/ supporting this package and using it at the same time. Concerning ns-3-dce, I was told it was not really maintained anymore ( https://gitlab.com/nsnam/ns-3-dev/-/issues/91 ) so I didn't expect it to be supported anyway.

But I get your point: if no one works on this package, then its presence is not really diluting the workforce and its presence is not really a problem.

@teto
Copy link
Member

teto commented Oct 18, 2020

If I update the package to ns3.32 does that address your concern ? It should be just a matter of changing version+hash (same aomount of work than removing it :) ).
I've packaged DCE for nix but not upstreamed it yet.
One problem I have with DCE is that I wanted to have it compile on nix with the kernel associated with it since the main interest of DCE is to run determinisitc experimentation with a linux kernel. But this is not straightforward and also DCE only supports older linux (up to 4.4 IIRC). The other maintainer (Hajime Tazaki) is currently working towards upstreaming the Linux Kernel Library in linux, and I expect DCE to be "revived" once that's done. But as often with this kind of project (academic/teams of ~1person), it takes a long time :'(

@rgrunbla
Copy link
Contributor Author

Well, if you can update it, why not (my main point is: do you think you have time to keep it up to date in the future ?).
But since a few versions, ns-3 uses waf and python3 specific features in its wscript files, so, I guess you'll have to work around #69305 … Good luck for DCE, I really hope you'll be able to get where you want to ! (and I totally get the comment about the academic side).

In anyway, thanks,

@eyJhb eyJhb mentioned this pull request Oct 28, 2020
10 tasks
@teto
Copy link
Member

teto commented Oct 28, 2020

it got updated in hte linked PR so closing.

@teto teto closed this Oct 28, 2020
@SuperSandro2000
Copy link
Member

Nixpkgs master is the most up to date package source available according to repology. I don't think it adds anything if we remove slightly outdated packages which are almost trivial to update. If such a case rises again feel free to ping me and I maintain the package.

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

Successfully merging this pull request may close these issues.

None yet

4 participants