-
-
Notifications
You must be signed in to change notification settings - Fork 14.3k
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
Octave modules #108562
Octave modules #108562
Conversation
@KarlJoad please fix the merge conflict. |
c8f6c02
to
53b5cfd
Compare
Fixed! 😄 I forgot to rebase before opening the request, so I just had to do a massive rebase and sort a few things out. |
In the comment presented here: NixOS#108562 (comment) I was presented with a simpler way of formatting/building the meta attribute set. This commit is a squash of performing these changes on all packages that are currently defined. octave/control: simplify meta attr set octave/general: simplify meta attr set octave/io: simplify meta attr set octave/level-set: simplify meta attr set octave/linear-algebra: simplify meta attr set octave/ltfat: simplify meta attr set octave/signal: simplify meta attr set octave/symbolic: simplify meta attr set
This bug was introduced when KarlJoad performed a *very* large rebase after opening PR NixOS#108562. NixOS#108562 Essentially, while working on getting octave packages usable, octave was changed quite a bit, and many thing in passthru were changed. I was manipulating passthru to make some other things work, and I accidentally flipped some things around. This commit is meant to fix that.
Partly in response to: NixOS#108562 (comment)
d995aea
to
61d36df
Compare
This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch) Result of 2 packages marked as broken and skipped:
5 packages built:
|
This allows packages to declare other octave package dependencies in their respective definitions, and when added here, they are implicitly passed. In response to: NixOS#108562 (comment)
6152bf1
to
64bacd1
Compare
Thanks once more @KarlJoad for all the work. I took the liberty to shorten the commit messages even further to include only necessary information. I tested The next step is to document how Octave packages are handled in Nixpkgs... 📖. |
Hey, @doronbehar. Sorry for the ping, and i know this isn't exactly the right place to ask, but i've looked around and couldn't get Should I'd love to help document this if at all possible, too. |
Got it working using { pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
nativeBuildInputs = with pkgs; [
(octave.withPackages (ps: with ps; [symbolic]))
];
} |
@Misterio77, while technically possible open a shell with the octave package completely standalone, there is some trickery with text-based database files when using |
That makes a lot more sense! Thanks for helping a newbie understand it haha :)) |
Motivation for this change
This PR would fulfill the request in Issue #65398.
Much of the code mirrors that of lua and python, and not insignificant portions were built out of that.
This is a very messy branch, I know. I attempted a naive approach the first time, which really did not work in my favor.
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)No tests were present in nixos/tests for Octave, so there is nothing to do on that front.