Sodalite เป็นระบบปฏิบัติการเดสก์ท็อปที่ไม่เปลี่ยนรูปที่สร้างขึ้นด้วย RPM-Ostree และด้านบนของ Fedora-คล้ายกับ Fedora Silverblue-ใช้ประโยชน์จากแพนธีออนเดสก์ท็อปติดกับจริยธรรมและเวิร์กโฟลว์ที่เกิดขึ้นโดยประถมศึกษา
ใช่.
แม้จะมีประวัติศาสตร์การกระทำที่กระตือรือร้น มาก Sodalite นั้นค่อนข้างยั่งยืนในทุกวันนี้-ส่วนใหญ่ต้องขอบคุณผู้คนที่ยอดเยี่ยมที่ FYRA Labs-และที่เก็บข้อมูลจะไปหลายเดือนโดยไม่มีกิจกรรมใด ๆ นี่ไม่ได้หมายความว่าโครงการถูกทอดทิ้งโดยเฉพาะอย่างยิ่งเนื่องจากนักพัฒนาใช้เป็นระบบปฏิบัติการหลัก โดยไม่คำนึงถึงกิจกรรมที่เก็บข้อมูลการอัปเดตจะถูกสร้างขึ้นสองครั้งต่อสัปดาห์จากที่เก็บ: บันทึกมีให้ในการดำเนินการ
psst เราอยู่ในโทรเลขด้วย ในขณะที่คุณมีอิสระที่จะใช้การอภิปรายการสนทนาส่วนใหญ่ที่เกี่ยวข้องกับโครงการนี้จะเกิดขึ้นบนโทรเลข
เนื่องจาก RPM-Ostree เป็นเทคโนโลยีที่มีการพัฒนาตลอดเวลาและการติดตั้ง ISO ในปัจจุบันมีความสำคัญต่ำ ในปัจจุบัน ISO ไม่สามารถใช้งานได้ ระบบปฏิบัติการที่ใช้ RPM-Ostree ที่มีอยู่เช่น Fedora SilverBlue จำเป็นต้องใช้: ระบบปฏิบัติการนี้จะถูกใช้เพื่อ "รีเบส" เป็นโซดา
sudo ostree remote add --if-not-exists sodalite https://ostree.sodalite.rocks --no-gpg-verifysudo ostree pull sodalite:sodalite/current/x86_64/desktop *sudo rpm-ostree rebase sodalite:sodalite/current/x86_64/desktop* มีหลายสาขา ดูสาขา
มีหลายสาขา (หรือรูปภาพ) ของ Sodalite ร่วมและได้รับการพัฒนาเคียงข้างกัน สิ่งเหล่านี้มีความโดดเด่นด้วยการอ้างอิงของพวกเขา-เช่นเดียวกับ RPM-Ostree distro อื่น ๆ-ที่ sodalite/<version>/<arch>/<edition> ::
<version> | <arch> | <edition> | ปล่อย | ฐาน | สถานะ |
|---|---|---|---|---|---|
current | x86_64 | desktop | 6 kutai | Fedora 39 |
<version> | <arch> | <edition> | ปล่อย | ฐาน | สถานะ |
|---|---|---|---|---|---|
long-6 | x86_64 | desktop | 6 Kutai (ยาว) | Fedora 39 |
ซึ่งแตกต่างจาก ปัจจุบัน (
current) สาขาเหล่านี้ไม่ได้อัปเดตเป็นรุ่นสำคัญปัจจุบัน: การอัปเดตจะหยุดในวันเดียวกับรุ่นพื้นฐาน Fedora ใช้สิ่งเหล่านี้หากจำเป็น (เช่นไดรเวอร์ที่มีปัญหาที่ต้องการเวอร์ชันบางรุ่นระบบวิกฤต ฯลฯ )
<version> | <arch> | <edition> | ปล่อย | ฐาน | สถานะ |
|---|---|---|---|---|---|
next | x86_64 | desktop | 6 Kutai (ถัดไป) | Fedora 39 | |
next | x86_64 | desktop-gnome | 7.0rc3 Gnome (ถัดไป) | Fedora 40 |
รุ่นแรก ๆ ของรุ่นที่กำลังจะมาถึง ไม่เสถียร นี่คือมังกร ละทิ้งความหวังทั้งหมด คุณรู้ว่าการฝึกซ้อม
บางครั้งอาจเป็นเวอร์ชันเดียวกับ ปัจจุบัน (
current) แต่โปรดทราบว่าคุณจะถูกกระแทกไปสู่การเปิดตัวที่กำลังจะมาถึงโดยไม่มีการเตือนว่า/เมื่อถูกปล่อยไปยังสาขานี้
(สิ่งที่ต้องทำ)
การดำเนินการอัปเดตระบบสามารถทำได้โดย:
sudo rpm-ostree upgrade ในเปลือกหอยรีบูตหลังจากวิธีใดวิธีหนึ่งเสร็จสิ้น คุณสามารถตรวจสอบเวอร์ชันที่ติดตั้งโดยการเปิด การตั้งค่าระบบ และนำทางไปยัง ระบบ➔ระบบปฏิบัติการ : เวอร์ชันจะดำเนินการคำว่า "sodalite"
หากมีบางสิ่งเกิดขึ้นคุณสามารถย้อนกลับได้โดยเรียกใช้ sudo rpm-ostree rollback ที่เทอร์มินัล อย่าลืมสร้างปัญหาใหม่หากเหมาะสม!
การอัปเดตถูกสร้างขึ้นบนเซิร์ฟเวอร์บิลด์เริ่มต้น 4:00 GMT/± 0 (22:00 CST/-6) ทุก วันพุธ และ วันเสาร์
หากคุณเลือกที่จะใช้สาขา "ระยะยาว" (ดูสาขาด้านบน) คุณจะต้อง rebase เมื่อใดก็ตามที่เวอร์ชัน sodalite ถึงจุดสิ้นสุดของชีวิต สิ่งนี้สามารถทำได้ด้วย sudo rpm-ostree rebase sodalite:sodalite/<version>/<arch>/<edition> โดยที่ <version> เป็นเวอร์ชันที่คุณต้องการรีไซเคิลและค่าอื่น ๆ เป็นค่าปัจจุบันของคุณ
เป็นสิ่งสำคัญที่คุณต้องดำเนินการตามกระบวนการนี้เนื่องจากการอัปเดตหยุดวันที่รุ่นพื้นฐานถึงจุดสิ้นสุดของชีวิต (ในเวลาเดียวกันกับรุ่นพื้นฐาน Fedora Linux) และคุณจะถูกทิ้งไว้โดยไม่มีการอัปเดตเป็นส่วนประกอบของระบบที่สำคัญ
--container / -c )การทำงานในภาชนะเป็นวิธีที่ต้องการในการสร้างโซดา
--ex-use-docker การทำงานใน Docker นั้นยังไม่ทดลองและทดลอง!git lfs : การพิมพ์เอาต์พุตวิธีใช้หากติดตั้ง หากคุณไม่มี Podman หรือมีปัญหาเกี่ยวกับการทำงานในคอนเทนเนอร์คุณสามารถลองทำงานบนโฮสต์เอง
dnf install rpm-ostreegit lfs : การพิมพ์เอาต์พุตวิธีใช้หากติดตั้ง sudosudo ./build.sh : สคริปต์จะขออนุญาตเมื่อต้องการมันsudogit clone https://github.com/sodaliterocks/sodalite.git
cd sodalite
git submodule sync
git submodule update --init --recursiveเมื่ออัปเดตในอนาคตอย่าลืมอัปเดต submodules ด้วย:
git submodule update --recursive อย่า ใช้ git submodule foreach git pull : การอัปเดตแบบสุ่มสี่สุ่มห้าทั้งหมดเป็นรุ่นล่าสุดของพวกเขาไม่ใช่รุ่นล่าสุดไม่ใช่การตอบโต้ผู้ปกครองครั้งนี้ได้ตรวจสอบแล้ว นี่เป็นสิ่งสำคัญสำหรับ submodules บางตัวที่เช็คเอาท์ที่แท็ก/commits เฉพาะ (เช่น ./lib/sodaliterocks.firefox )
./lib/workstation-ostree-config_f* submodules-ทำหน้าที่เป็นพื้นฐานสำหรับ sodalite สำหรับรุ่นที่ต่างกันไปของ fedora ที่แตกต่างกัน-จะถูกลบออกบ่อยครั้งดังนั้นตรวจสอบให้แน่ใจว่าคุณลบออกตามนั้น ตัวอย่างเช่นเมื่อ Fedora 36 ถึง EOL, ./lib/workstation-ostree-config_f36 จะถูกลบออกหลังจากนั้นไม่นาน คุณสามารถใช้ git clean -i เพื่อทำงานให้คุณ
Submodule LFS อยู่ที่ ./lfs เป็นสิ่งสำคัญที่จะต้องทราบว่าสิ่งนี้ไม่ได้โฮสต์บน GitHub แต่ Zio Git - เซิร์ฟเวอร์ที่เราควบคุม - เนื่องจากค่าเผื่อ LFS ของ GitHub แน่น (เพียง 1GIB แบนด์วิดธ์และที่เก็บข้อมูล)
ปัญหาใด ๆ เกี่ยวกับ LFS ควรส่งไปยัง Sodaliterocks/Sodalite บน GitHub ขณะนี้เนื่องจาก Zio Git ไม่อนุญาตให้ลงทะเบียนโดยพลการ PRS ไม่สามารถส่งได้โดยตรง
เว้นแต่โลกจะสนับสนุน Gitlab หรืออะไรก็ตาม Sodalite จะอยู่บน GitHub เพราะมันทำให้ชีวิตของทุกคนง่ายขึ้น Microsoft เป็นเพียง บริษัท อื่น พวกเขาจะไม่ทำร้ายคุณ
./build.sh [-t < edition > ] [-w < working-dir > ] ดู build.sh --help สำหรับตัวเลือกเพิ่มเติม
โดยปกติจะใช้เวลา 10-15 นาที จำได้ไหมว่าเมื่อฉันบอกให้คุณคว้า cuppa? หรืออาจเป็นหวัด?
<edition> (ตัวเลือก) รุ่น/ตัวแปรของ Sodalite (ค่าเริ่มต้นเป็น custom )sodalite-<edition>.yaml ใด ๆ ที่แสดงใน ./src/treefiles/ / ใช้ sodalite-<edition> หรือเพียงแค่ <edition> เป็นอาร์กิวเมนต์ ปัจจุบันมี:desktop : แพนธีออนเดสก์ท็อปมาตรฐานdesktop-gnome : เดสก์ท็อป Gnome สำรองซึ่งมีไว้สำหรับรุ่นที่เป็นไปได้ในอนาคตcustom : ดูจุดด้านล่างsodalite-custom.yaml เป็นสถานที่ที่ดีในการใช้การเปลี่ยนแปลงของคุณเองแทนที่จะแก้ไข treefiles อื่น ๆ<working-dir> (ไม่บังคับ) สำหรับการสร้างเอาต์พุต (ค่าเริ่มต้นถึง ./build ) หากคุณมี Podman คุณสามารถสร้าง sodalite ทั้งหมดในภาชนะ: เพียงแค่ใช้ -c / --container นี่คือวิธีการสร้างที่ทำบนเซิร์ฟเวอร์รีลีส! อย่างไรก็ตามสิ่งนี้จะเพิ่มอีกไม่กี่นาทีสำหรับการสร้างเพื่อให้เสร็จสมบูรณ์เนื่องจากคอนเทนเนอร์ Fedora จำเป็นต้องติดตั้งแพ็คเกจก่อน
การสร้างความล้มเหลวนั้นหลีกเลี่ยงไม่ได้ในไดรฟ์ที่จัดรูปแบบเป็น NTFs, FAT หรือระบบไฟล์อื่น ๆ ที่ไม่สนับสนุนการอนุญาตแบบ UNIX เนื่องจาก build.sh ตั้งค่าการอนุญาตสำหรับวัตถุต่าง ๆ
บน WSL2 อย่าสร้างไดเร็กทอรีใด ๆ /mnt/<drive-letter> เนื่องจากสิ่งเหล่านี้จะถูกจัดรูปแบบเป็น NTFs หรือไขมัน ให้เรียกใช้งานสร้างที่อื่นบน Linux distro เอง (เช่น $HOME หรือ /usr/local/src )
build.sh distros rpm-ostree ส่วนใหญ่สามารถสร้างได้เพียงแค่ทำ rpm-ostree compose แต่ build.sh ที่ได้รับจาก Sodalite ทำขั้นตอนพิเศษบางอย่างซึ่งจำเป็นสำหรับสคริปต์หลังสร้าง (ซึ่ง จะ ล้มเหลวโดยไม่ต้องวิ่ง) ดังนั้นจึงไม่แนะนำให้ทำเช่นนี้: ปัญหาใด ๆ ที่สร้าง distro ด้วยวิธีนี้จะถูกปิดและทำเครื่องหมายว่าไม่ถูกต้อง
สร้างเนื้อหาอยู่ที่ ./build/ (หรืออะไรก็ตามที่คุณตั้งค่า <working-dir> ถึง) ซึ่งสามารถลบได้เพื่อเริ่มต้นใหม่อีกครั้ง โดยเฉพาะอย่างยิ่งสิ่งนี้ถือไฟล์/ไดเรกทอรีต่อไปนี้ (ซึ่งสามารถลบเป็นรายบุคคลแทน):
./build/repo/ - ที่เก็บ Ostree สำหรับ Sodalite./build/cache/ - แคชสำหรับแพ็คเกจ fedora นอกจากจะหยุดด้วยตนเอง build.sh จะทำความสะอาดตัวเองเมื่อใดก็ตามที่ออกจาก (ทั้งความสำเร็จและความล้มเหลว) มันจะแก้ไขสิทธิ์ (สำหรับผู้ใช้ของคุณ) สำหรับ ./build/ ไดเรกทอรีรวมถึงการลบไฟล์/ไดเรกทอรีต่อไปนี้:
./src/sysroot/common/usr/lib/sodalite-buildinfo/var/tmp/rpm-ostree.*/build.sh ออก(สิ่งที่ต้องทำ)
งานของคนที่ดีเหล่านี้ไม่ได้รวมอยู่ในหรือเกี่ยวข้องกับโซดา แต่พวกเขาก็ยังคุ้มค่าที่จะตะโกนออกมา!
- -