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

anonscm.debian.org has migrated to salsa.debian.org! #39927

Closed
voobscout opened this issue May 3, 2018 · 8 comments · Fixed by #70382
Closed

anonscm.debian.org has migrated to salsa.debian.org! #39927

voobscout opened this issue May 3, 2018 · 8 comments · Fixed by #70382

Comments

@voobscout
Copy link
Contributor

Debian SCM moved to gitlab at new URI!

At some point in recent time, Debian maintenance team migrated SCM from http://anonscm.debian.org to https://salsa.debian.org. In the process, redirects have not been provided, the old site is still up, but contains none of the expected content at 404.

Whoever moderates issues here, please rename this one appropriately and assign severity and somehow let package maintainers know about this, it looks like this move by Debian is going to affect quite a few things.

Steps to reproduce

Try building any package that depends on anything from the old debian SCM, in my case it was qt48 (nixpkgs/pkgs/development/libraries/qt-4.x/4.8/default.nix)

A patch is being pulled from http://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/plain/debian/patches/kubuntu_39_fix_medium_font.diff?id=21b342d71c19e6d68b649947f913410fe6129ea4 and fails, since the new version is available at https://salsa.debian.org/qt-kde-team/qt/qt4-x11/raw/21b342d71c19e6d68b649947f913410fe6129ea4/debian/patches/kubuntu_39_fix_medium_font.diff

Relevant part of qt48 default.nix:

(fetchpatch {
name = "fix-medium-font.patch";
url = "http://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/plain/debian/patches/"
+ "kubuntu_39_fix_medium_font.diff?id=21b342d71c19e6d68b649947f913410fe6129ea4";
sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j";
})

Thanks for taking a look!

@globin globin changed the title [PLEASE EDIT/SET SEVERITY] anonscm.debian.org has migrated to salsa.debian.org! anonscm.debian.org has migrated to salsa.debian.org! May 3, 2018
@globin globin self-assigned this May 3, 2018
@matthewbauer
Copy link
Member

I take this to mean that Debian probably doesn't want other distros using their patches. This is also an issue with patch-tracker.debian.org (sgeb/homebrew-mutt#3). Luckily we are not using it too often

https://github.com/NixOS/nixpkgs/search?q=anonscm.debian.org
https://github.com/NixOS/nixpkgs/search?q=patch-tracker.debian.org

Anyone have objections to just removing them? If Debian hasn't upstreamed them by now they probably never will be.

@voobscout
Copy link
Contributor Author

Upon further investigation and after having a chat with nice folks at #debian-devel irc, it has been noted that:

  • The move to gitlab has been planned for a few years and was the best-effort deal.
  • Maintaining redirects for links compatibility has been deemed unfeasible, with current attempt https://paste.debian.net/1023154 being what it is and anyone being welcome to take a crack at it or have a similar service.

As for nix:

Should it really depend on some web deep-links? There're lots of patches maintained with the nixpkgs as far can be seen, why not just extend this practice to everything?

@matthewbauer
Copy link
Member

Should it really depend on some web deep-links? There're lots of patches maintained with the nixpkgs as far can be seen, why not just extend this practice to everything?

Well patches, especially large ones, are usually discouraged within Nixpkgs. We want good patches to be upstreamed ASAP (unless they are somehow Nix-specific). Obviously, we sometimes fail as is the case with those Debian patches. In my opinion, distros like Debian are terrible at hording huge patches. Why they do this when most maintainers would be perfectly happy to apply them upstream (if only they knew about them) is beyond me - but I guess Debian is large enough that people let them get away with it.

@voobscout
Copy link
Contributor Author

The fact of the matter is - getting stuff upstreamed is rather a big deal unfortunately. Many projects have questionable policies and individuals in-place to make this process bumpy to the point of it being irritating and ultimately not worth the effort.

This qt48 pkg is an excellent example - why was this particular patch not accepted upstream? If we start digging, we'll find some very convincing reason, at least in the eyes of the project maintainers and we still won't be able to exert our will upon the situation.

We're dealing with the real world here, why inconvenience ourselves with yet another non-resolvable issue in the long term.

For myself, I resolved it with an overlay so far, but it would have been a lot more preferable not to encounter it in the first place.

Having "in-house" patches seems to be the logical solution.

Also, how is this not nix specific, if it is included in the pkgbuild? If this patch wasn't required, I imagine it would not have been included, the name of the patch suggests that it originally was developed for kubuntu variant of debian. It is being included here in nixpkgs, hence it is nix specific and merits being included in the repo.

Just my couple of cents... I could also be spectacularly mistaken...

@dtzWill
Copy link
Member

dtzWill commented May 3, 2018

I'll add that sometimes upstream is no longer maintained-- in which case I think local patches is usually the best choice.

It might make sense to keep them separately so as to not bloat the nixpkgs tree (and making channel updates slower).

Are patches made available on the hashed mirror like source tarballs?

@matthewbauer
Copy link
Member

matthewbauer commented May 3, 2018

Oh yeah definitely open a pr with your overlay changes - it’s certainly better than having broken urls. I didn’t mean to suggest we won’t fix these - just why it’s not a priority for me at least. My main concern is what happens when Debian decides they don’t like GitLab anymore and moves to something else and then where they move after that.

I could have sworn there was a place where Debian puts all of there patches to be mirrored but I can’t find it right now.

@voobscout
Copy link
Contributor Author

voobscout commented May 3, 2018

@matthewbauer Do you want me to open PR for this?

self: super:

let
  patch-name-regex = "(.*fix-medium-font.*)";
  patch-old = with builtins; filter (x: let p = match patch-name-regex (toString(x)); in if p == null then false else true) super.qt48.patches;
  patch-new = super.fetchpatch {
    name = "fix-medium-font.patch";
    url = "https://salsa.debian.org/qt-kde-team/qt/qt4-x11/raw/" +
      "21b342d71c19e6d68b649947f913410fe6129ea4/debian/patches/kubuntu_39_fix_medium_font.diff";
    sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j";
  };
  proper-patches = (super.lib.lists.remove patch-old super.qt48.patches) ++ [ patch-new ];
in

{
  qt48 = super.qt48.overrideAttrs ( oldAttrs: {
    patches = proper-patches;
  });
}

I am not sure where to stick this, I got it in my nixpkgs.overlays section, not to mention the fact that I am not confident this solution is either correct or working, since I got stuck rebuilding my system with a few broken pkgs.

Correct me please, if this is the wrong way of fixing that specific case.

@matthewbauer
Copy link
Member

Okay thanks just updated the url - applied in ef82607.

matthewbauer added a commit that referenced this issue May 3, 2018
bhipple added a commit to bhipple/nixpkgs that referenced this issue May 19, 2018
The upstream src URL for the patch appears to no longer exist. Per discussion in
NixOS#39927, the upstream URL is not stable,
so this commit inlines the patch in the nixpkgs src tree.
xeji pushed a commit that referenced this issue May 19, 2018
The upstream src URL for the patch appears to no longer exist. Per discussion in
#39927, the upstream URL is not stable,
so this commit inlines the patch in the nixpkgs src tree.
schlarpc added a commit to schlarpc/nixpkgs that referenced this issue Jun 2, 2018
Related to NixOS#39927

```
$ nix-prefetch-url https://salsa.debian.org/debian/ca-certificates/raw/debian/20170717/mozilla/certdata2pem.py
path is '/nix/store/0d00axdac4h8ffxrf90s5zh8xdw3r29z-certdata2pem.py'
1d4q27j1gss0186a5m8bs5dk786w07ccyq0qi6xmd2zr1a8q16wy
```
bhipple added a commit to bhipple/nixpkgs that referenced this issue Jun 9, 2018
bhipple added a commit to bhipple/nixpkgs that referenced this issue Jun 9, 2018
Another broken URL related to: NixOS#39927

Note that the patch file has legitimately changed, because ~4 months ago Debian
replaced their CVE security fix with a newer version that fixes some additional
bugs: https://salsa.debian.org/debian/p7zip/commit/d6fd3b37345489ec2907fcf70aabf0c754f5371f
bhipple added a commit to bhipple/nixpkgs that referenced this issue Jun 9, 2018
bhipple added a commit to bhipple/nixpkgs that referenced this issue Jun 9, 2018
Another broken URL related to: NixOS#39927

Note that the patch file has legitimately changed, because ~4 months ago Debian
replaced their CVE security fix with a newer version that fixes some additional
bugs: https://salsa.debian.org/debian/p7zip/commit/d6fd3b37345489ec2907fcf70aabf0c754f5371f
orivej pushed a commit that referenced this issue Jun 9, 2018
Another broken URL related to: #39927

Note that the patch file has legitimately changed, because ~4 months ago Debian
replaced their CVE security fix with a newer version that fixes some additional
bugs: https://salsa.debian.org/debian/p7zip/commit/d6fd3b37345489ec2907fcf70aabf0c754f5371f
vcunat pushed a commit that referenced this issue Jun 10, 2018
Another broken URL related to: #39927

Note that the patch file has legitimately changed, because ~4 months ago Debian
replaced their CVE security fix with a newer version that fixes some additional
bugs: https://salsa.debian.org/debian/p7zip/commit/d6fd3b37345489ec2907fcf70aabf0c754f5371f

(cherry picked from commit e20abf8)
candeira pushed a commit to candeira/nixpkgs that referenced this issue Sep 6, 2018
The upstream src URL for the patch appears to no longer exist. Per discussion in
NixOS#39927, the upstream URL is not stable,
so this commit inlines the patch in the nixpkgs src tree.

(cherry picked from commit 17f5001)
@FRidh FRidh added this to the 19.09 milestone Jul 20, 2019
@globin globin removed their assignment Sep 11, 2019
lheckemann added a commit to mayflower/nixpkgs that referenced this issue Oct 4, 2019
No longer available since anonscm.debian.org is shut
down (NixOS#39927). Replacement obtained from OpenSUSE source package
http://download.opensuse.org/repositories/openSUSE:/Factory/standard/src/ipsec-tools-0.8.2-9.6.src.rpm
@lheckemann lheckemann mentioned this issue Oct 4, 2019
10 tasks
lheckemann added a commit to mayflower/nixpkgs that referenced this issue Oct 4, 2019
No longer available since anonscm.debian.org is shut
down (NixOS#39927). Replacement obtained from OpenSUSE source package
http://download.opensuse.org/repositories/openSUSE:/Factory/standard/src/ipsec-tools-0.8.2-9.6.src.rpm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants
@matthewbauer @dtzWill @voobscout @globin @FRidh and others