Skip to content

Conversation

@gonsolo
Copy link
Contributor

@gonsolo gonsolo commented Dec 17, 2025

ASIC implementation flow infrastructure, successor to OpenLane
https://github.com/librelane/librelane

  • Built on platform:
    • x86_64-linux
  • Tested basic functionality of all binary files, usually in ./result/bin/.

@gonsolo gonsolo force-pushed the librelane branch 6 times, most recently from b986f63 to 8e9fc39 Compare December 17, 2025 17:01
Copy link
Member

@Dvd-Znf Dvd-Znf left a comment

Choose a reason for hiding this comment

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

i think you accidentally included commits other than librelane: init at 3.0.0.dev45 by maybe branching from anothers PR branch instead of clean master

you can try using git rebase -i to remove the other commits

@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 6.topic: python Python is a high-level, general-purpose programming language. labels Dec 17, 2025
@gonsolo gonsolo marked this pull request as draft December 17, 2025 19:06
@gonsolo
Copy link
Contributor Author

gonsolo commented Dec 17, 2025

i think you accidentally included commits other than librelane: init at 3.0.0.dev45 by maybe branching from anothers PR branch instead of clean master

All the commits are dependencies of librelane. I rebased onto them to be able to nix build librelane before all of them are upstream.

I converted this PR to a draft for now.

@donn
Copy link
Member

donn commented Dec 20, 2025

Just a note: OpenROAD must be built with Python packages and the ability to load libraries and be available to LibreLane for LibreLane to actually fully work in Nix (librelane --smoke-test must pass.) The Python package standalone isn't useful for much unless you have Docker installed or you have all of the requisite utilities in the Nix environment.

The overlays we use to get LibreLane working entirely in Nix are not up to nixpkgs standards and they would take a monumental effort to get them there. That's why I haven't bothered myself. https://github.com/librelane/librelane/blob/c68e32b888bb5f42fec75fa0d8bcc7fb8c994ab6/default.nix

@nixpkgs-ci nixpkgs-ci bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Dec 21, 2025
@gonsolo
Copy link
Contributor Author

gonsolo commented Dec 29, 2025

librelane --smoke-test must pass.

That's very good to know!

The Python package standalone isn't useful for much unless you have Docker installed or you have all of the requisite utilities in the Nix environment.

Ok.

The overlays we use to get LibreLane working entirely in Nix are not up to nixpkgs standards and they would take a monumental effort to get them there. That's why I haven't bothered myself. https://github.com/librelane/librelane/blob/c68e32b888bb5f42fec75fa0d8bcc7fb8c994ab6/default.nix

Ok, I'll have a look.

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 3, 2026

(librelane --smoke-test must pass.)

It does now.

The overlays we use to get LibreLane working entirely in Nix are not up to nixpkgs standards and they would take a monumental effort to get them there. That's why I haven't bothered myself. https://github.com/librelane/librelane/blob/c68e32b888bb5f42fec75fa0d8bcc7fb8c994ab6/default.nix

I didn't look very close at those.

@donn Can you take a look whether I forgot something? As mentioned above, the smoke test works for me now.

@donn
Copy link
Member

donn commented Jan 4, 2026

If --smoke-test passes I have no objections. Though I do wonder how it passes considering the OpenROAD and Yosys Python interpreters shouldn't have access to the click library according to what I'm seeing here…? Attempting to import either library typically causes an immediate crash with this setup.

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 4, 2026

If --smoke-test passes I have no objections.

Cool, thanks.

Though I do wonder how it passes considering the OpenROAD and Yosys Python interpreters shouldn't have access to the click library according to what I'm seeing here…? Attempting to import either library typically causes an immediate crash with this setup.

I see click in Yosys's package.nix, and grepping through OpenROAD seems to wanting to install it, but I can find no use.

@donn
Copy link
Member

donn commented Jan 4, 2026

Mostly LGTM, need to sit down and test it now. Really busy so might take a while.

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 8, 2026

  1. librelane: All dependencies merged!

Merged:

  1. openroad
  2. yosys
  3. lemon-graph
  4. magic
  5. netgen-vlsi

FYI @donn, @mole99, @eljamm @imincik @GaetanLepage.

@nixpkgs-ci nixpkgs-ci bot removed 2.status: merge conflict This PR has merge conflicts with the target branch 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. labels Jan 10, 2026
@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 14, 2026

* Antenna
Passed ✅

* LVS
Passed ✅

* DRC
Passed ✅

...

[11:07:11] INFO     Smoke test passed.          

FYI @SuperSandro2000 @eljamm @donn @mole99 @GaetanLepage

@gonsolo gonsolo changed the title Librelane librelane: init at dev 2026-01-12 Jan 15, 2026
@gonsolo gonsolo self-assigned this Jan 15, 2026
@nixpkgs-ci nixpkgs-ci bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Jan 15, 2026
@gonsolo gonsolo force-pushed the librelane branch 2 times, most recently from 2b9ec30 to 2c326cb Compare January 16, 2026 09:55
@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 471712
Commit: 2c326cb69a706e97de0c9954bf1e2a1199fa5475


x86_64-linux

✅ 2 packages built:
  • librelane
  • librelane.dist

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

