macos安装pkgsrc
优势
# 有二进制源(包不算多,但是nixpackage每次安装都编译太烦了)
# bsd系统比较严谨的特点
# 软件配置等在/opt/pkg/share/examples有示例
安装
# 下载,我是Mojave (10.14.6) or Catalina
wget https://pkgsrc.joyent.com/packages/Darwin/bootstrap/bootstrap-macos14-trunk-x86_64-20200716.tar.gz
# 手动复制安装
tar xvf bootstrap-macos14-trunk-x86_64-20200716.tar.gz
# 文件解压之后的目录结构
╭─jcleng@bogon /Users/jcleng/work/pkgsrc ‹system›
╰─$ tree -L 3
.
├── bootstrap-macos14-trunk-x86_64-20200716.tar.gz
├── opt
│ └── pkg
│ ├── bin
│ ├── etc
│ ├── include
│ ├── lib
│ ├── libdata
│ ├── libexec
│ ├── sbin
│ └── share
└── private
├── etc
│ ├── manpaths.d
│ └── paths.d
└── var
└── db
└── pkgin
# 开始移动文件
mv ./opt/pkg/ /opt
sudo chmod 777 /opt/pkg
# 其它文件也要移动
mv ./private/etc/manpaths.d/ /private/etc/
sudo chmod 777 /private/etc/manpaths.d
mv ./private/etc/paths.d/ /private/etc/
sudo chmod 777 /private/etc/paths.d
mv ./private/var/db/pkgin /private/var/db/
sudo chmod 777 /private/var/db/pkgin
sudo chown -R jcleng:wheel /opt/pkg
# 最后把 /opt/pkg/bin 加入变量环境即可
/usr/libexec/path_helper
配置源
$ find /opt/pkg/ -name repositories.conf\*
/opt/pkg//etc/pkgin/repositories.conf
/opt/pkg//.pkgdb.refcount/files/opt/pkg/etc/pkgin/repositories.conf
/opt/pkg//share/examples/pkgin/repositories.conf.example
code /opt/pkg//etc/pkgin/repositories.conf
使用
# 搜索
pkgin search php7
# 安装
pkgin install php72-fpm-7.2.34nb5
installing php72-fpm-7.2.34nb5...
php72-fpm-7.2.34nb5: Creating user ``fpm''
php72-fpm-7.2.34nb5: copying /opt/pkg/share/examples/php/php-fpm.conf to /opt/pkg/etc/php-fpm.conf
php72-fpm-7.2.34nb5: copying /opt/pkg/share/examples/php/php-fpm.d/www.conf to /opt/pkg/etc/php-fpm.d/www.conf
===========================================================================
The following files should be created for php72-fpm-7.2.34nb5:
/etc/rc.d/php_fpm (m=0755)
[/opt/pkg/share/examples/rc.d/php_fpm]
===========================================================================
===========================================================================
$NetBSD: MESSAGE,v 1.2 2014/03/18 10:00:51 adam Exp $
For more information about PHP FastCGI Process Manager see FPM docs at:
http://php.net/manual/en/book.fpm.php
For NetBSD consider adding something like following to /etc/newsyslog.conf:
/var/log/php-fpm.log 640 7 * * BZ /var/run/php-fpm.pid SIGUSR1
===========================================================================
pkg_install warnings: 0, errors: 0
reading local summary...
processing local summary...
marking php72-fpm-7.2.34nb5 as non auto-removable
# 安装位置
/opt/pkg/sbin/php-fpm
# 详情
cat /opt/pkg/share/examples/rc.d/php_fpm
# 不使用fpm使用php-cgi
php-cgi -b 127.0.0.1:9000 -c "php.ini";