FreeBSD 15 Paketkonfllikt sqlite3-icu

CoMo

Commodore
Registriert
Dez. 2015
Beiträge
4.725
Hallo,

ich bekomme beim pkg upgrade folgenden Fehler:
Code:
[root@<XXX> ~]# pkg upgrade
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking for upgrades (30 candidates): 100%
Processing candidates (30 candidates): 100%
Checking integrity... done (2 conflicting)
  - sqlite3-icu-3.50.4_2,1 [FreeBSD-ports] conflicts with sqlite3-3.53.1,1 [installed] on /usr/local/bin/sqldiff
  - sqlite3-icu-3.53.1,1 [FreeBSD] conflicts with sqlite3-3.53.1,1 [installed] on /usr/local/bin/sqldiff
Checking integrity... done (0 conflicting)
Your packages are up to date.

Das sqlite3-icu hat sich kurz vorher beim pkg upgrade installiert.

Code:
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
Updating FreeBSD repository catalogue...
Fetching data: 100%    11 MiB   2.8 MB/s    00:04
Processing entries: 100%
FreeBSD repository update completed. 36964 packages processed.
All repositories are up to date.
Checking for upgrades (30 candidates): 100%
Processing candidates (30 candidates): 100%
The following 2 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        sqlite3-icu: 3.50.4_2,1 [FreeBSD-ports]

Installed packages to be UPGRADED:
        bash: 5.3.12 -> 5.3.15 [FreeBSD]

Number of packages to be installed: 1
Number of packages to be upgraded: 1

The process will require 6 MiB more space.
2 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/1] Fetching bash-5.3.15: 100%  1912 KiB   2.0 MB/s    00:01
Checking integrity... done (1 conflicting)
  - sqlite3-icu-3.50.4_2,1 [FreeBSD-ports] conflicts with sqlite3-3.53.1,1 [installed] on /usr/local/bin/sqldiff
Checking integrity... done (0 conflicting)
Conflicts with the existing packages have been found.
One more solver iteration is needed to resolve them.
The following 2 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        sqlite3-icu: 3.53.1,1 [FreeBSD]

Installed packages to be UPGRADED:
        bash: 5.3.12 -> 5.3.15 [FreeBSD]

Number of packages to be installed: 1
Number of packages to be upgraded: 1

The process will require 6 MiB more space.
1 MiB to be downloaded.

Wie komme ich da raus?

Code:
freebsd-version -ukr
15.0-RELEASE-p10
15.0-RELEASE-p10
15.0-RELEASE-p10

Code:
[root@<XXX> ~]# pkg stats
Local package database:
        Installed packages: 86
        Disk space occupied: 902 MiB

Remote package database(s):
        Number of repositories: 3
        Packages available: 74277
        Unique packages: 74277
        Total size of packages: 321 GiB

Code:
cat /etc/pkg/FreeBSD.conf
#
# To disable a repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file, e.g.:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo "FreeBSD-ports: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
#   echo "FreeBSD-ports-kmods: { enabled: no }" >> /usr/local/etc/pkg/repos/FreeBSD.conf
#
# Note that the FreeBSD-base repository is disabled by default.
#

FreeBSD-ports: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/quarterly",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}
FreeBSD-ports-kmods: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_quarterly_${VERSION_MINOR}",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}
FreeBSD-base: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/base_release_${VERSION_MINOR}",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkgbase-${VERSION_MAJOR}",
  enabled: no
}

Code:
cat /usr/local/etc/pkg/repos/*.conf 2>/dev/null
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: yes
}

@andy_m4 ich brauche dich 😇
 
Zuletzt bearbeitet:
Bei sowas ist chatgpt sehr hilfreich. Du hast wohl zwei Paketzweige gleichzeitig aktiviert daher die Konflikte. Musst dich für einen Entscheiden (lates oder quarterly. hier die Antwort - ich habe deinen Text 1:1 kopiert)
(sorry für die schlechte Formatierung - am besten ignorieren und selbst versuchen):

Das Problem ist, dass du zwei unterschiedliche Paketzweige gleichzeitig aktiviert hast:

  • /etc/pkg/FreeBSD.conf → quarterly
  • /usr/local/etc/pkg/repos/FreeBSD.conf → latest
pkg sieht deshalb gleichzeitig Pakete aus mehreren Repositories:

sqlite3-icu-3.53.1,1 [FreeBSD]<br>sqlite3-icu-3.50.4_2,1 [FreeBSD-ports]<br>
und versucht ein Paket zu installieren, das dieselben Dateien bereitstellt wie dein bereits installiertes sqlite3:

conflicts with sqlite3-3.53.1,1 [installed] on /usr/local/bin/sqldiff<br>

Erstmal prüfen​

Zeig mal die Repositorys an:

pkg -vv | grep -A5 REPOSITORIES<br>
oder komplett:

pkg -vv<br>
Ich vermute stark, dass dort sowohl ein FreeBSD-Repo (latest) als auch FreeBSD-ports (quarterly) aktiv sind.


Wahrscheinlichste Lösung​

Entweder latest oder quarterly, aber nicht beides.

Wenn du auf latest bleiben willst, dann z.B.:

mkdir -p /usr/local/etc/pkg/repos<br>
cat &gt;/usr/local/etc/pkg/repos/FreeBSD.conf &lt;&lt;EOF<br>FreeBSD: {<br> url: "pkg+https://pkg.freebsd.org/\${ABI}/latest",<br> mirror_type: "srv",<br> signature_type: "fingerprints",<br> fingerprints: "/usr/share/keys/pkg",<br> enabled: yes<br>}<br><br>FreeBSD-ports: {<br> enabled: no<br>}<br><br>FreeBSD-ports-kmods: {<br> enabled: no<br>}<br>EOF<br>
Danach:

pkg update -f<br>pkg upgrade -f<br>

Falls sqlite3-icu bereits installiert ist​

Prüfen:

pkg info | grep sqlite<br>
Wenn dort sowohl sqlite3 als auch sqlite3-icu auftauchen, dann ist das die eigentliche Kollision.

Dann wäre interessant:

pkg info sqlite3<br>pkg info sqlite3-icu<br>
sowie

pkg query "%n %R" sqlite3 sqlite3-icu<br>

Was mich stutzig macht​

Im ersten Lauf:

sqlite3-icu-3.50.4_2,1 [FreeBSD-ports]<br>
Im zweiten Solver-Durchlauf:

sqlite3-icu-3.53.1,1 [FreeBSD]<br>
Dass derselbe Paketname aus zwei verschiedenen Repositories mit unterschiedlichen Versionen angeboten wird, ist ein ziemlich deutlicher Hinweis auf eine vermischte Repository-Konfiguration.

Mein Verdacht: Du hast irgendwann für latest eine Datei unter

/usr/local/etc/pkg/repos/FreeBSD.conf<br>
angelegt und gleichzeitig die neuen Standard-Repositories (FreeBSD-ports, FreeBSD-ports-kmods) aus 15.0 aktiv gelassen. Dadurch fährt das System aktuell zweigleisig.

pkg -vv würde das endgültig bestätigen.
 
  • Gefällt mir
Reaktionen: CoMo
Das sieht so aus:


Code:
pkg -vv
Version                 : 2.7.5
libpkg                  : 2.7.5
libarchive              : libarchive 3.8.2
sqlite                  : 3.51.1
openssl                 : OpenSSL 3.5.6 7 Apr 2026
PKG_DBDIR = "/var/db/pkg";
PKG_CACHEDIR = "/var/cache/pkg";
PORTSDIR = "/usr/ports";
INDEXDIR = "";
INDEXFILE = "INDEX-15";
HANDLE_RC_SCRIPTS = false;
DEFAULT_ALWAYS_YES = false;
ASSUME_ALWAYS_YES = false;
REPOS_DIR [
    "/etc/pkg/",
    "/usr/local/etc/pkg/repos/",
]
PLIST_KEYWORDS_DIR = "";
SYSLOG = true;
DEVELOPER_MODE = false;
VULNXML_SITE = "https://vuxml.freebsd.org/freebsd/vuln.xml.xz";
FETCH_RETRY = 3;
PKG_PLUGINS_DIR = "/usr/local/lib/pkg/";
PKG_ENABLE_PLUGINS = true;
PLUGINS [
]
DEBUG_SCRIPTS = false;
PLUGINS_CONF_DIR = "/usr/local/etc/pkg/";
PERMISSIVE = false;
REPO_AUTOUPDATE = true;
NAMESERVER = "";
HTTP_USER_AGENT = "pkg/2.7.5";
EVENT_PIPE = "";
FETCH_TIMEOUT = 30;
UNSET_TIMESTAMP = false;
SSH_RESTRICT_DIR = "";
PKG_ENV {
}
PKG_SSH_ARGS = "";
DEBUG_LEVEL = 0;
ALIAS {
    all-depends = "query %dn-%dv";
    annotations = "info -A";
    build-depends = "info -qd";
    cinfo = "info -Cx";
    comment = "query -i \"%c\"";
    csearch = "search -Cx";
    desc = "query -i \"%e\"";
    download = "fetch";
    iinfo = "info -ix";
    isearch = "search -ix";
    prime-list = "query -e '%a = 0' '%n'";
    prime-origins = "query -e '%a = 0' '%o'";
    leaf = "query -e '%#r == 0' '%n-%v'";
    list = "info -ql";
    noauto = "query -e '%a == 0' '%n-%v'";
    options = "query -i \"%n - %Ok: %Ov\"";
    origin = "info -qo";
    orphans = "version -vRl?";
    provided-depends = "info -qb";
    rall-depends = "rquery %dn-%dv";
    raw = "info -R";
    rcomment = "rquery -i \"%c\"";
    rdesc = "rquery -i \"%e\"";
    required-depends = "info -qr";
    roptions = "rquery -i \"%n - %Ok: %Ov\"";
    sets = "info -d -C -x '^FreeBSD-set-'";
    shared-depends = "info -qB";
    show = "info -f -k";
    size = "info -sq";
    unmaintained = "query -e '%m = \"ports@FreeBSD.org\"' '%o (%w)'";
    runmaintained = "rquery -e '%m = \"ports@FreeBSD.org\"' '%o (%w)'";
}
CUDF_SOLVER = "";
SAT_SOLVER = "";
RUN_SCRIPTS = true;
CASE_SENSITIVE_MATCH = true;
LOCK_WAIT = 1;
LOCK_RETRIES = 5;
SQLITE_PROFILE = false;
WORKERS_COUNT = 0;
READ_LOCK = false;
IP_VERSION = 0;
AUTOMERGE = true;
MERGETOOL = "";
VERSION_SOURCE = "";
CONSERVATIVE_UPGRADE = true;
FORCE_CAN_REMOVE_VITAL = true;
PKG_CREATE_VERBOSE = false;
AUTOCLEAN = false;
AUTOREMOVE = false;
DOT_FILE = "";
DEBUG_SCHEDULER_DOT_FILE = "";
REPOSITORIES {
}
VALID_URL_SCHEME [
    "pkg+http",
    "pkg+https",
    "https",
    "http",
    "file",
    "ssh",
    "tcp",
]
WARN_SIZE_LIMIT = 1048576;
METALOG = "";
IGNORE_OSVERSION = false;
IGNORE_OSMAJOR = false;
BACKUP_LIBRARIES = false;
BACKUP_LIBRARY_PATH = "/usr/local/lib/compat/pkg";
PKG_TRIGGERS_DIR [
    "/usr/share/pkg/triggers/",
    "/usr/local/share/pkg/triggers",
]
PKG_TRIGGERS_ENABLE = true;
AUDIT_IGNORE_GLOB [
]
AUDIT_IGNORE_REGEX [
]
COMPRESSION_FORMAT = "";
COMPRESSION_LEVEL = -1;
REPO_ACCEPT_LEGACY_PKG = false;
FILES_IGNORE_GLOB [
]
FILES_IGNORE_REGEX [
]
SHLIB_PROVIDE_PATHS_NATIVE [
]
SHLIB_PROVIDE_PATHS_COMPAT_32 [
]
SHLIB_PROVIDE_PATHS_COMPAT_LINUX [
]
SHLIB_PROVIDE_PATHS_COMPAT_LINUX_32 [
]
SHLIB_PROVIDE_IGNORE_GLOB [
]
SHLIB_PROVIDE_IGNORE_REGEX [
]
SHLIB_REQUIRE_IGNORE_GLOB [
]
SHLIB_REQUIRE_IGNORE_REGEX [
]
PKG_DEBUG_FLAGS [
    "all",
]
COMPRESSION_THREADS = -1;
PKG_REINSTALL_ON_OPTIONS_CHANGE = true;
TRACK_LINUX_COMPAT_SHLIBS = false;
ABI = "FreeBSD:15:amd64";
ALTABI = "freebsd:15:x86:64";
OSVERSION = "1500068";


Repositories:
  FreeBSD-ports: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/quarterly",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
  FreeBSD-ports-kmods: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/kmods_quarterly_0",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
  FreeBSD-base: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/base_release_0",
    enabled         : no,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkgbase-15"
  }
  FreeBSD: {
    url             : "pkg+http://pkg.FreeBSD.org/FreeBSD:15:amd64/latest",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV"
  }
Ergänzung ()

War das so korrekt jetzt?


Code:
[root@<XXX> ~]# echo "FreeBSD-ports: { enabled: no }" >> /usr/local/etc/pkg/repos/FreeBSD.conf
[root@<XXX> ~]# echo "FreeBSD-ports-kmods: { enabled: no }" >> /usr/local/etc/pkg/repos/FreeBSD.conf
[root@<XXX> ~]# cat /usr/local/etc/pkg/repos/FreeBSD.conf
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: yes
}
FreeBSD-ports: { enabled: no }
FreeBSD-ports-kmods: { enabled: no }
[root@<XXX> ~]# pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
[root@<XXX> ~]# pkg upgrade
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking for upgrades (2 candidates): 100%
Processing candidates (2 candidates): 100%
The following 2 package(s) will be affected (of 0 checked):

Installed packages to be UPGRADED:
        glib-bootstrap: 2.84.4,2 -> 2.86.4,2 [FreeBSD]
        tcl86: 8.6.17 -> 8.6.18_1 [FreeBSD]

Number of packages to be upgraded: 2

5 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/2] Fetching glib-bootstrap-2.86.4,2: 100%  2910 KiB   3.0 MB/s    00:01
[2/2] Fetching tcl86-8.6.18_1: 100%  2604 KiB   2.7 MB/s    00:01
Checking integrity... done (0 conflicting)
[1/2] Upgrading glib-bootstrap from 2.84.4,2 to 2.86.4,2...
[1/2] Extracting glib-bootstrap-2.86.4,2: 100%
[2/2] Upgrading tcl86 from 8.6.17 to 8.6.18_1...
[2/2] Extracting tcl86-8.6.18_1: 100%
[root@<XXX> ~]#
 
Zuletzt bearbeitet:
Als root vi /usr/local/etc/pkg/repos/FreeBSD.conf
den Abschnitt FreeBSD:15:amd64/latest
von Enable Yes auf No stellen sollte das Problem lösen.
 
Wieso denn Latest auf No? Ich will doch Latest Updates?

Ich hab jetzt:


Code:
FreeBSD-ports: { enabled: no }
FreeBSD-ports-kmods: { enabled: no }
 
  • Gefällt mir
Reaktionen: Linuxfreakgraz
Sieht gut aus, aber was auch die richtige Lösung, FreeBSD-ports und FreeBSD-ports-kmods zu deaktivieren? Oder renne ich damit später in andere Probleme?
 
Ich hab gerade nicht auf dem Schirm, was bei Dir jetzt aktuell für pkg als Repository definiert ist.
Grundsätzlich gibts ja zwei Verzeichnisse/Dateien, wo die definiert sind.
Einmal /etc/pkg/FreeBSD.conf
und einmal /usr/local/etc/pkg/repos/

Wobei /etc/pkg/FreeBSD.conf der default ist der benutzt wird (dort sind per Voreinstellung die quarterly-Packages konfiguriert), wenn /usr/local/etc/pkg/repos/ leer ist. Ansonsten halt die Dateien unter /usr/local/etc/pkg/repos/

Kannst ja noch mal den Inhalt der Dateien posten, dann sind wir sicher darüber wie überhaupt der jetzige Stand auf Deinem System ist.
 
  • Gefällt mir
Reaktionen: CoMo
Code:
cat /etc/pkg/FreeBSD.conf
#
# To disable a repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file, e.g.:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo "FreeBSD-ports: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
#   echo "FreeBSD-ports-kmods: { enabled: no }" >> /usr/local/etc/pkg/repos/FreeBSD.conf
#
# Note that the FreeBSD-base repository is disabled by default.
#

FreeBSD-ports: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/quarterly",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}
FreeBSD-ports-kmods: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_quarterly_${VERSION_MINOR}",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}
FreeBSD-base: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/base_release_${VERSION_MINOR}",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkgbase-${VERSION_MAJOR}",
  enabled: no
}

Code:
cat /usr/local/etc/pkg/repos/*
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: yes
}
FreeBSD-ports: { enabled: no }
FreeBSD-ports-kmods: { enabled: no }

Ich meine mich zu erinnern, dass ich die /usr/local/etc/pkg/repos/FreeBSD.conf vor Jahren mal angelegt habe, um irgendein Update-Problem zu lösen. Das System hat schon den Updatepfad FreeBSD 13 -> 14 -> 15 hinter sich.
 
Ah ok. Du nutzt also das latest-Repository.

Das kmod-Repository würde ich auf jeden Fall noch aktivieren. Da sind (externe) Kernelmodule drin. Unter anderem auch die Grafiktreiber und so ein Kram.

Insofern würde ich Deine /usr/local/etc/pkg/repos/FreeBSD.conf ergänzen zu:
Code:
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: yes
}
FreeBSD-ports: { enabled: no }
FreeBSD-ports-kmods: { enabled: no }

FreeBSD-kmods: {
        url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_latest",
        mirror_type: "srv",
        signature_type: "fingerprints",
        fingerprints: "/usr/share/keys/pkg",
        enabled: true
}
 
  • Gefällt mir
Reaktionen: CoMo und Linuxfreakgraz
Hm das wirft mir dann einen Fehler. Habe abgebrochen.

Code:
pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
Updating FreeBSD-kmods repository catalogue...
pkg: Repository FreeBSD-kmods has a wrong packagesite, need to re-create database
Fetching meta.conf: 100%     179 B   0.2 kB/s    00:01
Fetching data: 100%    35 KiB  36.2 kB/s    00:01
Processing entries:   0%
Newer FreeBSD version for package wifi-firmware-mt7601u-kmod:
To ignore this error set IGNORE_OSVERSION=yes
- package: 1500503
- running userland: 1500068
Ignore the mismatch and continue? [y/N]:
pkg: repository FreeBSD-kmods contains packages for wrong OS version: FreeBSD:15:amd64
Processing entries:   0%
Unable to update repository FreeBSD-kmods
Error updating repositories!

Das ist allerdings ein KVM VPS bei einem Hoster. Mit WiFi kann ich da eh nix anfangen.
 

Ähnliche Themen

  • Artikel Artikel
Antworten
14
Aufrufe
1.841
tty_ghost
T
  • Artikel Artikel
Antworten
11
Aufrufe
1.471
Zurück
Oben