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

wxGTK31: 3.1.3 -> 3.1.4 + python3Packages.wxpython_4_1: init at 4.1.0 #98951

Merged
merged 3 commits into from Nov 10, 2020

Conversation

tfmoraes
Copy link
Contributor

@tfmoraes tfmoraes commented Sep 27, 2020

Motivation for this change

Update wxWidgets to 3.1.4 and add wxPython-4.1.0

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.

@tfmoraes
Copy link
Contributor Author

Just pwsafe failed to compile with wxWidget 3.1.4:

nix-shell -p nixpkgs-review --run "nixpkgs-review pr 98951"                                                                                             
these paths will be fetched (0.04 MiB download, 0.15 MiB unpacked):
  /nix/store/8q0fbh6cg79bca0gmlhv8s9xv0zzv10b-nixpkgs-review-2.4.0
copying path '/nix/store/8q0fbh6cg79bca0gmlhv8s9xv0zzv10b-nixpkgs-review-2.4.0' from 'https://cache.nixos.org'...
$ git -c fetch.prune=false fetch --force https://github.com/NixOS/nixpkgs master:refs/nixpkgs-review/0 pull/98951/head:refs/nixpkgs-review/1
remote: Enumerating objects: 201, done.
remote: Counting objects: 100% (201/201), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 312 (delta 194), reused 188 (delta 188), pack-reused 111
Receiving objects: 100% (312/312), 252.07 KiB | 13.27 MiB/s, done.
Resolving deltas: 100% (219/219), completed with 123 local objects.
From https://github.com/NixOS/nixpkgs
   2b575c5f1f2..495895c34e2  master               -> refs/nixpkgs-review/0
 + 801715d822a...e6badde3776 refs/pull/98951/head -> refs/nixpkgs-review/1  (forced update)
$ git worktree add /home/thiago/.cache/nixpkgs-review/pr-98951/nixpkgs 495895c34e280322c30d2620c05ca4c3e180e89a
Preparing worktree (detached HEAD 495895c34e2)
HEAD is now at 495895c34e2 Merge pull request #98928 from thall/master
$ nix-env -f /home/thiago/.cache/nixpkgs-review/pr-98951/nixpkgs -qaP --xml --out-path --show-trace
$ git merge --no-commit e6badde3776aaff76ab19040634b0f97d6330bc7
Auto-merging pkgs/top-level/python-packages.nix
Automatic merge went well; stopped before committing as requested
$ nix-env -f /home/thiago/.cache/nixpkgs-review/pr-98951/nixpkgs -qaP --xml --out-path --show-trace --meta
2 packages added:
python37Packages.wxPython_4_1 (init at 4.1.0) python38Packages.wxPython_4_1 (init at 4.1.0)

16 packages updated:
cubicsdr diff-pdf freqtweak-unstable grandorgue kicad-unstable kicad-unstable-small prusa-slicer prusa-slicer pwsafe saga super-slicer treesheets wxFormBuilder-unstable wxHexEditor wxGTK31-gtk3 (3.1.3 → 3.1.4) wxGTK31 (3.1.3 → 3.1.4)

