Comments (3)
I think this behavior is intentional(?), as pkgdb_check_access()
only returns error codes, and doesn't print standard error messages. This issue also exists in some other commands as well (see #2211).
A simple "fix" can be done by adding a warning message (using warn(3) or perror(3)) whenever faccessat(3) fails.
root@freebsd:/home/rilysh/pkg # ./src/pkg install abc
pkg: faccessat: Operation not permitted
root@freebsd:/home/rilysh/pkg # echo $?
1
I'm not sure, if it's required in most cases, as you can always check for returned errors. Although I agree, having a clear error message is much better than just relying on returned values.
from pkg.
Well, this can't be intentional, because it creates UX from hell for the user. And even if the user is not just user but sysadmin, then bare faccessat: Operation not permitted
is stil not enough - yopu want to know which file caused the problem. So that it can be fixed without consulting pkg
sources. Because user do not call routines to check for error codes, user calls e.g. pkg upgrade
.
So. The only debatable thing here is where to insert reporting to user, and by which function - this is what pkg
maintainers know better than bugreporter.
from pkg.
Adding it in pkgdb_check_access() function is just fine. However, before any PR, it will be better to get some attention from maintainers with this issue.
from pkg.
Related Issues (20)
- [feature suggestion] pkg should preserve packages that it deletes temporaily when they are not currently available in the binary package database HOT 5
- pkg-version: fails to enumerate subpackages (unlike flavors) HOT 1
- List packages to be removed last.
- Not same data whenuse `pkg audit --raw=json` with `-q` and without HOT 2
- multi-repo: provide PPA like functionality where a single-package-repo pulls dependencies from elsewhere HOT 1
- multi-repo: pkg install package-name and pkg install origin/package-name come to different conclusions HOT 4
- Install packages from local files: archive_read_open_filename((null)): Failed to open '(null)' HOT 2
- Override for the fingerprints directory [jail bootstrapping] HOT 1
- pkg 1.21.0 segfaults during upgrade of nsd , redis HOT 6
- incorrect relative path lookups in pkg db code
- Unable to use pkg update after disk filled up
- FreeBSD 13.1 is EOL, switch to zstd? HOT 3
- `pkg unlock -a` does not work
- Package extraction error: chmod failing due to full file path being cut off
- security_daily_compat_var has been removed from -CURRENT HOT 1
- Adding link flags for the static version HOT 2
- JSON output format change
- no such table: packages HOT 6
- pkg-update(8) with --repository for a single repo should not report "All repositories are up to date."
- Poor --debug output when HTTP redirects are not used HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pkg.