Bug 211749 - ports-mgmt/pkg: pkg install -r <disabled-repo> does not work, contrary to pkg-install(8)
Summary: ports-mgmt/pkg: pkg install -r <disabled-repo> does not work, contrary to pkg...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-pkg (Nobody)
URL:
Keywords: needs-qa
Depends on:
Blocks:
 
Reported: 2016-08-11 08:23 UTC by VK
Modified: 2025-11-16 18:27 UTC (History)
5 users (show)

See Also:
bugzilla: maintainer-feedback? (pkg)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description VK 2016-08-11 08:23:00 UTC
When installing packages from a disabled repo with pkg install -r, the manpage suggests it should not respect the "active" status of the repo ('irrespective of the configured "active" status from repo.conf'), meaning it will install from disabled repos, however that is not the case:

> # grep enabled /usr/local/etc/pkg/repos/FreeBSD.conf 
>   enabled: no
> 
> # pkg install -r FreeBSD openjdk
> No repositories are enabled.

Enabling the repo allows installation from it with -r.
Comment 1 VK 2016-08-11 08:27:53 UTC
# pkg info pkg
pkg-1.8.7_1
Name           : pkg
Version        : 1.8.7_1
Installed on   : Thu Aug  4 13:55:40 2016 CEST
Origin         : ports-mgmt/pkg
Architecture   : freebsd:11:x86:64
Prefix         : /usr/local
Categories     : ports-mgmt
Licenses       : BSD2CLAUSE
Maintainer     : pkg@FreeBSD.org
WWW            : http://wiki.freebsd.org/pkgng
Comment        : Package manager
Shared Libs provided:
        libpkg.so.3
Annotations    :
        repo_type      : binary
        repository     : Poudriere
Flat size      : 10.9MiB
Description    :
Package management tool

WWW: http://wiki.freebsd.org/pkgng
Comment 2 VK 2016-11-26 17:01:47 UTC
Looking at the source code, it would appear that the manpage is wrong. For example, given repo is explicitly checked if enabled:

* update:
  https://github.com/freebsd/pkg/blob/master/src/update.c#L69

* install falls through update:
  https://github.com/freebsd/pkg/blob/master/src/install.c#L197

Can we get some feedback here? If this is the intended behavior, then the solution is to correct the manpage.

Thanks.
Comment 3 Gleb Popov freebsd_committer freebsd_triage 2019-08-02 10:43:05 UTC
I'd like to bump this bug. It is pretty annoying in my use-case.
Comment 4 Gleb Popov freebsd_committer freebsd_triage 2020-06-04 16:47:26 UTC
Any progress on this?
Comment 5 Kyle Evans freebsd_committer freebsd_triage 2020-06-04 16:49:10 UTC
CC'ing bapt@ specifically, though I reckon he probably reads -pkg@ as well
Comment 6 Baptiste Daroussin freebsd_committer freebsd_triage 2025-01-22 12:49:35 UTC
fixed in pkg 2.0
Comment 7 Mark Millard 2025-10-25 18:01:50 UTC
This is no longer fixed:

# pkg -v
2.3.1

# pkg repos -e
you have mail
pkg: Warning: Major OS version upgrade detected.  Running "pkg bootstrap -f" recommended
main-aarch64-default: { 
    url             : "file:///usr/local/poudriere/data/packages/main-aarch64-default",
    enabled         : yes,
    priority        : 0
  }

# pkg install -r FreeBSD-base -g FreeBSD-\*
pkg: Warning: Major OS version upgrade detected.  Running "pkg bootstrap -f" recommended
Updating FreeBSD-base repository catalogue...
FreeBSD-base is up to date.
Checking integrity... done (0 conflicting)
The most recent versions of packages are already installed


Then, after enabling FreeBSD-base:

 # pkg repos -e
pkg: Warning: Major OS version upgrade detected.  Running "pkg bootstrap -f" recommended
FreeBSD-base: { 
    url             : "pkg+http://pkg.FreeBSD.org/FreeBSD:16:aarch64/base_latest",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
main-aarch64-default: { 
    url             : "file:///usr/local/poudriere/data/packages/main-aarch64-default",
    enabled         : yes,
    priority        : 0
  }

# pkg install -r FreeBSD-base -g FreeBSD-\*
pkg: Warning: Major OS version upgrade detected.  Running "pkg bootstrap -f" recommended
Updating FreeBSD-base repository catalogue...
Fetching data.pkg: 100%   76 KiB  77.8kB/s    00:01    
Processing entries: 100%
FreeBSD-base repository update completed. 483 packages processed.
FreeBSD-base is up to date.
The following 29 package(s) will be affected (of 0 checked):

Installed packages to be UPGRADED:
	FreeBSD-clibs: 16.snap20251024010824 -> 16.snap20251024161632 [FreeBSD-base]
	FreeBSD-clibs-dev: 16.snap20251023111846 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-examples: 16.snap20250929232442 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-geom: 16.snap20251021082438 -> 16.snap20251024152405 [FreeBSD-base]
	FreeBSD-ipfw: 16.snap20251021082438 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-ipfw-dbg: 16.snap20251021082438 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-kernel-generic: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-generic-dbg: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-generic-mmccam: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-generic-mmccam-dbg: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-generic-nodebug: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-generic-nodebug-dbg: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-kernel-man: 16.snap20251022145025 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-rescue: 16.snap20251022223035 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-src: 16.snap20251024114208 -> 16.snap20251024215907 [FreeBSD-base]
	FreeBSD-src-sys: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities-dbg: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities-dbg-lib32: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities-dev: 16.snap20251020111227 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities-dev-lib32: 16.snap20251020111227 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-utilities-lib32: 16.snap20251024114208 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs: 16.snap20251021082438 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-dbg: 16.snap20251021082438 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-dbg-lib32: 16.snap20251021082438 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-dev: 16.snap20251020111227 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-dev-lib32: 16.snap20251020111227 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-lib: 16.snap20251021082438 -> 16.snap20251025082352 [FreeBSD-base]
	FreeBSD-zfs-lib32: 16.snap20251021082438 -> 16.snap20251025082352 [FreeBSD-base]

Number of packages to be upgraded: 29

The process will require 16 MiB more space.
666 MiB to be downloaded.

Proceed with this action? [y/N]:
Comment 8 Mark Millard 2025-11-16 16:54:22 UTC
(In reply to Mark Millard from comment #7)

Just a status note as of 15.0-RC1 being prepared:

For REPONAME not enabled: it is still true that
commands similar to:

# pkg update -r REPONAME

do not actually update the catalog for REPONAME. 

The 15.0 procedures and instructions are going
to be based on handling that behavior.
Comment 9 Graham Perrin 2025-11-16 18:27:08 UTC
See also: bug 289455