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

fusesoc: init at 1.12.0 #215001

Merged
merged 6 commits into from
May 21, 2023
Merged

Conversation

GenericNerdyUsername
Copy link
Contributor

Description of changes

Add fusesoc (and dependencies)

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.05 Release Notes (or backporting 22.11 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
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

Relevant: #213222

@Alizter
Copy link
Contributor

Alizter commented Mar 26, 2023

Result of nixpkgs-review pr 215001 run on x86_64-linux 1

4 packages failed to build:
  • python310Packages.fusesoc
  • python310Packages.fusesoc.dist
  • python311Packages.fusesoc
  • python311Packages.fusesoc.dist
16 packages built:
  • python310Packages.ipyxact
  • python310Packages.ipyxact.dist
  • python310Packages.okonomiyaki
  • python310Packages.okonomiyaki.dist
  • python310Packages.simplesat
  • python310Packages.simplesat.dist
  • python310Packages.zipfile2
  • python310Packages.zipfile2.dist
  • python311Packages.ipyxact
  • python311Packages.ipyxact.dist
  • python311Packages.okonomiyaki
  • python311Packages.okonomiyaki.dist
  • python311Packages.simplesat
  • python311Packages.simplesat.dist
  • python311Packages.zipfile2
  • python311Packages.zipfile2.dist

@GenericNerdyUsername
Copy link
Contributor Author

Should be fixed now

@Alizter
Copy link
Contributor

Alizter commented Mar 26, 2023

Result of nixpkgs-review pr 215001 run on x86_64-linux 1

25 packages built:
  • python310Packages.edalize
  • python310Packages.edalize.dist
  • python310Packages.fusesoc
  • python310Packages.fusesoc.dist
  • python310Packages.ipyxact
  • python310Packages.ipyxact.dist
  • python310Packages.okonomiyaki
  • python310Packages.okonomiyaki.dist
  • python310Packages.simplesat
  • python310Packages.simplesat.dist
  • python310Packages.zipfile2
  • python310Packages.zipfile2.dist
  • python311Packages.edalize
  • python311Packages.edalize.dist
  • python311Packages.fusesoc
  • python311Packages.fusesoc.dist
  • python311Packages.ipyxact
  • python311Packages.ipyxact.dist
  • python311Packages.okonomiyaki
  • python311Packages.okonomiyaki.dist
  • python311Packages.simplesat
  • python311Packages.simplesat.dist
  • python311Packages.zipfile2
  • python311Packages.zipfile2.dist
  • silice

@@ -3725,6 +3725,8 @@ self: super: with self; {

fusepy = callPackage ../development/python-modules/fusepy { };

fusesoc = callPackage ../development/python-modules/fusesoc { };
Copy link
Contributor

Choose a reason for hiding this comment

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

As this is an end-user program, not a library, it might be preferably exported from pkgs/top-level/all-packages.nix

Copy link
Contributor Author

Choose a reason for hiding this comment

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

What about in pkgs/top-level/aliases.nix? That way people can use the python311 version if they need to for whatever reason.

Copy link
Member

Choose a reason for hiding this comment

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

A user of the application shouldn't care what version of the language the application is using. all-packages.nix is the right place for this.

Relevant manual section

Copy link
Contributor Author

Choose a reason for hiding this comment

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

im assuming i should remove it from here as well?

Copy link
Member

Choose a reason for hiding this comment

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

What about in pkgs/top-level/aliases.nix? That way people can use the python311 version if they need to for whatever reason.

New names should not be directly added to aliases

Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

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

You are missing pythonImportsCheck in lots of places.
For tests please use pytestCheckHook if possible.

@@ -3725,6 +3725,8 @@ self: super: with self; {

fusepy = callPackage ../development/python-modules/fusepy { };

fusesoc = callPackage ../development/python-modules/fusesoc { };
Copy link
Member

Choose a reason for hiding this comment

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

What about in pkgs/top-level/aliases.nix? That way people can use the python311 version if they need to for whatever reason.

New names should not be directly added to aliases

pkgs/development/python-modules/simplesat/default.nix Outdated Show resolved Hide resolved
pkgs/development/python-modules/simplesat/default.nix Outdated Show resolved Hide resolved
pkgs/development/python-modules/simplesat/default.nix Outdated Show resolved Hide resolved
pkgs/development/python-modules/simplesat/default.nix Outdated Show resolved Hide resolved
pkgs/development/python-modules/okonomiyaki/default.nix Outdated Show resolved Hide resolved
pkgs/development/python-modules/okonomiyaki/default.nix Outdated Show resolved Hide resolved
pname = "fusesoc";
version = "1.12.0";

propagatedBuildInputs = [ edalize pyparsing pyyaml simplesat ipyxact verilog verilator gnumake gcc ];
Copy link
Member

Choose a reason for hiding this comment

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

Why do we propagate make and gcc?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It needs them to be in the path at runtime

Copy link
Member

Choose a reason for hiding this comment

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

Then propagatedNativeBuildInputs should be used but can we instead patch the code or use a wrapper?

pkgs/top-level/all-packages.nix Outdated Show resolved Hide resolved
@GenericNerdyUsername
Copy link
Contributor Author

Should I update fusesoc now, or is that a job for a different pr?

@SuperSandro2000
Copy link
Member

Also please rebase

@GenericNerdyUsername
Copy link
Contributor Author

Turns out gcc isnt needed, and that the edalize update in between rebases broke the old version, so I updated fusesoc

propagatedBuildInputs = [ distro attrs jsonschema six zipfile2 ];

postPatch = ''
substituteInPlace /build/source/okonomiyaki/runtimes/tests/test_runtime.py \
Copy link
Member

Choose a reason for hiding this comment

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

substitute(): ERROR: file '/build/source/okonomiyaki/runtimes/tests/test_runtime.py' does not exist

Copy link
Member

Choose a reason for hiding this comment

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

This is still an erorr

Copy link
Contributor Author

@GenericNerdyUsername GenericNerdyUsername May 7, 2023

Choose a reason for hiding this comment

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

both nix build .#python310Packages.okonomiyaki .#python311Packages.okonomiyaki and nixpkgs-review rev 215001 cant reproduce this, what command are you running to build? Did nix cache a broken source tree perhaps?

Copy link
Member

Choose a reason for hiding this comment

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

This if from the darwin ofborg check below and I just noticed why this is broken.

Did nix cache a broken source tree perhaps?

It can't there is no cache for the CI checks.

we can't use an absolute path here

Suggested change
substituteInPlace /build/source/okonomiyaki/runtimes/tests/test_runtime.py \
substituteInPlace okonomiyaki/runtimes/tests/test_runtime.py \

@GenericNerdyUsername
Copy link
Contributor Author

done

@SuperSandro2000 SuperSandro2000 merged commit ddf8259 into NixOS:master May 21, 2023
@GenericNerdyUsername GenericNerdyUsername deleted the fusesoc branch May 23, 2023 11:12
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.

6 participants