Open ccmywish opened 1 year ago
2023-09-24
今天重新实现了
freebsd-pkg
换源代码freebsd-ports
换源代码有几个问题:
freebsd-pkg
源 有没有 http 和 https 的问题?freebsd-ports
的方式,这种并没有在你们的文档中记载,这种可行吗?选用哪一种最合适?freebsd-update
源目前的状况如何?@ykla
security/ca_root_nss
这个包然后才能把软件源里的 http
改为 https
;MASTER_SITE_OVERRIDE?=https://mirrors.cernet.edu.cn/FreeBSD-ports/distfiles/${DIST_SUBDIR}/
写入 /etc/make.conf
。设置了这个源后就会在指定镜像站下载源代码包而无需再去 Port 指定的作者提供的最初始的链接地址去拉取源码包。在 FreeBSD 上要使用 Ports 安装 xorg,需要:①先拉取 Ports,② 进入 Ports 路径 cd /usr/ports/X11/xorg
③执行 make install clean
自动下载源码包打补丁进行编译等。freebsd-update
源,该源价值也不大,因为目前的升级文件是由几千个到上万个不等的小文件组成的,在有境内源的时候我测试过升级一个同一个系统所需要的时间相差不大,几乎一样。需要注意的是
nju 的源并不能使用 git 拉取 Ports。他没有设置 git。
更换境内 pkg 源时,需要设置 url: "http://mirrors.163.com/freebsd-pkg/${ABI}/quarterly",
时,必须删掉自带的 pkg+
。
quarterly
和 latest
是两个源。前者是一个季度更新一次,后者是滚动更新的。(除了 release 其他版本都只有 latest
)
FreeBSD 基本系统并不自带 gmake,基本系统只自带 clang + llvm.
@ykla
Port 源是指拉取源代码包的源
nju 的源并不能使用 git 拉取 Ports。他没有设置 git
更换境内 pkg 源时,需要删掉自带的 pkg+
quarterly
和latest
是两个源。前者是一个季度更新一次,后者是滚动更新的
chsrc
只使用了 /freebsd-pkg/${ABI}/latest
你看可以吗FreeBSD 基本系统并不自带
gmake
make
命令吗?make
是alias到bmake
上了吗?FreeBSD自带的那个make(非gmake)可以运行我们的Makefile
吗?还是说,FreeBSD 根本没有任何 make
?/usr/ports
和 /usr/local/etc
这些路径都是用户级别(bsdcn.org文档中写的)的吗?也就是说不需要 root
权限是吗?这样的话,是否可以完全不需要 sudo
,即可完成换源?
@ykla
Port 源是指拉取源代码包的源
- [x] 已指定
nju 的源并不能使用 git 拉取 Ports。他没有设置 git
- [x] 已解决
更换境内 pkg 源时,需要删掉自带的 pkg+
- [x] 已解决
quarterly
和latest
是两个源。前者是一个季度更新一次,后者是滚动更新的
- [ ] 现在
chsrc
只使用了/freebsd-pkg/${ABI}/latest
你看可以吗FreeBSD 基本系统并不自带
gmake
- [ ] 请问有
make
命令吗?make
是alias到bmake
上了吗?FreeBSD自带的那个make(非gmake)可以运行我们的Makefile
吗?还是说,FreeBSD 根本没有任何make
?其他问题
/usr/ports
和/usr/local/etc
这些路径都是用户级别(bsdcn.org文档中写的)的吗?也就是说不需要root
权限是吗?这样的话,是否可以完全不需要sudo
,即可完成换源?
root@ykla:~/chsrc # ls -aL /usr/bin/make
/usr/bin/make
root@ykla:~/chsrc # ls -aL /usr/bin/bmake
/usr/bin/bmake
root@ykla:~/chsrc # make
make: "/root/chsrc/Makefile" line 12: Invalid line type
make: "/root/chsrc/Makefile" line 14: Invalid line type
make: "/root/chsrc/Makefile" line 15: Invalid line type
make: "/root/chsrc/Makefile" line 16: warning: duplicate script for target "ifeq" ignored
make: "Makefile" line 13: warning: using previous script for "ifeq" defined here
make: "/root/chsrc/Makefile" line 17: Invalid line type
make: "/root/chsrc/Makefile" line 18: Invalid line type
make: "/root/chsrc/Makefile" line 19: warning: duplicate script for target "ifeq" ignored
make: "Makefile" line 13: warning: using previous script for "ifeq" defined here
make: "/root/chsrc/Makefile" line 19: warning: duplicate script for target "(,)" ignored
make: "Makefile" line 13: warning: using previous script for "(,)" defined here
make: "/root/chsrc/Makefile" line 20: Invalid line type
make: Fatal errors encountered -- cannot continue
make: stopped in /root/chsrc
root@ykla:~/chsrc #
root@ykla:~/chsrc # ls -al /usr/ports
total 9
drwxr-xr-x 2 root wheel 2 Aug 25 07:14 .
drwxr-xr-x 15 root wheel 15 Aug 18 21:01 ..
root@ykla:~/chsrc # ls -al /usr/local/etc
total 39
drwxr-xr-x 9 root wheel 13 Sep 9 15:42 .
drwxr-xr-x 13 root wheel 13 Sep 9 14:50 ..
drwxr-xr-x 2 root wheel 4 Sep 9 15:42 bash_completion.d
drwxr-xr-x 2 root wheel 6 Sep 9 14:50 dbus-1
drwxr-xr-x 2 root wheel 4 Sep 9 15:42 git
drwxr-xr-x 2 root wheel 3 Aug 25 07:23 man.d
drwxr-xr-x 5 root wheel 5 Aug 25 07:21 periodic
-rw-r--r-- 1 root wheel 2392 Aug 26 09:31 pkg.conf
-rw-r--r-- 1 root wheel 2392 Aug 26 09:31 pkg.conf.sample
drwxr-xr-x 2 root wheel 4 Sep 9 15:42 rc.d
drwxr-xr-x 2 root wheel 4 Aug 25 07:23 ssl
-rw-r--r-- 1 root wheel 4945 Aug 26 23:01 wgetrc
-rw-r--r-- 1 root wheel 4945 Aug 26 23:01 wgetrc.sample
root@ykla:~/chsrc #
建议同时给出设置季度分支的命令。默认可以是 latest。
FreeBSD 不自带 sudo。
假设当前目录中 abc.txt
文件不存在,ee abc.txt
这个命令是创建并打开一个文件,还是只创建一个文件?
请参考 https://gitee.com/RubyMetric/chsrc#bsd 使用 chsrc
,看看能否编译运行。若能运行,则接着使用 chsrc set freebsd
和其他你想要换源的,看看能不能工作 😶🌫️
编译没有错误。使用命令应为 ./chsrc set freebsd
- ee abc.txt
ee abc.txt
是创建并打开一个文件。
ustc: {
url: "http://mirrors.ustc.edu.cn/freebsd-pkg/${ABI}/latest",
mirror_type: "srv",
signature_type: "none",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
部分源没有 latest 或不再更新,另请见附图:http://pkg.freebsd.org/
另外您的提示都是中文,在 tty 会乱码,FreeBSD 默认没有中文字体。FreeBSD 默认安装是没有任何 GUI 的。也不会预装 XORG。如图:
还有支持centos换源的计划么?
@willemsestan
你好,请参考 CentOS (Stream) Recipe Challenge! https://github.com/RubyMetric/chsrc/issues/48
为了更好的帮助和服务 FreeBSD 中文社区,我们将在这里持续讨论 FreeBSD 的换源实现情况
上述地址可能随代码的更新而代码行变动,我尽量更新