mirror of
https://github.com/ivabus/asahi-opensuse
synced 2024-11-21 22:45:06 +03:00
Push pre-release change
This commit is contained in:
parent
3b90d2623c
commit
5af9fd942c
18 changed files with 197 additions and 326 deletions
15
DOCS.md
15
DOCS.md
|
@ -1,7 +1,14 @@
|
||||||
# Docs
|
# Docs
|
||||||
|
|
||||||
Build image with kiwi-ng
|
Use `kiwi/build-all.sh` for building all images for installer.
|
||||||
|
|
||||||
```
|
## All images
|
||||||
kiwi-ng -profile=<image_profile> --color-output system build --description ./ --target-dir ./outdir
|
|
||||||
```
|
- Tumbleweed-JeOS
|
||||||
|
- Tumbleweed-KDE
|
||||||
|
- Tumbleweed-GNOME
|
||||||
|
- Tumbleweed-XFCE
|
||||||
|
- Leap-JeOS
|
||||||
|
- Leap-KDE
|
||||||
|
- Leap-GNOME
|
||||||
|
- Leap-XFCE
|
4
TODO.md
4
TODO.md
|
@ -5,9 +5,9 @@
|
||||||
- [x] Build Tumbleweed image using kiwi-ng
|
- [x] Build Tumbleweed image using kiwi-ng
|
||||||
- [x] Prepare repos with necessary packages (kernel, m1n1, u-boot, asahi-scripts, etc.)
|
- [x] Prepare repos with necessary packages (kernel, m1n1, u-boot, asahi-scripts, etc.)
|
||||||
- [x] Provide basic types of openSUSE (Leap, Tumbleweed) for installation.
|
- [x] Provide basic types of openSUSE (Leap, Tumbleweed) for installation.
|
||||||
|
- [x] Build installer (for use like general Asahi installer, ex. `curl https://ivabus.dev/suse | sh`)
|
||||||
|
- [x] Prepare basic (cli only, DE) rootfs images
|
||||||
------
|
------
|
||||||
- [ ] Prepare basic (cli only, DE) rootfs images
|
|
||||||
- [ ] Build installer (for use like general Asahi installer, ex. `curl https://ivabus.dev/suse | sh`)
|
|
||||||
- [ ] Test every type of installation
|
- [ ] Test every type of installation
|
||||||
- [ ] Document things
|
- [ ] Document things
|
||||||
- [ ] First release
|
- [ ] First release
|
||||||
|
|
|
@ -1,220 +0,0 @@
|
||||||
{
|
|
||||||
"os_list": [
|
|
||||||
{
|
|
||||||
"name": "openSUSE Tumbleweed KDE",
|
|
||||||
"default_os_name": "openSUSE Tumbleweed",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Tumbleweed GNOME",
|
|
||||||
"default_os_name": "openSUSE Tumbleweed",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Tumbleweed XFCE",
|
|
||||||
"default_os_name": "openSUSE Tumbleweed",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Tumbleweed base",
|
|
||||||
"default_os_name": "openSUSE Tumbleweed",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Leap KDE",
|
|
||||||
"default_os_name": "openSUSE Leap",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Leap GNOME",
|
|
||||||
"default_os_name": "openSUSE Leap",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Leap XFCE",
|
|
||||||
"default_os_name": "openSUSE Leap",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "openSUSE Leap base",
|
|
||||||
"default_os_name": "openSUSE Leap",
|
|
||||||
"boot_object": "m1n1.bin",
|
|
||||||
"next_object": "m1n1/boot.bin",
|
|
||||||
"package": "asahi-plasma-20221122-4.zip",
|
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"name": "EFI",
|
|
||||||
"type": "EFI",
|
|
||||||
"size": "500MB",
|
|
||||||
"format": "fat",
|
|
||||||
"volume_id": "0x2abf9f91",
|
|
||||||
"copy_firmware": true,
|
|
||||||
"copy_installer_data": true,
|
|
||||||
"source": "esp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Root",
|
|
||||||
"type": "Linux",
|
|
||||||
"size": "12GB",
|
|
||||||
"expand": true,
|
|
||||||
"image": "root.img"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -5,7 +5,7 @@
|
||||||
"default_os_name": "openSUSE Tumbleweed",
|
"default_os_name": "openSUSE Tumbleweed",
|
||||||
"boot_object": "m1n1.bin",
|
"boot_object": "m1n1.bin",
|
||||||
"next_object": "m1n1/boot.bin",
|
"next_object": "m1n1/boot.bin",
|
||||||
"package": "installer-suse.zip",
|
"package": "Tumbleweed-JeOS.zip.zip",
|
||||||
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
||||||
"partitions": [
|
"partitions": [
|
||||||
{
|
{
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
"type": "EFI",
|
"type": "EFI",
|
||||||
"size": "536870912B",
|
"size": "536870912B",
|
||||||
"format": "fat",
|
"format": "fat",
|
||||||
"volume_id": "0xa060cfc3",
|
"volume_id": "0x163ea456",
|
||||||
"copy_firmware": true,
|
"copy_firmware": true,
|
||||||
"copy_installer_data": true,
|
"copy_installer_data": true,
|
||||||
"source": "esp"
|
"source": "esp"
|
||||||
|
@ -27,7 +27,106 @@
|
||||||
{
|
{
|
||||||
"name": "Root",
|
"name": "Root",
|
||||||
"type": "Linux",
|
"type": "Linux",
|
||||||
"size": "2970595328B",
|
"size": "3426725888B",
|
||||||
|
"expand": true,
|
||||||
|
"image": "root.img"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "openSUSE Tumbleweed",
|
||||||
|
"default_os_name": "openSUSE Tumbleweed",
|
||||||
|
"boot_object": "m1n1.bin",
|
||||||
|
"next_object": "m1n1/boot.bin",
|
||||||
|
"package": "Tumbleweed-KDE.zip.zip",
|
||||||
|
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
||||||
|
"partitions": [
|
||||||
|
{
|
||||||
|
"name": "EFI",
|
||||||
|
"type": "EFI",
|
||||||
|
"size": "536870912B",
|
||||||
|
"format": "fat",
|
||||||
|
"volume_id": "0x22de729d",
|
||||||
|
"copy_firmware": true,
|
||||||
|
"copy_installer_data": true,
|
||||||
|
"source": "esp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Boot",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "1073741824B",
|
||||||
|
"image": "boot.img"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Root",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "3426725888B",
|
||||||
|
"expand": true,
|
||||||
|
"image": "root.img"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "openSUSE Tumbleweed",
|
||||||
|
"default_os_name": "openSUSE Tumbleweed",
|
||||||
|
"boot_object": "m1n1.bin",
|
||||||
|
"next_object": "m1n1/boot.bin",
|
||||||
|
"package": "Tumbleweed-GNOME.zip.zip",
|
||||||
|
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
||||||
|
"partitions": [
|
||||||
|
{
|
||||||
|
"name": "EFI",
|
||||||
|
"type": "EFI",
|
||||||
|
"size": "536870912B",
|
||||||
|
"format": "fat",
|
||||||
|
"volume_id": "0x2fdf3c2a",
|
||||||
|
"copy_firmware": true,
|
||||||
|
"copy_installer_data": true,
|
||||||
|
"source": "esp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Boot",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "1073741824B",
|
||||||
|
"image": "boot.img"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Root",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "3426725888B",
|
||||||
|
"expand": true,
|
||||||
|
"image": "root.img"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "openSUSE Tumbleweed",
|
||||||
|
"default_os_name": "openSUSE Tumbleweed",
|
||||||
|
"boot_object": "m1n1.bin",
|
||||||
|
"next_object": "m1n1/boot.bin",
|
||||||
|
"package": "Tumbleweed-XFCE.zip.zip",
|
||||||
|
"supported_fw": ["12.3", "12.3.1", "12.4"],
|
||||||
|
"partitions": [
|
||||||
|
{
|
||||||
|
"name": "EFI",
|
||||||
|
"type": "EFI",
|
||||||
|
"size": "536870912B",
|
||||||
|
"format": "fat",
|
||||||
|
"volume_id": "0x3d67bec6",
|
||||||
|
"copy_firmware": true,
|
||||||
|
"copy_installer_data": true,
|
||||||
|
"source": "esp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Boot",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "1073741824B",
|
||||||
|
"image": "boot.img"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Root",
|
||||||
|
"type": "Linux",
|
||||||
|
"size": "3426725888B",
|
||||||
"expand": true,
|
"expand": true,
|
||||||
"image": "root.img"
|
"image": "root.img"
|
||||||
}
|
}
|
||||||
|
|
14
kiwi/build-all.sh
Executable file
14
kiwi/build-all.sh
Executable file
|
@ -0,0 +1,14 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
mkdir -p installers
|
||||||
|
|
||||||
|
for distro in "Tumbleweed" "Leap"; do
|
||||||
|
for edition in "JeOS" "KDE" "GNOME" "XFCE"; do
|
||||||
|
rm -rf ./outdir-$distro-$edition
|
||||||
|
echo Building $distro-$edition
|
||||||
|
kiwi-ng --type=oem --profile=$distro-$edition --color-output system build --description ./ --target-dir ./outdir-$distro-$edition
|
||||||
|
./make-installer.sh outdir-$distro-$edition/asahi-opensuse.aarch64-0.0.1.raw $distro-$edition.zip
|
||||||
|
done
|
||||||
|
done
|
||||||
|
|
|
@ -26,8 +26,8 @@ passwd -l root
|
||||||
# Setup default services
|
# Setup default services
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
|
|
||||||
## Enable NetworkManager
|
## Enable wicked
|
||||||
systemctl enable NetworkManager.service
|
systemctl enable wicked.service
|
||||||
## Enable chrony
|
## Enable chrony
|
||||||
systemctl enable chronyd.service
|
systemctl enable chronyd.service
|
||||||
## Enable persistent journal
|
## Enable persistent journal
|
||||||
|
|
|
@ -15,10 +15,22 @@
|
||||||
<keytable>us</keytable>
|
<keytable>us</keytable>
|
||||||
<timezone>UTC</timezone>
|
<timezone>UTC</timezone>
|
||||||
<rpm-check-signatures>true</rpm-check-signatures>
|
<rpm-check-signatures>true</rpm-check-signatures>
|
||||||
<type image="oem" filesystem="btrfs" firmware="uefi" bootpartition="true" bootpartsize="1024" bootfilesystem="ext4" efipartsize="512" target_blocksize="4096">
|
<rpm-excludedocs>true</rpm-excludedocs>
|
||||||
|
<type image="oem" filesystem="btrfs" fsmountoptions="x-systemd.growfs,compress=zstd:1" btrfs_root_is_snapshot="true" firmware="uefi" bootpartition="true" bootpartsize="1024" bootfilesystem="ext4" efipartsize="512" target_blocksize="4096">
|
||||||
<bootloader name="grub2" console="gfxterm"/>
|
<bootloader name="grub2" console="gfxterm"/>
|
||||||
|
<systemdisk name="asahi">
|
||||||
|
<volume name="home"/>
|
||||||
|
<volume name="root"/>
|
||||||
|
<volume name="tmp"/>
|
||||||
|
<volume name="opt"/>
|
||||||
|
<volume name="srv"/>
|
||||||
|
<volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/>
|
||||||
|
<volume name="usr/local"/>
|
||||||
|
<volume name="var" copy_on_write="false"/>
|
||||||
|
</systemdisk>
|
||||||
<oemconfig>
|
<oemconfig>
|
||||||
<oem-resize>false</oem-resize>
|
<oem-resize>false</oem-resize>
|
||||||
|
<oem-skip-verify>true</oem-skip-verify>
|
||||||
</oemconfig>
|
</oemconfig>
|
||||||
</type>
|
</type>
|
||||||
</preferences>
|
</preferences>
|
||||||
|
@ -28,13 +40,19 @@
|
||||||
<profiles>
|
<profiles>
|
||||||
<profile name="Tumbleweed" description="Tumbleweed base"/>
|
<profile name="Tumbleweed" description="Tumbleweed base"/>
|
||||||
<profile name="Leap" description="Leap base"/>
|
<profile name="Leap" description="Leap base"/>
|
||||||
|
<profile name="Leap-JeOS" description="Leap JeOS">
|
||||||
|
<requires profile="Leap"/>
|
||||||
|
</profile>
|
||||||
<profile name="Leap-KDE" description="Leap with KDE desktop">
|
<profile name="Leap-KDE" description="Leap with KDE desktop">
|
||||||
<requires profile="Tumbleweed"/>
|
<requires profile="Leap"/>
|
||||||
</profile>
|
</profile>
|
||||||
<profile name="Leap-GNOME" description="Leap with GNOME desktop">
|
<profile name="Leap-GNOME" description="Leap with GNOME desktop">
|
||||||
<requires profile="Tumbleweed"/>
|
<requires profile="Leap"/>
|
||||||
</profile>
|
</profile>
|
||||||
<profile name="Leap-XFCE" description="Leap with XFCE desktop">
|
<profile name="Leap-XFCE" description="Leap with XFCE desktop">
|
||||||
|
<requires profile="Leap"/>
|
||||||
|
</profile>
|
||||||
|
<profile name="Tumbleweed-JeOS" description="Tumbleweed JeOS">
|
||||||
<requires profile="Tumbleweed"/>
|
<requires profile="Tumbleweed"/>
|
||||||
</profile>
|
</profile>
|
||||||
<profile name="Tumbleweed-KDE" description="Tumbleweed with KDE desktop">
|
<profile name="Tumbleweed-KDE" description="Tumbleweed with KDE desktop">
|
||||||
|
@ -49,7 +67,7 @@
|
||||||
</profiles>
|
</profiles>
|
||||||
<include from="this://./repos.xml"/>
|
<include from="this://./repos.xml"/>
|
||||||
<!-- Asahi repo -->
|
<!-- Asahi repo -->
|
||||||
<repository type="rpm-md" alias="asahi" sourcetype="baseurl" priority="1" imageinclude="true">
|
<repository type="rpm-md" alias="asahi" sourcetype="baseurl" priority="1">
|
||||||
<source path="https://storage.ivabus.dev/asahi-opensuse/repo/">
|
<source path="https://storage.ivabus.dev/asahi-opensuse/repo/">
|
||||||
<signing key="https://ivabus.dev/key.asc"/>
|
<signing key="https://ivabus.dev/key.asc"/>
|
||||||
</source>
|
</source>
|
||||||
|
@ -61,6 +79,7 @@
|
||||||
<package name="gawk"/>
|
<package name="gawk"/>
|
||||||
<package name="grep"/>
|
<package name="grep"/>
|
||||||
<package name="gzip"/>
|
<package name="gzip"/>
|
||||||
|
<package name="glibc"/>
|
||||||
<package name="glibc-locale"/>
|
<package name="glibc-locale"/>
|
||||||
<package name="cracklib-dict-full"/>
|
<package name="cracklib-dict-full"/>
|
||||||
<package name="ca-certificates"/>
|
<package name="ca-certificates"/>
|
||||||
|
@ -72,6 +91,7 @@
|
||||||
<package name="patterns-base-base"/>
|
<package name="patterns-base-base"/>
|
||||||
<package name="patterns-base-apparmor"/>
|
<package name="patterns-base-apparmor"/>
|
||||||
<package name="patterns-openSUSE-base"/>
|
<package name="patterns-openSUSE-base"/>
|
||||||
|
<package name="aaa_base-extras"/>
|
||||||
<package name="acl"/>
|
<package name="acl"/>
|
||||||
<package name="btrfsprogs"/>
|
<package name="btrfsprogs"/>
|
||||||
<package name="btrfsmaintenance"/>
|
<package name="btrfsmaintenance"/>
|
||||||
|
@ -92,9 +112,9 @@
|
||||||
<package name="rollback-helper"/>
|
<package name="rollback-helper"/>
|
||||||
<package name="snapper"/>
|
<package name="snapper"/>
|
||||||
<package name="firewalld"/>
|
<package name="firewalld"/>
|
||||||
|
<package name="wicked"/>
|
||||||
<package name="systemd"/>
|
<package name="systemd"/>
|
||||||
<package name="timezone"/>
|
<package name="timezone"/>
|
||||||
<package name="NetworkManager"/>
|
|
||||||
<package name="wpa_supplicant"/>
|
<package name="wpa_supplicant"/>
|
||||||
<package name="iproute2"/>
|
<package name="iproute2"/>
|
||||||
<package name="openssh"/>
|
<package name="openssh"/>
|
||||||
|
@ -109,7 +129,9 @@
|
||||||
<package name="yast2-firstboot"/>
|
<package name="yast2-firstboot"/>
|
||||||
</packages>
|
</packages>
|
||||||
<packages type="image">
|
<packages type="image">
|
||||||
<package name="kernel"/>
|
<package name="kernel-default"/>
|
||||||
|
<package name="kernel-asahi-dtbs"/>
|
||||||
|
<package name="kernel-firmware"/>
|
||||||
<package name="m1n1"/>
|
<package name="m1n1"/>
|
||||||
<package name="uboot-asahi"/>
|
<package name="uboot-asahi"/>
|
||||||
<package name="asahi-scripts"/>
|
<package name="asahi-scripts"/>
|
||||||
|
|
|
@ -16,8 +16,8 @@ requireCommands() {
|
||||||
}
|
}
|
||||||
|
|
||||||
date=$(date +%Y%m%d)
|
date=$(date +%Y%m%d)
|
||||||
image="${1:-outdir/asahi-opensuse.aarch64-0.0.1.raw}"
|
image="${1}"
|
||||||
package="installer-suse"
|
package="${2}"
|
||||||
|
|
||||||
if [ ! -r "$image" ]; then
|
if [ ! -r "$image" ]; then
|
||||||
fail "$image does not exist or cannot be read!"
|
fail "$image does not exist or cannot be read!"
|
||||||
|
@ -56,7 +56,7 @@ pushd "${workdir}/package" > /dev/null
|
||||||
popd > /dev/null
|
popd > /dev/null
|
||||||
|
|
||||||
|
|
||||||
cat > installer_data.json <<EOF
|
cat > installer_data-$package.json <<EOF
|
||||||
{
|
{
|
||||||
"os_list": [
|
"os_list": [
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,23 +1,23 @@
|
||||||
<image>
|
<image>
|
||||||
<!-- Tumbleweed repositories -->
|
<!-- Tumbleweed repositories -->
|
||||||
<repository type="rpm-md" alias="repo-oss" profiles="Tumbleweed" imageinclude="true">
|
<repository type="rpm-md" alias="repo-oss" profiles="Tumbleweed">
|
||||||
<source path="http://download.opensuse.org/ports/aarch64/tumbleweed/repo/oss/"/>
|
<source path="http://download.opensuse.org/ports/aarch64/tumbleweed/repo/oss/"/>
|
||||||
</repository>
|
</repository>
|
||||||
<repository type="rpm-md" alias="repo-debug" profiles="Tumbleweed" imageinclude="true">
|
<repository type="rpm-md" alias="repo-debug" profiles="Tumbleweed">
|
||||||
<source path="http://download.opensuse.org/ports/aarch64/debug/tumbleweed/repo/oss/"/>
|
<source path="http://download.opensuse.org/ports/aarch64/debug/tumbleweed/repo/oss/"/>
|
||||||
</repository>
|
</repository>
|
||||||
<repository type="rpm-md" alias="repo-update" profiles="Tumbleweed" imageinclude="true">
|
<repository type="rpm-md" alias="repo-update" profiles="Tumbleweed">
|
||||||
<source path="http://download.opensuse.org/ports/aarch64/update/tumbleweed/"/>
|
<source path="http://download.opensuse.org/ports/aarch64/update/tumbleweed/"/>
|
||||||
</repository>
|
</repository>
|
||||||
<repository type="rpm-md" alias="repo-src-oss" profiles="Tumbleweed" imageinclude="true">
|
<repository type="rpm-md" alias="repo-src-oss" profiles="Tumbleweed">
|
||||||
<source path="http://download.opensuse.org/ports/aarch64/source/tumbleweed/repo/oss/"/>
|
<source path="http://download.opensuse.org/ports/aarch64/source/tumbleweed/repo/oss/"/>
|
||||||
</repository>
|
</repository>
|
||||||
|
|
||||||
<!-- Leap repositories -->
|
<!-- Leap repositories -->
|
||||||
<repository type="rpm-md" alias="repo-oss" profiles="Leap" imageinclude="true">
|
<repository type="rpm-md" alias="repo-oss" profiles="Leap">
|
||||||
<source path="http://download.opensuse.org/distribution/leap/15.3/repo/oss"/>
|
<source path="http://download.opensuse.org/distribution/leap/15.3/repo/oss"/>
|
||||||
</repository>
|
</repository>
|
||||||
<repository type="rpm-md" alias="repo-non-oss" profiles="Leap" imageinclude="true">
|
<repository type="rpm-md" alias="repo-non-oss" profiles="Leap">
|
||||||
<source path="http://download.opensuse.org/distribution/leap/15.3/repo/non-oss/"/>
|
<source path="http://download.opensuse.org/distribution/leap/15.3/repo/non-oss/"/>
|
||||||
</repository>
|
</repository>
|
||||||
</image>
|
</image>
|
|
@ -2,5 +2,5 @@
|
||||||
name=asahi
|
name=asahi
|
||||||
baseurl=https://storage.ivabus.dev/asahi-opensuse/repo
|
baseurl=https://storage.ivabus.dev/asahi-opensuse/repo
|
||||||
enabled=1
|
enabled=1
|
||||||
gpgcheck=1
|
gpgcheck=0
|
||||||
gpgkey=https://ivabus.dev/key.asc
|
gpgkey=https://ivabus.dev/key.asc
|
|
@ -1,8 +1,22 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
# This script clones & builds all RPMs that are used in repository.
|
# This script clones & builds all RPMs that are used in repository.
|
||||||
|
|
||||||
# Build kernel
|
# clean up
|
||||||
|
rm -rf ../repo
|
||||||
|
|
||||||
sh 01_build_kernel.sh
|
sh 01_build_kernel.sh
|
||||||
|
|
||||||
# sh 02_build_m1n1.sh
|
sh 02_build_rpms.sh
|
||||||
|
|
||||||
|
mkdir -p ../repo/{RPMS,SRPMS}
|
||||||
|
|
||||||
|
# RpmBuildDir
|
||||||
|
RBD=$(rpm --eval "%{_topdir}")
|
||||||
|
|
||||||
|
cp -rv $RBD/RPMS ../repo/
|
||||||
|
cp -rv $RBD/SRPMS ../repo/
|
||||||
|
|
||||||
|
cd ../repo
|
||||||
|
|
||||||
|
createrepo --xz .
|
||||||
|
|
|
@ -1,41 +1,7 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
# This script clones & builds all linux-asahi related packages.
|
# This script clones & builds all linux-asahi related packages.
|
||||||
|
|
||||||
_rcver=6.2
|
../specs/kernel.sh
|
||||||
_rcrel=3
|
rpmbuild -ba kernel.spec
|
||||||
_asahirel=6
|
rm -f kernel.spec
|
||||||
_commit_id=asahi-${_rcver}${_rcrel+-rc}${_rcrel}-${_asahirel}
|
|
||||||
makethreads=`nproc`
|
|
||||||
CC=gcc
|
|
||||||
CXX=g++
|
|
||||||
|
|
||||||
if [ ! -d build ]; then
|
|
||||||
mkdir build
|
|
||||||
fi
|
|
||||||
cd build
|
|
||||||
|
|
||||||
if [ ! -f ${_commit_id}.tar.gz ]; then
|
|
||||||
echo "Downloading linux-asahi sources"
|
|
||||||
curl -fSLO https://github.com/AsahiLinux/linux/archive/refs/tags/${_commit_id}.tar.gz
|
|
||||||
fi
|
|
||||||
if [ ! -d linux-${_commit_id} ]; then
|
|
||||||
echo "Unpacking linux-asahi"
|
|
||||||
tar xpf ${_commit_id}.tar.gz
|
|
||||||
fi
|
|
||||||
curl -o config -fsSL https://raw.githubusercontent.com/AsahiLinux/PKGBUILDs/main/linux-asahi/config
|
|
||||||
sed -i -e s/-ARCH/-suse/ config
|
|
||||||
|
|
||||||
cd linux-${_commit_id}
|
|
||||||
echo "Building main kernel"
|
|
||||||
cp ../config .config
|
|
||||||
make olddefconfig prepare
|
|
||||||
diff -u ../config .config || :
|
|
||||||
make -j$makethreads CC=$CC CXX=$CXX rpm-pkg
|
|
||||||
|
|
||||||
# Making source package for asahi-dtbs
|
|
||||||
|
|
||||||
make dtbs
|
|
||||||
make INSTALL_PATH=. dtbs_install
|
|
||||||
tar cf dtbs-${_rcver}${_rcrel+_rc}${_rcrel}_${_asahirel}.tar dtbs/
|
|
||||||
cp dtbs-${_rcver}${_rcrel+_rc}${_rcrel}_${_asahirel}.tar ~/rpmbuild/SOURCES/
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
# This script clones & builds all packages using .spec files.
|
# This script clones & builds all packages using .spec files.
|
||||||
|
|
||||||
|
|
|
@ -1,29 +0,0 @@
|
||||||
Name: asahi-dtbs
|
|
||||||
Version: 6.2_rc3_6
|
|
||||||
# From _commit_id in 01_build_kernel.sh
|
|
||||||
Release: 1
|
|
||||||
Summary: Device Trees (dtb) for Apple Silicon machines
|
|
||||||
|
|
||||||
License: GPLv2+
|
|
||||||
URL: https://github.com/AsahiLinux/linux
|
|
||||||
BuildArch: aarch64
|
|
||||||
|
|
||||||
Source0: dtbs-%{version}.tar
|
|
||||||
# Generated by 01_build_kernel.sh
|
|
||||||
|
|
||||||
%description
|
|
||||||
Device Trees (dtb) for Apple Silicon machines
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%setup -n dtbs
|
|
||||||
|
|
||||||
%install
|
|
||||||
install -Dpm 755 -t %{buildroot}/lib/modules/$(cat release)-ARCH/dtbs/ $(find . -type f)
|
|
||||||
|
|
||||||
%files
|
|
||||||
/lib/modules/*-ARCH/dtbs/
|
|
||||||
|
|
||||||
%posttrans
|
|
||||||
update-m1n1
|
|
||||||
|
|
||||||
%changelog
|
|
|
@ -14,7 +14,6 @@ Requires: growpart
|
||||||
Requires: coreutils
|
Requires: coreutils
|
||||||
Requires: diffutils
|
Requires: diffutils
|
||||||
Requires: dosfstools
|
Requires: dosfstools
|
||||||
Requires: kernel-firmware-all
|
|
||||||
Requires: sed
|
Requires: sed
|
||||||
Requires: tar
|
Requires: tar
|
||||||
Requires: asahi-dtbs
|
Requires: asahi-dtbs
|
||||||
|
|
|
@ -25,7 +25,7 @@ cat > kernel.spec << EOF
|
||||||
%define _commit_id asahi-%{_rcver}%(if [ ! %_rcrel == "0" ]; then echo -rc%{_rcrel}; fi)-%{_asahirel}
|
%define _commit_id asahi-%{_rcver}%(if [ ! %_rcrel == "0" ]; then echo -rc%{_rcrel}; fi)-%{_asahirel}
|
||||||
%define _rpm_ver %{_rcver}%(if [ ! %_rcrel == "0" ]; then echo _rc%{_rcrel}; fi)_%{_asahirel}_asahi_suse
|
%define _rpm_ver %{_rcver}%(if [ ! %_rcrel == "0" ]; then echo _rc%{_rcrel}; fi)_%{_asahirel}_asahi_suse
|
||||||
%define ver ${ver}-asahi-suse
|
%define ver ${ver}-asahi-suse
|
||||||
Name: kernel
|
Name: kernel-asahi
|
||||||
Summary: The Linux Kernel
|
Summary: The Linux Kernel
|
||||||
Version: %{_rpm_ver}
|
Version: %{_rpm_ver}
|
||||||
Release: 1
|
Release: 1
|
||||||
|
@ -35,7 +35,7 @@ Vendor: The Linux Community
|
||||||
URL: https://www.kernel.org
|
URL: https://www.kernel.org
|
||||||
Source0: https://github.com/AsahiLinux/linux/archive/refs/tags/%{_commit_id}.tar.gz
|
Source0: https://github.com/AsahiLinux/linux/archive/refs/tags/%{_commit_id}.tar.gz
|
||||||
Source1: config-%{_commit_id}
|
Source1: config-%{_commit_id}
|
||||||
Provides: kernel-drm kernel-%{_rpm_ver} kernel-default kernel kernel-asahi
|
Provides: kernel-drm kernel-base kernel-%{_rpm_ver} kernel-default kernel kernel-asahi
|
||||||
BuildRequires: bc binutils bison dwarves
|
BuildRequires: bc binutils bison dwarves
|
||||||
BuildRequires: (elfutils-libelf-devel or libelf-devel) flex
|
BuildRequires: (elfutils-libelf-devel or libelf-devel) flex
|
||||||
BuildRequires: gcc make openssl openssl-devel perl python3 rsync
|
BuildRequires: gcc make openssl openssl-devel perl python3 rsync
|
||||||
|
@ -54,9 +54,7 @@ Requires(post): kmod-zstd
|
||||||
%package headers
|
%package headers
|
||||||
Summary: Header files for the Linux kernel for use by glibc
|
Summary: Header files for the Linux kernel for use by glibc
|
||||||
Group: Development/System
|
Group: Development/System
|
||||||
Obsoletes: kernel-headers
|
Provides: kernel-headers
|
||||||
Provides: kernel-headers = %{version}
|
|
||||||
Provides: glibc-kernheaders
|
|
||||||
%description headers
|
%description headers
|
||||||
Kernel-headers includes the C header files that specify the interface
|
Kernel-headers includes the C header files that specify the interface
|
||||||
between the Linux kernel and userspace libraries and programs. The
|
between the Linux kernel and userspace libraries and programs. The
|
||||||
|
@ -68,7 +66,7 @@ glibc package.
|
||||||
Summary: Development package for building kernel modules to match the %{_rpm_ver} kernel
|
Summary: Development package for building kernel modules to match the %{_rpm_ver} kernel
|
||||||
Group: System Environment/Kernel
|
Group: System Environment/Kernel
|
||||||
AutoReqProv: no
|
AutoReqProv: no
|
||||||
%description -n kernel-devel
|
%description devel
|
||||||
This package provides kernel headers and makefiles sufficient to build modules
|
This package provides kernel headers and makefiles sufficient to build modules
|
||||||
against the %{_rpm_ver} kernel package.
|
against the %{_rpm_ver} kernel package.
|
||||||
|
|
||||||
|
@ -154,4 +152,4 @@ fi
|
||||||
%defattr (-, root, root)
|
%defattr (-, root, root)
|
||||||
/lib/modules/*-ARCH/dtbs/
|
/lib/modules/*-ARCH/dtbs/
|
||||||
EOF
|
EOF
|
||||||
echo "Prepared kernel.spec for $ver"
|
echo "Prepared kernel.spec for $ver-asahi-suse"
|
Loading…
Reference in a new issue