ตัวจัดการแพ็คเกจ GNU Guix 1.1 และการแจกจ่ายตามที่มีอยู่

ไปยังสถานที่ การเปิดตัวตัวจัดการแพ็คเกจ GNU Guix 1.1 และการกระจาย GNU/Linux ที่สร้างขึ้นบนพื้นฐานของมัน สำหรับการโหลด เกิดขึ้น อิมเมจสำหรับการติดตั้งบน USB Flash (241 Mb) และใช้ในระบบเสมือนจริง (479 ​​​​Mb) รองรับการทำงานบนสถาปัตยกรรม i686, x86_64, armv7 และ aarch64

ชุดกระจายช่วยให้สามารถติดตั้งได้ทั้งแบบ ระบบปฏิบัติการแบบสแตนด์อโลน ในระบบเสมือนจริง ในคอนเทนเนอร์และบนอุปกรณ์ทั่วไป และ ยิง ในการกระจาย GNU/Linux ที่ติดตั้งไว้แล้ว ซึ่งทำหน้าที่เป็นแพลตฟอร์มสำหรับการปรับใช้แอปพลิเคชัน ผู้ใช้จะได้รับฟังก์ชันต่างๆ เช่น การบัญชีการพึ่งพา บิลด์ที่ทำซ้ำได้ งานโดยไม่ต้องรูท การย้อนกลับเป็นเวอร์ชันก่อนหน้าในกรณีที่เกิดปัญหา การจัดการการกำหนดค่า การโคลนสภาพแวดล้อม (การสร้างสำเนาสภาพแวดล้อมซอฟต์แวร์บนคอมพิวเตอร์เครื่องอื่น) เป็นต้น

หลัก นวัตกรรม:

  • มีการเพิ่มคำสั่ง “guix Deploy” ใหม่ ซึ่งออกแบบมาเพื่อปรับใช้ฮาร์ดแวร์ของคอมพิวเตอร์หลายเครื่องพร้อมกัน เช่น สภาพแวดล้อมใหม่ใน VPS หรือระบบระยะไกลที่เข้าถึงได้ผ่าน SSH
  • ผู้เขียนที่เก็บแพ็กเกจบุคคลที่สาม (ช่อง) มีเครื่องมือในการเขียนข้อความข่าวที่ผู้ใช้สามารถอ่านได้เมื่อดำเนินการคำสั่ง "guix pull --news"
  • เพิ่มคำสั่ง "guix system อธิบาย" ซึ่งทำให้สามารถประเมินการเปลี่ยนแปลงระหว่างสองอินสแตนซ์ที่แตกต่างกันของระบบในระหว่างการปรับใช้
  • เพิ่มการรองรับการสร้างอิมเมจสำหรับ Singularity และ Docker ในคำสั่ง "guix pack"
  • เพิ่มคำสั่ง "guix time-machine" ซึ่งช่วยให้คุณสามารถย้อนกลับไปยังรุ่นใด ๆ ของแพ็คเกจที่บันทึกไว้ในไฟล์เก็บถาวร ซอฟต์แวร์มรดก.
  • เพิ่มตัวเลือก "--target" ให้กับ "ระบบ guix" ซึ่งให้การสนับสนุนบางส่วนสำหรับการรวบรวมข้าม
  • รับประกันการดำเนินการของ Guix โดยใช้ กิล3ซึ่งมีผลดีต่อผลผลิต
  • กราฟการขึ้นต่อกันของแพ็คเกจนั้นจำกัดอยู่เพียงชุดส่วนประกอบของเมล็ดไบนารีที่ลดลง ซึ่งเป็นก้าวสำคัญในการนำบูตสแตรปที่ตรวจสอบได้อย่างสมบูรณ์ไปใช้
  • มีการนำกรอบงานสำหรับการทดสอบตัวติดตั้งแบบกราฟิกอัตโนมัติไปใช้แล้ว ขณะนี้ตัวติดตั้งถูกสร้างขึ้นในระบบบูรณาการอย่างต่อเนื่อง และทดสอบในการกำหนดค่าที่แตกต่างกัน (พาร์ติชั่นรูทที่เข้ารหัสและปกติ การติดตั้งด้วยเดสก์ท็อป ฯลฯ)
  • เพิ่มระบบบิลด์สำหรับ Node.js, Julia และ Qt ซึ่งทำให้การเขียนแพ็คเกจสำหรับแอปพลิเคชันที่เกี่ยวข้องกับโปรเจ็กต์เหล่านี้ง่ายขึ้น
  • เพิ่มบริการระบบใหม่ auditd, fontconfig-file-system, getmail, gnome-keyring, kernel-module-loader,
    ตัวแก้ไขปม, mumi, nfs, nftables, nix, pagekite, pam-mount, patchwork,
    Polkit-wheel, ที่มา, Pulseaudio, มีสติ, เอกพจน์, usb-modeswitch

  • อัปเดตเวอร์ชันของโปรแกรมในแพ็คเกจ 3368 แล้วเพิ่มแพ็คเกจใหม่ 3514 แพ็คเกจ รวมถึงเวอร์ชันอัปเดตของ xfce 4.14.0, gnome 3.32.2, mate 1.24.0, xorg-server 1.20.7, bash 5.0.7, binutils 2.32, Cup 2.3.1, emacs 26.3, enlightenment 0.23.1,
    gcc 9.3.0, gimp 2.10.18, glibc 2.29,
    gnupg 2.2.20 ไป 1.13.9 กิล 2.2.7
    ไอซ์แคท 68.7.0-guix0-preview1, ไอซ์ที 3.7.0,
    libreoffice 6.4.2.2, linux-libre 5.4.31, , openjdk 12.33, perl 5.30.0, python 3.7.4,
    สนิม 1.39.0.