$ nix build --no-link --keep-going --option build-use-sandbox relaxed -f /home/thiago/.cache/nixpkgs-review/pr-98951/build.nix
builder for '/nix/store/0lgmghb522lp3fqz89zwmms2yj7gg7w2-pwsafe-3.52.0.drv' failed with exit code 2; last 10 log lines:
  /build/source/src/ui/wxWidgets/PasswordSafeSearch.cpp:129:41: error: 'class wxSearchCtrl' has no member named 'IsModified'
    129 |   if (m_criteria->IsDirty() || txtCtrl->IsModified() || m_searchPointer.IsEmpty()) {
        |                                         ^~~~~~~~~~
  /build/source/src/ui/wxWidgets/PasswordSafeSearch.cpp:152:14: error: 'class wxSearchCtrl' has no member named 'SetModified'
    152 |     txtCtrl->SetModified(false);
        |              ^~~~~~~~~~~
  make[2]: *** [CMakeFiles/pwsafe.dir/build.make:134: CMakeFiles/pwsafe.dir/src/ui/wxWidgets/PasswordSafeSearch.cpp.o] Error 1
  make[2]: *** Waiting for unfinished jobs....
  make[1]: *** [CMakeFiles/Makefile2:253: CMakeFiles/pwsafe.dir/all] Error 2
  make: *** [Makefile:182: all] Error 2
cannot build derivation '/nix/store/5f0liffxrqrd35vvnc7yyfnzyswk351a-env.drv': 1 dependencies couldn't be built
[38 built (1 failed), 147 copied (1813.7 MiB), 415.4 MiB DL]
error: build of '/nix/store/5f0liffxrqrd35vvnc7yyfnzyswk351a-env.drv' failed
https://github.com/NixOS/nixpkgs/pull/98951
1 package failed to build:
pwsafe

16 packages built:
cubicsdr diff-pdf freqtweak grandorgue kicad-unstable kicad-unstable-small prusa-slicer python37Packages.wxPython_4_1 python38Packages.wxPython_4_1 saga super-slicer treesheets wxGTK31 wxGTK31-gtk3 wxformbuilder wxhexeditor

$ nix-shell /home/thiago/.cache/nixpkgs-review/pr-98951/shell.nix

Copy link
Contributor

@jonringer jonringer left a comment

Choose a reason for hiding this comment

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

if you can get pwsafe to build, i will merge this. Looks like upstream doesn't support it yet, so you may have to do some overriding for that package.

I would just feel bad for pwsafe users to have their tool broken

cc @c0bw3b @pjones

@tfmoraes
Copy link
Contributor Author

tfmoraes commented Oct 2, 2020

@jonringer If I change pwsafe to compile with wxWidgets 3.0 it compiles. Pwsafe Mac, Ubuntu and Debian packages are being created with wxWidgets 3.0 see https://github.com/pwsafe/pwsafe/blob/master/.github/workflows/main.yml and https://github.com/pwsafe/pwsafe/blob/master/Misc/setup-linux-dev-env.sh . Maybe we should use wxWidgets 3.0 too until they support 3.1. If you want, I add a commit in this PR with this change.

@jonringer
Copy link
Contributor

I think that's preferable over breaking the other packages. but we can also let the maintainers respond first. I would just like to point out that this PR has been going on for months

cc @c0bw3b @pjones

@tfmoraes
Copy link
Contributor Author

tfmoraes commented Oct 4, 2020

@jonringer I've just committed the change to make Pwsafe use wxGTK30 in this PR. It's building all packages that depend on wxGTK31 correctly:

❯ nix-shell -p nixpkgs-review --run "nixpkgs-review pr 98951"
these paths will be fetched (0.04 MiB download, 0.15 MiB unpacked):
  /nix/store/8q0fbh6cg79bca0gmlhv8s9xv0zzv10b-nixpkgs-review-2.4.0
copying path '/nix/store/8q0fbh6cg79bca0gmlhv8s9xv0zzv10b-nixpkgs-review-2.4.0' from 'https://cache.nixos.org'...
$ git -c fetch.prune=false fetch --force https://github.com/NixOS/nixpkgs master:refs/nixpkgs-review/0 pull/98951/head:refs/nixpkgs-review/1
remote: Enumerating objects: 2008, done.
remote: Counting objects: 100% (2008/2008), done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 3875 (delta 2000), reused 1996 (delta 1996), pack-reused 1867
Receiving objects: 100% (3875/3875), 3.18 MiB | 5.32 MiB/s, done.
Resolving deltas: 100% (2750/2750), completed with 751 local objects.
From https://github.com/NixOS/nixpkgs
   495895c34e2..e782471d2b8  master               -> refs/nixpkgs-review/0
 + e6badde3776...51c14f8079b refs/pull/98951/head -> refs/nixpkgs-review/1  (forced update)
$ git worktree add /home/thiago/.cache/nixpkgs-review/pr-98951-1/nixpkgs e782471d2b8f6a77de0189a9a99639176e12fff1
Preparing worktree (detached HEAD e782471d2b8)
Updating files: 100% (22843/22843), done.
HEAD is now at e782471d2b8 cheesecutter: unstable-2019-12-06 -> unstable-2020-04-03
$ nix-env -f /home/thiago/.cache/nixpkgs-review/pr-98951-1/nixpkgs -qaP --xml --out-path --show-trace
$ git merge --no-commit 51c14f8079b1addd2bd693191f62acf29b2e40cb
Auto-merging pkgs/top-level/python-packages.nix
Automatic merge went well; stopped before committing as requested
$ nix-env -f /home/thiago/.cache/nixpkgs-review/pr-98951-1/nixpkgs -qaP --xml --out-path --show-trace --meta
2 packages added:
python37Packages.wxPython_4_1 (init at 4.1.0) python38Packages.wxPython_4_1 (init at 4.1.0)

16 packages updated:
cubicsdr diff-pdf freqtweak-unstable grandorgue kicad-unstable kicad-unstable-small prusa-slicer prusa-slicer pwsafe saga super-slicer treesheets wxFormBuilder-unstable wxHexEditor wxGTK31-gtk3 (3.1.3 → 3.1.4) wxGTK31 (3.1.3 → 3.1.4)

$ nix build --no-link --keep-going --option build-use-sandbox relaxed -f /home/thiago/.cache/nixpkgs-review/pr-98951-1/build.nix
[19 built, 80 copied (1469.7 MiB), 336.7 MiB DL]
https://github.com/NixOS/nixpkgs/pull/98951
17 packages built:
cubicsdr diff-pdf freqtweak grandorgue kicad-unstable kicad-unstable-small prusa-slicer pwsafe python37Packages.wxPython_4_1 python38Packages.wxPython_4_1 saga super-slicer treesheets wxGTK31 wxGTK31-gtk3 wxformbuilder wxhexeditor

[0.0 MiB DL]
$ nix-shell /home/thiago/.cache/nixpkgs-review/pr-98951-1/shell.nix

[nix-shell:~/.cache/nixpkgs-review/pr-98951-1]$

@jonringer
Copy link
Contributor

do you mind changing the commit message to:

pwsafe: use wxGTK30

@tfmoraes
Copy link
Contributor Author

tfmoraes commented Oct 4, 2020

do you mind changing the commit message to:

pwsafe: use wxGTK30

Done.

@evils
Copy link
Member

evils commented Oct 5, 2020

if you change the order of the commits so the pwsafe change applies first, then none of the commits have a breakage

@tfmoraes
Copy link
Contributor Author

tfmoraes commented Oct 5, 2020

if you change the order of the commits so the pwsafe change applies first, then none of the commits have a breakage

Good idea! Done.

@tfmoraes
Copy link
Contributor Author

@jonringer It seems that the maintainers of pwsafe are not going respond.

@tfmoraes
Copy link
Contributor Author

tfmoraes commented Nov 8, 2020

Hi @jonringer. @c0bw3b @pjones not responded yet. Do you think it's better to wait yet?

@jonringer
Copy link
Contributor

I think a month is plenty of time

Copy link
Contributor

@jonringer jonringer left a comment

Choose a reason for hiding this comment

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

I'm going to merge this unless there's any objection

https://github.com/NixOS/nixpkgs/pull/98951
16 packages built:
cubicsdr diff-pdf freqtweak grandorgue kicad-unstable-small prusa-slicer pwsafe python37Packages.wxPython_4_1 python38Packages.wxPython_4_1 saga super-slicer treesheets wxGTK31 wxGTK31-gtk3 wxformbuilder wxhexeditor

cc @FRidh

@tfmoraes
Copy link
Contributor Author

Ok @jonringer!

@jonringer
Copy link
Contributor

everything builds, and looks fine.

sorry for the VERY long PR

@jonringer jonringer merged commit dd72edc into NixOS:master Nov 10, 2020
@deliciouslytyped
Copy link
Contributor

I think this might be missing some dependencies; see #94108 (comment)

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