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

KDE Applications: 20.12.0, KDE Frameworks: 5.77, dependencies, patches #107666

Closed
wants to merge 40 commits into from
Closed

KDE Applications: 20.12.0, KDE Frameworks: 5.77, dependencies, patches #107666

wants to merge 40 commits into from

Conversation

hamburger1984
Copy link
Contributor

@hamburger1984 hamburger1984 commented Dec 26, 2020

Motivation for this change

Upgraded kde-applications and kde-frameworks to their most recent releases.

Some dependencies added & fixed for kde-applications, kde-frameworks and plasma5.

This branch also includes the fix for fetch-kde-qt.sh from #104684. (But this could be omitted, if the "new" approach of downloading and hashing the archives is deemed more suitable)
(removed)

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.

@hamburger1984 hamburger1984 marked this pull request as draft December 26, 2020 21:06
@ttuegel
Copy link
Member

ttuegel commented Dec 28, 2020

This branch also includes the fix for fetch-kde-qt.sh from #104684. (But this could be omitted, fit the "new" approach of downloading and hashing the archives is deemed more suitable)

What are the advantages of extracting the file hashes from HTML instead of hashing the downloaded files? I want to be sure the additional complexity is justified.

@hamburger1984
Copy link
Contributor Author

hamburger1984 commented Dec 29, 2020

This branch also includes the fix for fetch-kde-qt.sh from #104684. (But this could be omitted, if the "new" approach of downloading and hashing the archives is deemed more suitable)

What are the advantages of extracting the file hashes from HTML instead of hashing the downloaded files? I want to be sure the additional complexity is justified.

Basically it's just reduced load on the servers and not having to fetch the files before they're actually needed. And of course it's a way to actually validate the downloaded archive matches what the qt or kde team intended to provide.
So, still.. maybe it's not necessary.

@hamburger1984
Copy link
Contributor Author

Before this PR becomes a non-Draft, I'll cherry-pick some changes for kinfocenter (it finally works!) from https://github.com/hamburger1984/nixpkgs/commits/kde-plasma-fixes-unstable.

@peterhoeg
Copy link
Member

Regd kinfocenter: #107781

@hamburger1984
Copy link
Contributor Author

Regd kinfocenter: #107781

Proposed my fixes in that PR.

@hamburger1984 hamburger1984 marked this pull request as ready for review December 29, 2020 19:56
@hamburger1984
Copy link
Contributor Author

Regarding the fetch-kde-qt.sh script:
I reverted and tried to fetch srcs.nix for kde-frameworks, kde-applications, qt-5 and plasma5

  • it's slow to fetch all source packages (some mirrors are probably doing some ratelimiting..)
  • the hashes calculated by the previous script don't match the ones provided on the websites (is that just a different encoding of the same hash?)

for example:
image
image

I'll include the revert and re-generated srcs.nix anyhow as my proposed script doesn't seem to gain too much love here ;-)

@ttuegel
Copy link
Member

ttuegel commented Dec 31, 2020

the hashes calculated by the previous script don't match the ones provided on the websites (is that just a different encoding of the same hash?)

Yes, this is just an encoding issue. The upstream websites undoubtedly list the SHA256 hashes in the conventional hexadecimal (base-16) notation, but all the Nix tools use base-32 (compact, but idiosyncratic).

@hamburger1984
Copy link
Contributor Author

hamburger1984 commented Jan 1, 2021

the hashes calculated by the previous script don't match the ones provided on the websites (is that just a different encoding of the same hash?)

Yes, this is just an encoding issue. The upstream websites undoubtedly list the SHA256 hashes in the conventional hexadecimal (base-16) notation, but all the Nix tools use base-32 (compact, but idiosyncratic).

Okay. Then my script really would just improve the speed of generating srcs.nix. This does not justify the complexity, as this is not done that often, I guess.

@ttuegel any objections towards rebasing this branch on latest staging?
Also: is this form of PR fine or should I split this into more fine grained PRs?

@CrystalGamma
Copy link
Contributor

The upstream fetch-kde-qt.sh was broken for me, so I wrote this: https://gist.github.com/CrystalGamma/c6a7252219b44cf2c6ddaf5e4c49b6da .
If you're interested, feel free to integrate it; first command line argument is the mirror to fetch the hashes from, second is the path on each of the mirrors, which is written to the srcs.nix, third is the path to the srcs.nix to write to.

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

5 participants