โปรดจำไว้ว่าตัวจัดการแพ็คเกจ GNU Guix ขึ้นอยู่กับการพัฒนาโครงการ ไม่มีอะไร และนอกเหนือจากฟังก์ชั่นการจัดการแพ็คเกจทั่วไปแล้ว ยังรองรับคุณสมบัติต่าง ๆ เช่นการอัปเดตธุรกรรม ความสามารถในการย้อนกลับการอัปเดต ทำงานโดยไม่ได้รับสิทธิพิเศษจากผู้ใช้ระดับสูง รองรับโปรไฟล์ที่เกี่ยวข้องกับผู้ใช้แต่ละราย ความสามารถในการติดตั้งโปรแกรมเดียวหลายเวอร์ชันพร้อมกัน เครื่องมือรวบรวมขยะ (ระบุและลบแพ็คเกจเวอร์ชันที่ไม่ได้ใช้) ในการกำหนดสคริปต์การสร้างแอปพลิเคชันและกฎการบรรจุ ขอเสนอให้ใช้ภาษาเฉพาะโดเมนระดับสูงเฉพาะและส่วนประกอบ Guile Scheme API ที่อนุญาตให้คุณดำเนินการจัดการแพ็คเกจทั้งหมดในภาษาโปรแกรมการทำงานของ Scheme

รองรับความสามารถในการใช้แพ็คเกจที่เตรียมไว้สำหรับตัวจัดการแพ็คเกจ Nix และวางไว้ในที่เก็บ
Nixpkgs. นอกเหนือจากการดำเนินการแพ็คเกจแล้ว คุณสามารถสร้างสคริปต์เพื่อจัดการการกำหนดค่าแอปพลิเคชันได้ เมื่อสร้างแพ็คเกจ การขึ้นต่อกันที่เกี่ยวข้องทั้งหมดจะถูกดาวน์โหลดและสร้างโดยอัตโนมัติ เป็นไปได้ทั้งการดาวน์โหลดแพ็คเกจไบนารี่สำเร็จรูปจากพื้นที่เก็บข้อมูล และสร้างจากแหล่งที่มาที่มีการขึ้นต่อกันทั้งหมด ใช้เครื่องมือเพื่อให้เวอร์ชันของโปรแกรมที่ติดตั้งอัปเดตอยู่เสมอโดยจัดระเบียบการติดตั้งการอัปเดตจากที่เก็บข้อมูลภายนอก

สภาพแวดล้อมการสร้างสำหรับแพ็คเกจถูกสร้างขึ้นในรูปแบบของคอนเทนเนอร์ที่มีส่วนประกอบทั้งหมดที่จำเป็นสำหรับแอปพลิเคชันในการทำงาน ซึ่งช่วยให้คุณสามารถสร้างชุดแพ็คเกจที่สามารถทำงานได้โดยไม่คำนึงถึงองค์ประกอบของสภาพแวดล้อมระบบพื้นฐานของการแจกจ่าย โดยที่ Guix ถูกใช้เป็นส่วนเสริม การขึ้นต่อกันสามารถกำหนดได้ระหว่างแพ็คเกจ Guix โดยการสแกนแฮชตัวระบุในไดเร็กทอรีแพ็คเกจที่ติดตั้งเพื่อค้นหาการมีอยู่ของการขึ้นต่อกันที่ติดตั้งไว้แล้ว แพ็คเกจได้รับการติดตั้งในแผนผังไดเร็กทอรีหรือไดเร็กทอรีย่อยแยกต่างหากในไดเร็กทอรีของผู้ใช้ ทำให้สามารถอยู่ร่วมกันแบบขนานกับตัวจัดการแพ็คเกจอื่นๆ และให้การสนับสนุนการกระจายที่มีอยู่ที่หลากหลาย ตัวอย่างเช่น แพ็คเกจได้รับการติดตั้งเป็น /nix/store/f42a5878f3a0b426064a2b64a0c6f92-firefox-75.0.0/ โดยที่ "f42a58..." คือตัวระบุแพ็คเกจเฉพาะที่ใช้สำหรับการตรวจสอบการขึ้นต่อกัน

การแจกจ่ายนี้รวมเฉพาะส่วนประกอบฟรีและมาพร้อมกับเคอร์เนล GNU Linux-Libre ที่แยกองค์ประกอบเฟิร์มแวร์ไบนารี่ที่ไม่ฟรีออก GCC 9.3 ใช้ในการสร้าง ผู้จัดการฝ่ายบริการจะใช้เป็นระบบการเริ่มต้น GNU คนเลี้ยงแกะ (อดีตดีเอ็มดี) พัฒนาเป็นทางเลือกแทน SysV-init พร้อมรองรับการพึ่งพา ยูทิลิตี้ควบคุม daemon และยูทิลิตี้ Shepherd เขียนด้วยภาษา Guile (หนึ่งในการใช้งานของภาษา Scheme) ซึ่งใช้เพื่อกำหนดพารามิเตอร์การเริ่มต้นบริการด้วย อิมเมจพื้นฐานรองรับโหมดคอนโซล แต่ต้องติดตั้ง เตรียมไว้ แพ็คเกจสำเร็จรูป 13162 รวมถึงส่วนประกอบของสแต็กกราฟิกที่ใช้ X.Org, โปรแกรมจัดการหน้าต่าง dwm และ ratpoison, เดสก์ท็อป Xfce รวมถึงแอปพลิเคชันกราฟิกที่เลือกสรรมา

ที่มา: opennet.ru

เพิ่มความคิดเห็น