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

bisq2: init @ 2.1.0 #318594

Closed
wants to merge 1 commit into from
Closed

bisq2: init @ 2.1.0 #318594

wants to merge 1 commit into from

Conversation

emmanuelrosa
Copy link
Contributor

@emmanuelrosa emmanuelrosa commented Jun 9, 2024

Description of changes

This PR adds Bisq 2, a decentralized bitcoin exchange that allows anyone to buy and sell bitcoin in exchange for national currencies or other cryptocurrencies.

Bisq 2 is the successor to what is now known as Bisq 1, however Bisq 2 hasn't reached feature parity with Bisq 1. Therefore, at this time, Bisq 2 doesn't replace Bisq 1, which is packaged in Nixpkgs as bisq-desktop.

Verification

It is customary to verify the downloaded Bisq application by importing upstream's GPG key and verifying the signature of the downloaded package.

This Nix package includes build-time verification of the downloaded Debian package. This is to give users of this package a greater level of confirmation --compared to verification by the maintainer, (me)-- that the package has been signed by upstream. In short, if this package builds, then it's also verified.

Build-time verification is not a substitute for manually verifying the upstream package. It's a compromise.

QR code scanning

Starting with Bisq2.1, there's a bundled "webcam app" which is used for webcam access to scan QR codes. This app does not work on NixOS because it relies on a lot of shared libraries (76 of them) which need to be patchelf'ed.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • 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/)
  • 24.11 Release Notes (or backporting 23.11 and 24.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.

Add a 👍 reaction to pull requests you find important.

@emmanuelrosa emmanuelrosa force-pushed the bisq2 branch 2 times, most recently from 301fa0c to 8513a40 Compare June 9, 2024 18:16
@emmanuelrosa
Copy link
Contributor Author

I tried to address the by-name requirement, but I can't figure out what the problem is.

@emmanuelrosa emmanuelrosa force-pushed the bisq2 branch 2 times, most recently from ce1484f to 0da5bfb Compare June 10, 2024 13:58
@emmanuelrosa
Copy link
Contributor Author

In anticipation of migrating the bisq-desktop package to by-name, I named the attribute for Bisq 2 bisq_2, allowing me to use the attribute bisq_1 for the current bisq-desktop.

However, the Bisq 2 executable is named bisq2. Therefore, I added the mainProgram attribute so that nix run works.

@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by the maintainer of the package it changes 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 1-10 labels Jun 10, 2024
@emmanuelrosa
Copy link
Contributor Author

Rebased :)

@naturallaw777
Copy link

Thank you so much @emmanuelrosa! Bisq and Bisq 2 are the most important software of our time along with Bitcoin. You keeping it maintained here on NixOS is God's work!

@emmanuelrosa
Copy link
Contributor Author

Thank you for the kind words, @naturallaw777 .

@vytskalt
Copy link
Contributor

why was this closed?

@emmanuelrosa
Copy link
Contributor Author

I closed the PR because I'm sick and tired of wasting my time trying to please the code-checking gods.

package.nix is a perfectly valid Nix expression. Regardless, I formatted it twice with two different Nix formatters and the code was still rejected. This is not the first time I've had to battle with the Nixpkgs code checking bot. I write valid Nix code. I'm not trying to paint a Nix Picasso.

Frankly, I've had enough.

@nixos-discourse
Copy link

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

https://discourse.nixos.org/t/complaints-about-the-adoption-of-the-autoformatter-rfc-166/51012/31

emilazy added a commit to emilazy/nixpkgs that referenced this pull request Oct 7, 2024
OpenJFX 11 has been EOL for over a year; upstream
uses OpenJFX 15 which is also EOL. According
to <bisq-network/bisq#6758>, the
application does not function with later versions, and has a
limited remaining lifespan as there is a new major version that
uses more modern versions. It looks like that version officially
supports OpenJDK 22, which is also EOL, but hopefully it will
work with 21 or 23. Some work was done already to package it here:
<NixOS#318594>.
@emilazy emilazy mentioned this pull request Oct 7, 2024
13 tasks
wrbbz pushed a commit to wrbbz/nixpkgs that referenced this pull request Oct 9, 2024
OpenJFX 11 has been EOL for over a year; upstream
uses OpenJFX 15 which is also EOL. According
to <bisq-network/bisq#6758>, the
application does not function with later versions, and has a
limited remaining lifespan as there is a new major version that
uses more modern versions. It looks like that version officially
supports OpenJDK 22, which is also EOL, but hopefully it will
work with 21 or 23. Some work was done already to package it here:
<NixOS#318594>.
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: 1-10 11.by: package-maintainer This PR was created by the maintainer of the package it changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants