Linuxbrew / brew

:beer::penguin: The Homebrew package manager for Linux
https://linuxbrew.sh
BSD 2-Clause "Simplified" License
2.66k stars 237 forks source link

Error: homebrew/dupes was deprecated #701

Closed paulprovost closed 6 years ago

paulprovost commented 6 years ago

Upgrading on Ubuntu 16.04 LTS (ruby 2.3.1p112) shows:

Error: homebrew/dupes was deprecated. This tap is now empty as all its formulae were migrated.

How do I fix this?

sjackman commented 6 years ago

Hi, Paul.

brew untap homebrew/dupes

Homebrew/dupes is no longer needed.

paulprovost commented 6 years ago

Hi Shaun,

Yeah, I tried that, but I got

Error: No available tap homebrew/dupes.

Sorry, I should have said that up front...

sjackman commented 6 years ago

My best guess is that you have another tap tapped that refers to a formula in Homebrew/dupes. Try…

grep -irl homebrew/dupes $(brew --repo homebrew/core)/../..
paulprovost commented 6 years ago
/home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/homebrew/homebrew-core/../../homebrew/homebrew-core/Formula/lsh.rb

So

brew untap lsh

?

sjackman commented 6 years ago

My copy of lsh.rb does not mention homebrew/dupes, so brew update should resolve this issue. If it doesn't, please report brew config

paulprovost commented 6 years ago

It seems to be related to gpgme, which notmuchdepends on.

brew update does not fix it. Here's brew config:

HOMEBREW_VERSION: 1.6.3          
ORIGIN: https://github.com/Linuxbrew/brew                         
HEAD: b67917c837f1fb9c5bf2494cfd89b4eee6802802                    
Last commit: 4 days ago          
Core tap ORIGIN: https://github.com/Linuxbrew/homebrew-core       
Core tap HEAD: 20b657d442a4e82862410079a8e8f2cb9f8e05b3           
Core tap last commit: 5 hours ago                                 
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew                       
HOMEBREW_REPOSITORY: /home/linuxbrew/.linuxbrew/Homebrew          
HOMEBREW_CELLAR: /home/linuxbrew/.linuxbrew/Cellar                
HOMEBREW_CACHE: /home/paul/.cache/Homebrew                        
CPU: quad-core 64-bit merom      
Homebrew Ruby: 2.3.3 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/bin/ruby                  
Clang: N/A                       
Git: 2.15.1 => /home/linuxbrew/.linuxbrew/bin/git                 
Curl: 7.47.0 => /usr/bin/curl    
Java: N/A                        
Kernel: Linux 4.4.0-121-generic x86_64 GNU/Linux                  
OS: Ubuntu 16.04.4 LTS (xenial)  
Host glibc: 2.23                 
/usr/bin/gcc: 5.4.0              
glibc: N/A                       
gcc: N/A                         
xorg: 20170115                   
sjackman commented 6 years ago
Core tap ORIGIN: https://github.com/Linuxbrew/homebrew-core       
Core tap HEAD: 20b657d442a4e82862410079a8e8f2cb9f8e05b3           
Core tap last commit: 5 hours ago                                 

This looks fine.

/home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/homebrew/homebrew-core/../../homebrew/homebrew-core/Formula/lsh.rb

I'd suggest removing this file, and any other file that mentions homebrew/dupes and then run brew update.

sjackman commented 6 years ago

You could also try rm -rf /home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/homebrew/homebrew-core and then brew update.

paulprovost commented 6 years ago

Tried both, to no avail.

sjackman commented 6 years ago

What's the output now of…

grep -irl homebrew/dupes $(brew --repo homebrew/core)/../..
sjackman commented 6 years ago

lsh is a red herring. That hit comes from this comment:

# To avoid bumping into Homebrew/Dupes' OpenSSH:
sjackman commented 6 years ago

To try to find old, stale kegs that reference homebrew/dupes, try this…

grep homebrew/dupes $(find $(brew --cellar) -name INSTALL_RECEIPT.json)
paulprovost commented 6 years ago

It seems that the culprit may be m4? Or libsecret? My homebrew knowledge is quite limited.

We have

/home/linuxbrew.bak/.linuxbrew/Cellar/libsecret/0.18.5_1/INSTALL_RECEIPT.json

Containing the following:

{
  "homebrew_version": "1.1.10-568-gfab128714",
  "used_options": [],
  "unused_options": [
    "--without-gobject-introspection",
    "--with-vala"
  ],
  "built_as_bottle": true,
  "poured_from_bottle": true,
  "installed_as_dependency": true,
  "installed_on_request": false,
  "changed_files": [
    "INSTALL_RECEIPT.json",
    "lib/pkgconfig/libsecret-1.pc",
    "lib/pkgconfig/libsecret-unstable.pc"
  ],
  "time": 1515705162,
  "source_modified_time": 1458893925,
  "HEAD": null,
  "stdlib": null,
  "compiler": "gcc-4.8",
  "aliases": [],
  "runtime_dependencies": [
    {
      "full_name": "zlib",
      "version": "1.2.11"
    },
    {
      "full_name": "libxml2",
      "version": "2.9.4"
    },
    {
      "full_name": "homebrew/dupes/ncurses",
      "version": "6.0"
    },
    {
      "full_name": "gettext",
      "version": "0.19.8.1"
    },
    {
      "full_name": "libffi",
      "version": "3.2.1"
    },
    {
      "full_name": "bzip2",
      "version": "1.0.6"
    },
    {
      "full_name": "pcre",
      "version": "8.40"
    },
    {
      "full_name": "util-linux",
      "version": "2.29"
    },
    {
      "full_name": "glib",
      "version": "2.52.0"
    },
    {
      "full_name": "libgpg-error",
      "version": "1.27"
    },
    {
      "full_name": "libxslt",
      "version": "1.1.29"
    },
    {
      "full_name": "libgcrypt",
      "version": "1.7.6"
    },
    {
      "full_name": "pkg-config",
      "version": "0.29.2"
    },
    {
      "full_name": "libpng",
      "version": "1.6.29"
    },
    {
      "full_name": "freetype",
      "version": "2.7.1"
    },
    {
      "full_name": "expat",
      "version": "2.2.0"
    },
    {
      "full_name": "fontconfig",
      "version": "2.12.1"
    },
    {
      "full_name": "pixman",
      "version": "0.34.0"
    },
    {
      "full_name": "cairo",
      "version": "1.14.8"
    },
    {
      "full_name": "openssl",
      "version": "1.0.2k"
    },
    {
      "full_name": "python",
      "version": "2.7.13"
    },
    {
      "full_name": "homebrew/dupes/m4",
      "version": "1.4.18"
    },
    {
      "full_name": "bison",
      "version": "3.0.4"
    },
    {
      "full_name": "flex",
      "version": "2.6.3"
    },
    {
      "full_name": "gobject-introspection",
      "version": "1.52.0"
    }
  ],
  "source": {
    "path": "/home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/libsecret.rb",
    "tap": "homebrew/core",
    "spec": "stable",
    "versions": {
      "stable": "0.18.5",
      "devel": null,
      "head": null,
      "version_scheme": 0
    }
  }
}
sjackman commented 6 years ago

Please report…

brew list --versions libsecret
ls /home/linuxbrew.bak/.linuxbrew/Cellar/libsecret

Try…

brew upgrade libsecret
rm -rf /home/linuxbrew.bak/.linuxbrew/Cellar/libsecret/0.18.5_1
paulprovost commented 6 years ago
brew list --versions libsecret
libsecret 0.18.5_1
ls /home/linuxbrew/.linuxbrew/Cellar/libsecret
0.18.5_1
brew upgrade libsecret
==> Upgrading 1 outdated package, with result:
libsecret 0.18.5_1 -> 0.18.6
Error: homebrew/dupes was deprecated. This tap is now empty as all its formulae were migrated.
rm -rf /home/linuxbrew.bak/.linuxbrew/Cellar/libsecret/0.18.5_1

Then

brew install libsecret
==> Downloading https://linuxbrew.bintray.com/bottles/libsecret-0.18.6.x86_64_linux.bottle.tar.gz
Already downloaded: /home/paul/.cache/Homebrew/libsecret-0.18.6.x86_64_linux.bottle.tar.gz
==> Pouring libsecret-0.18.6.x86_64_linux.bottle.tar.gz
🍺  /home/linuxbrew/.linuxbrew/Cellar/libsecret/0.18.6: 139 files, 5.5MB

And then

brew upgrade

Succeeds! Thanks so much for your patience!

sjackman commented 6 years ago

No worries. This is a bug in brew I'd say. It's the (perhaps surprisingly) the first time that it's come up. Glad that we were able to sort it out.

holyjak commented 6 years ago

I had the same problem, because of zlib - which already was the latest version. Fortunately

brew reinstall zlib

fixed the issue. Thanks!