I applied your suggestions, @GaetanLepage, thanks for reviewing!
Is there anything left before being ready to merge?
(Smoke test still passes.)

@GaetanLepage
Copy link
Contributor

Maybe you already answered this, but wouldn't it work to fetch the 3.0.0.dev47 tag instead of this commit?

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

Maybe you already answered this, but wouldn't it work to fetch the 3.0.0.dev47 tag instead of this commit?

I would have to apply a second PR since that release:
librelane/librelane#843
Whatever you prefer.

I expect the newer PR 844 to be merged before a dev48, after which I would immediately update librelane in Nix, dropping the patch(es).

It can be done before or after merging, I'm just committed to get it merged. :)

@gonsolo gonsolo force-pushed the librelane branch 3 times, most recently from 7ef7155 to 45702f3 Compare January 16, 2026 15:49
@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

Maybe you already answered this, but wouldn't it work to fetch the 3.0.0.dev47 tag instead of this commit?

I would have to apply a second PR since that release: librelane/librelane#843 Whatever you prefer.

I expect the newer PR 844 to be merged before a dev48, after which I would immediately update librelane in Nix, dropping the patch(es).

It can be done before or after merging, I'm just committed to get it merged. :)

@GaetanLepage: The patch was added to the dev branch of librelane. I updated the revision and dropped the patch.
As I promised earlier: As soon as dev48 is out I will use the tag.

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 471712
Commit: 45702f3a4e702913e6091d90b7f5eeecff1a3aa7


x86_64-linux

✅ 2 packages built:
  • librelane
  • librelane.dist

@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

* Antenna
Passed ✅

* LVS
Passed ✅

* DRC
Passed ✅

[17:11:02] INFO     Saving views to '/tmp/tmpk7s_rdcilibrelane/smoke_test_design/runs/RUN_2026-01-16_17-09-39/final'…         state.py:209
[17:11:03] INFO     Flow complete.                                                                                       sequential.py:411
Classic - Stage 79 - Report Manufacturability ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 79/79 0:01:23
[17:11:03] WARNING  The following warnings were generated by the flow:                                                         flow.py:696
[17:11:03] WARNING  [Odb.CustomIOPlacement] Overriding minimum distance 0.1 with 0.42 for pins on side N to avoid overlap.     flow.py:698
[17:11:03] WARNING  [OpenROAD.RepairDesignPostGPL] [STA-1140]                                                                  flow.py:698
                    /home/gonsolo/.ciel/ciel/sky130/versions/8afc8346a57fe1ab7934ba5a6056ea8b43078e71/sky130A/libs.ref/sky130_            
                    fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib line 1, library sky130_fd_sc_hd__tt_025C_1v80 already                  
                    exists. (and 17 similar warnings)                                                                                     
[17:11:03] WARNING  [OpenROAD.DetailedRouting] [DRT-0349] LEF58_ENCLOSURE with no CUTCLASS is not supported. Skipping for      flow.py:698
                    layer mcon (and 9 similar warnings)                                                                                   
[17:11:03] WARNING  [Checker.WireLength] Threshold for Threshold-surpassing long wires is not set. The checker will be         flow.py:698
                    skipped.                                                                                                              
[17:11:03] WARNING  [OpenROAD.IRDropReport] 'VSRC_LOC_FILES' was not given a value, which may make the results of IR drop      flow.py:698
                    analysis inaccurate. If you are not integrating a top-level chip for manufacture, you may ignore this                 
                    warning, otherwise, see the documentation for 'VSRC_LOC_FILES'.                                                       
[17:11:03] INFO     Smoke test passed.                                                                                     __main__.py:292
gonsolo nixpkgs:g show HEAD
commit 45702f3a4e702913e6091d90b7f5eeecff1a3aa7 (HEAD -> librelane, origin/librelane)

@GaetanLepage
Copy link
Contributor

GaetanLepage commented Jan 16, 2026

The commit message and PR name should match the version:
librelane: init at 3.0.0.dev47-unstable-2026-01-12

@gonsolo gonsolo changed the title librelane: init at dev 2026-01-12 librelane: init at 3.0.0.dev47-unstable-2026-01-12 Jan 16, 2026
@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

The commit message and PR name should match the version: librelane: init at 3.0.0.dev47-unstable-2026-01-12

Done.

Co-authored-by: Mohamed Gaber <[email protected]>
Co-authored-by: Gaétan Lepage <[email protected]>
@gonsolo gonsolo changed the title librelane: init at 3.0.0.dev47-unstable-2026-01-12 librelane: init at 3.0.0.dev47-unstable-2026-01-16 Jan 16, 2026
@gonsolo
Copy link
Contributor Author

gonsolo commented Jan 16, 2026

The commit message and PR name should match the version: librelane: init at 3.0.0.dev47-unstable-2026-01-12

Done.

I changed to librelane: init at 3.0.0.dev47-unstable-2026-01-16, since the patch from today was added.

Copy link
Contributor

@GaetanLepage GaetanLepage left a comment

Choose a reason for hiding this comment

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

LGTM

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

Labels

10.rebuild-darwin: 0 This PR does not cause any packages 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. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants