mirror of
https://github.com/safedep/pmg.git
synced 2026-08-03 07:24:09 +02:00
v1 owns one trust mechanism: the system trust store. Every user and every program that reads it gets the proxy CA with no configuration. Programs that carry their own certificate list are documented rather than managed, because each keeps that list in a different place and format. ca install now calls truststore.Install with system scope and verifies the result. ca remove untrusts before deleting, since a CA left trusted after its files are gone is worse than one never installed: nothing points at it, but whoever holds the old key can still intercept every user. Only the public certificate reaches the trust store. The private key stays 0600 under the proxy user, which is the entire security boundary here. Deletes npm_ca.go and the npm half of ca.go: the per user cafile handling, the previous value save and restore, the read back verification, and the --npm-user and --npm-bin flags. Verified on Ubuntu with no per tool configuration anywhere: curl without --cacert, npm without cafile, and a malicious package still blocked with 403. Removal confirmed to leave zero matches in ca-certificates.crt.