Archlinux loong64 2022.09
yetist
loong64
- 选择EFI System Portition 进去就黑屏
- 选择EFI System Portition 2 会进入Archlinux 6月份安装的硬盘引导 (可以进入系统)
yetist
loong64
yetist 好的 等新固件出来再试试
yetist
2022.10.21日更新:
- 源码仓库同步到 archlinux 上游 20221002 snapshot 版本。
- Archlinux 开始滚动升级,有 1000+ 软件包进入 testing 仓库。
- testing 仓库稳定一段时间后会进入稳定仓库(core、extra、community)。
- 本次进入测试仓库的主要更新有,boost 1.79->1.80,影响大量软件重构;qt 1.15.5-> 5.15.6, glib 2.72->2.74, gtk 4.6.7->4.8.1 等等。
- 本次进入测试仓库的新软件有, gimp、mplayer、paru( 一个rust 编写的 yay 的替代品)、xray 等。
- bugfix: 修复man命令无显示的问题
- iso更新到 archlinux-2022.10.21.1-loong64.iso,
对 archinstall 进行了修复,并翻译了中文界面,安装盘启动后可运行命令setup
来尝试,如有问题请及时反馈结果。
重要提示,一般用户建议只启用稳定仓库,对于有一定动手能力的同学(比如了解并能灵活运用 -Syuu 和 -Syu 切换仓库对软件升降级),可开启 testing 仓库进行测试,并及时反馈问题。
yetist
发几张安装测试图片:
loong64
新固件可以引导iso了
archinstall安装选择 驱动器报错
Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Exit code for blkid -p -o export was: 512
Not a loop device, trying uevent rules.
Traceback (most recent call last):
File "/usr/bin/archinstall", line 8, in <module>
sys.exit(run_as_a_module())
File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
script.execute()
File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
self.spec.loader.exec_module(sys.modules[self.namespace])
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
ask_user_questions()
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
global_menu.run()
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
if not self._process_selection(value):
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
return self.exec_option(config_name, selector)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
result = selector.func(presel_val)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
lambda preset: self._select_harddrives(preset),
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
harddrives = select_harddrives(old_harddrives)
File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
hard_drives = all_blockdevices(partitions=False).values()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
instances[path] = BlockDevice(path, path_info)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
self._load_partitions()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
self._partition_info = self._fetch_information()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
sfdisk_info = self._call_sfdisk()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
sfdisk_info = json.loads(output)
File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
www
牛逼
yetist
loong64
你试试今天新出的iso看行不行?
loong64
yetist 好的,我试试 😀
yetist
这里可能有一个bug,确认方法:
在 liveusb 环境中,运行一下命令 sfdisk --json /dev/sda
或 sfdisk --json /dev/sdb
,看看输出信息是不是有效的json格式,如果输出不是, 比如 sfdisk 输出了其他警告信息,比如说这个盘的大小和预期不一致啥的。
解决办法:
修改 /usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py
文件 163 行,将 sfdisk --json
修改为 sfdisk -q --json
试一下
loong64
22号iso
Traceback (most recent call last):
File "/usr/bin/archinstall", line 8, in <module>
sys.exit(run_as_a_module())
File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
script.execute()
File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
self.spec.loader.exec_module(sys.modules[self.namespace])
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
ask_user_questions()
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
global_menu.run()
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
if not self._process_selection(value):
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
return self.exec_option(config_name, selector)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
result = selector.func(presel_val)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
lambda preset: self._select_harddrives(preset),
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
harddrives = select_harddrives(old_harddrives)
File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
hard_drives = all_blockdevices(partitions=False).values()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
instances[path] = BlockDevice(path, path_info)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
self._load_partitions()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
self._partition_info = self._fetch_information()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
sfdisk_info = self._call_sfdisk()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
sfdisk_info = json.loads(output)
File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
loong64
格式对着
sfdisk --json /dev/nvme0n1
{
"partitiontable": {
"label": "gpt",
"id": "FBDD048C-322E-DD48-AE6C-41A8A7130A20",
"device": "/dev/nvme0n1",
"unit": "sectors",
"firstlba": 2048,
"lastlba": 1000215182,
"sectorsize": 512,
"partitions": [
{
"node": "/dev/nvme0n1p1",
"start": 2048,
"size": 2097152,
"type": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B",
"uuid": "038DA892-3104-2B48-AE8B-B7033387D7DE"
},{
"node": "/dev/nvme0n1p2",
"start": 2099200,
"size": 209715200,
"type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4",
"uuid": "9EFBDE6C-576F-B246-96EA-A181964C0C72"
},{
"node": "/dev/nvme0n1p3",
"start": 211814400,
"size": 788400128,
"type": "0FC63DAF-8483-4772-8E79-3D69D8477DE4",
"uuid": "F787C49C-61D2-3C4E-AC70-8D5408411454"
}
]
}
}
yetist
所有盘,关键是 sfdisk --json <你的U盘设备>
loong64
root@archiso ~ # sfdisk --json /dev/sda
GPT PMBR size mismatch (1097655 != 125927423) will be corrected by write.
{
"partitiontable": {
"label": "gpt",
"id": "32323032-3031-4232-B030-303635323332",
"device": "/dev/sda",
"unit": "sectors",
"firstlba": 64,
"lastlba": 125927360,
"table-length": "248",
"sectorsize": 512,
"partitions": [
{
"node": "/dev/sda1",
"start": 64,
"size": 1076448,
"type": "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7",
"uuid": "32323032-3031-4232-B031-303635323332",
"name": "ISO9660",
"attrs": "RequiredPartition GUID:60"
},{
"node": "/dev/sda2",
"start": 1076512,
"size": 20480,
"type": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B",
"uuid": "32323032-3031-4232-B032-303635323332",
"name": "Appended2"
},{
"node": "/dev/sda3",
"start": 1096992,
"size": 600,
"type": "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7",
"uuid": "32323032-3031-4232-B033-303635323332",
"name": "Gap1",
"attrs": "RequiredPartition GUID:60"
}
]
}
}
yetist
对,就是这个原因了。用 sfdisk -q --json 看看第一行会不会消失?如果可以消失,请按前面说的办法修改一下代码
loong64
改完还是报错
Traceback (most recent call last):
File "/usr/bin/archinstall", line 8, in <module>
sys.exit(run_as_a_module())
File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
script.execute()
File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
self.spec.loader.exec_module(sys.modules[self.namespace])
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 282, in <module>
ask_user_questions()
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 107, in ask_user_questions
global_menu.run()
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 344, in run
if not self._process_selection(value):
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 361, in _process_selection
return self.exec_option(config_name, selector)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/selection_menu.py", line 381, in exec_option
result = selector.func(presel_val)
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 79, in <lambda>
lambda preset: self._select_harddrives(preset),
File "/usr/lib/python3.10/site-packages/archinstall/lib/menu/global_menu.py", line 345, in _select_harddrives
harddrives = select_harddrives(old_harddrives)
File "/usr/lib/python3.10/site-packages/archinstall/lib/user_interaction/system_conf.py", line 52, in select_harddrives
hard_drives = all_blockdevices(partitions=False).values()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/helpers.py", line 260, in all_blockdevices
instances[path] = BlockDevice(path, path_info)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 53, in __init__
self._load_partitions()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/blockdevice.py", line 131, in _load_partitions
self._partitions[part_id] = Partition(root + part_id, block_device=self, part_id=part_id)
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 70, in __init__
self._partition_info = self._fetch_information()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 179, in _fetch_information
sfdisk_info = self._call_sfdisk()
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/partition.py", line 166, in _call_sfdisk
sfdisk_info = json.loads(output)
File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
1 root@archiso ~ #
REDEAST
$ make
CALL scripts/checksyscalls.sh
CC arch/loongarch/mm/tlb.o
{standard input}: Assembler messages:
{standard input}:354: Error: Unable to parse register name $a1
{standard input}:355: Error: Unable to parse register name $t1
{standard input}:529: Error: Unable to parse register name $a0
{standard input}:596: Error: Unable to parse register name $a1
{standard input}:597: Error: Unable to parse register name $t0
{standard input}:626: Error: Unable to parse register name $a0
make[3]: *** [scripts/Makefile.build:250: arch/loongarch/mm/tlb.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/loongarch/mm] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/loongarch] Error 2
make: *** [Makefile:1992: .] Error 2
It passed in gentoo
yetist
给内核源码打上这个补丁就可以编译通过了:https://github.com/yetist/linux/commit/edc1afd7397cdd659ab5a9dcf964615c38da7056
Archlinux 上的内核源码包:
https://github.com/loongarchlinux/core/blob/2022.10/linux/PKGBUILD
yetist
这应该是 archinstall 的上游bug,等我回头研究一下吧。原因应该比较明确。
REDEAST
yetist Thanks!
loong64
yetist 好的 谢谢
loong64
loong64
按回车键继续。
! Formatting [BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1000MB+511GB, bus_type=nvme)] in 5....4....3....2....1....
Creating a new partition label on /dev/nvme0n1
Adding partition to BlockDevice(/dev/nvme0n1, size=476.9GB, free_space=1000MB+511GB, bus_type=nvme), 1MiB->512MiB
Could not find the new PARTUUID after adding the partition.
Previous partitions: []
New partitions: {None}
Traceback (most recent call last):
File "/usr/bin/archinstall", line 8, in <module>
sys.exit(run_as_a_module())
File "/usr/lib/python3.10/site-packages/archinstall/__init__.py", line 311, in run_as_a_module
script.execute()
File "/usr/lib/python3.10/site-packages/archinstall/lib/profiles.py", line 195, in execute
self.spec.loader.exec_module(sys.modules[self.namespace])
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 296, in <module>
perform_filesystem_operations()
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 130, in perform_filesystem_operations
with archinstall.Filesystem(drive, mode) as fs:
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 44, in __exit__
raise args[1]
File "/usr/lib/python3.10/site-packages/archinstall/examples/guided.py", line 131, in perform_filesystem_operations
fs.load_layout(archinstall.arguments['disk_layouts'][drive.path])
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 89, in load_layout
partition['device_instance'] = self.add_partition(partition.get('type', 'primary'),
File "/usr/lib/python3.10/site-packages/archinstall/lib/disk/filesystem.py", line 285, in add_partition
raise DiskError(f"Could not add partition using: {parted_string}")
archinstall.lib.exceptions.DiskError: Could not add partition using: /dev/nvme0n1 mkpart primary fat32 1MiB 512MiB