How does pkg-upgrade() know which pkgs need to be upgraded?
pkg
basically uses a sqlite database at /var/db/pkg/local.sqlite for that purpose.They may/can be used on different systems if the Makefile f.e. makes use of "NO_BUILD" or "NO_ARCH", but: The dependencies of ports can change on newer versions (or maintainers temper), so they will differ over the time; Expect problems if you're putting together old packages and newer build packages (even if the portversion doesn't differ) - you may ran into false dependencies, even if pkg says everything's fine. It's no good idea to carry old packages from outdated FreeBSD versions to newer installations. It may work, but mustn't, so: Use packages built for FreeBSD 12 for FreeBSD 12, and packages built for FreeBSD 13 for FreeBSD 13. But do not mix them. There's nothing in the package repositories which can evaluate this.I'm basically interested in manually putting together my own local pkg repo, but am unclear as to whether pkgs with different ABI's need their own repositories. I guess some pkgs will work with different releases of FreeBSD and some won't.
That file can be read. You're using Midnight Commander, so just enter your repositories packagesite.txz file, move to the (only) included file packagesite.yaml, and press [F3].Can you tell me what info packagesite.yaml provides?
That file can be read. You're using Midnight Commander, so just enter your repositories packagesite.txz file, move to the (only) included file packagesite.yaml, and press [F3].
Thanks, I can view the file I just wondered where I could find a record layout for the lines.
{"keyword1":"value","keyword2":"value", …}
{"keyword1":"value","keyword2":"value", …}
…
pkg info
in (afair three) different ways (once for all packages, twice for every package).packagesite.txz similarly contains at least one file packagesite.yaml,
which is a YAML document listing selected metadata for each of the pack-
ages in the repository. This is the key file containing the working data
used by pkg(8) and includes the run-time dependencies for each package,
plus shared library dependencies and similar data that are used by pkg(8)
to solve package dependency problems.
Those yaml files aren't actually yaml but JSON files.
[
{
"Naam":"JSON",
"Type":"Gegevensuitwisselingsformaat",
"isProgrammeertaal":false,
"Zie ook":[
"XML",
"ASN.1"
]
},
{
"Naam":"JavaScript",
"Type":"Programmeertaal",
"isProgrammeertaal":true,
"Jaar":1995
}
]