שחרור של מערכת חבילות עצמאית של Flatpak 1.8.0

יצא לאור ענף יציב חדש של ערכת הכלים Flatpack 1.8, המספקת מערכת לבניית חבילות עצמאיות שאינן קשורות להפצות ספציפיות. Linux ומופעל במכולה מיוחדת המבודדת את האפליקציה משאר המערכת. תמיכה בהרצת חבילות Flatpak ניתנת עבור Arch. Linux, CentOS, Debian, פדורה, ג'נטו, מג'יה, Linux מנטה ו Ubuntuחבילות Flatpak כלולות במאגר Fedora ונתמכות במנהל היישומים הסטנדרטי של GNOME.

מפתח חידושים בסניף Flatpak 1.8:

  • יישום ההתקנה במצב P2P פושט (מאפשר לך לארגן את הטעינה של יישומים וערכות זמן ריצה דרך צמתים ביניים או כוננים עבור מערכות ללא חיבור לרשת). התמיכה בהתקנה באמצעות מארחי ביניים ברשת המקומית הופסקה. כברירת מחדל, טעינת צד אוטומטית של מאגרים הממוקמים בכונני USB מקומיים מושבתת. כדי לאפשר מאגרי ביניים מקומיים, עליך להגדיר את המאגר על ידי יצירת קישור סמלי מ-/var/lib/flatpak/sideload-repos או
    /run/flatpak/sideload-repos. השינוי פישט את היישום הפנימי של מצב P2P והגדיל את יעילותו.
  • נוספה יחידת מערכת אופציונלית לזיהוי אוטומטי של מאגרים נוספים בכונני USB חיצוניים מחוברים.
  • עבור יישומים שיש להם גישה למערכת הקבצים, ספריית /lib של סביבת המארח מועברת אל /run/host/lib.
  • הרשאות גישה חדשות ל-FS נוספו - "host-etc" ו-"host-os", המאפשרות גישה לספריות המערכת /etc ו-/usr.
  • כדי ליצור קוד ניתוח קבצים יעיל יותר, נעשה שימוש ב-GVariant מבית ostreee גרסה-סכמה-מהדר.
  • קריפטת ה-configure build מספקת את היכולת לבנות בלי
    libsystemd;
  • הפעלת הרכבה של שקעי יומן במצב קריאה בלבד.
  • נוספה תמיכה בייצוא ספריות ליצוא מסמכים.
  • מאפשר גישה ישירה להתקני שמע ALSA עבור יישומים שיש להם גישה ל-Pulsaudio.
  • ב-API FlatpakTransaction הוסיף אות "התקן-מאמת" שיכול לשמש לקוחות כדי להתקין את המאמתים הדרושים להשלמת עסקה.
  • אפשר להשתמש במידע על אזור זמן המבוסס על /etc/localtime מהמערכת המארחת, מה שפתר בעיות הקשורות לאזור זמן ביישומים מסוימים.
  • הפסיק להתקין את קובץ env.d מ-gdm מכיוון שמחוללי systemd טובים יותר במשימה זו.
  • לכלי השירות create-usb יש ייצוא commit חלקי מופעל כברירת מחדל.
  • הקובץ sysusers.d סופק כדי ליצור את המשתמשים הדרושים באמצעות systemd.
  • האפשרות "-[no-]follow-redirect" נוספה לפקודות "flatpak remote-add" ו-"flatpak modify" כדי להשבית/לאפשר הפניה למאגר אחר.
  • לתוך המערכת
    פורטלים התווסף Spawn API כדי לקבל את מזהה התהליך האמיתי (PID) של האפליקציה הפועלת.
  • כל מאגרי OCI (Open Container Initiative) הומרו לשימוש במאמת flatpak-oci-authenticator.
  • הוספה את האפשרות "--commit=" לפקודות "Flatpak remote-info" ו-"flatpak update" כדי להגדיר גרסה ספציפית של מאגרי OCI.
  • נוספה תמיכה ראשונית בעדכוני דלתא עבור מאגרי OCI.
  • הוספה את הפקודה "שדרוג flatpak", שהיא כינוי לפקודה "עדכון flatpak".
  • הטמיע סקריפטים להשלמת קלט עבור מעטפת הפקודה של הדג.

נזכיר לכם כי Flatpak מאפשרת למפתחי אפליקציות לפשט את הפצת התוכניות שלהם שאינן כלולות במאגרי ההפצה הסטנדרטיים על ידי הכנה מיכל אוניברסלי אחד מבלי ליצור מכלולים נפרדים לכל הפצה. עבור משתמשים מודעים לאבטחה, Flatpak מאפשרת לך להפעיל אפליקציה מפוקפקת בקונטיינר, ומספקת גישה רק לפונקציות הרשת ולקבצי המשתמש המשויכים לאפליקציה. למשתמשים המעוניינים במוצרים חדשים, Flatpak מאפשרת להתקין את הבדיקות העדכניות ביותר ומהדורות יציבות של אפליקציות ללא צורך בביצוע שינויים במערכת. לדוגמה, כרגע חבילות Flatpak כבר קיימות הולכים עבור LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android סטודיו וכו'.

כדי להקטין את גודל החבילה, הוא כולל רק תלות ספציפית ליישום, וספריות המערכת והגרפיקה הבסיסיות (ספריות Gtk+, Qt, GNOME ו-KDE וכו') מתוכננות כסביבות זמן ריצה סטנדרטיות תוספים. ההבדל העיקרי בין Flatpak ל-Snap הוא ש-Snap משתמש ברכיבים של סביבת המערכת הראשית ובבידוד על בסיס סינון קריאות מערכת, בעוד Flatpak יוצר קונטיינר נפרד מהמערכת ופועל עם ערכות זמן ריצה גדולות, ומספק לא חבילות כתלות, אלא סטנדרטי. סביבות מערכת אלה (לדוגמה, כל הספריות הנחוצות לתפעול תוכניות GNOME או KDE).

בנוסף לסביבת המערכת הרגילה (זמן ריצה), מותקן באמצעות מיוחד מאגר, מסופקות תלות נוספות (צרור) הנדרשות כדי שהאפליקציה תעבוד. בסך הכל, זמן ריצה וחבילה יוצרים את מילוי הקונטיינר, למרות העובדה שזמן הריצה מותקן בנפרד וקשור למספר קונטיינרים בו זמנית, מה שמאפשר להימנע משכפול של קבצי מערכת המשותפים לקונטיינרים. למערכת אחת יכולות להיות מותקנות מספר זמני ריצה שונים (GNOME, KDE) או מספר גרסאות של אותו זמן ריצה (GNOME 3.26, GNOME 3.28). קונטיינר עם אפליקציה כתלות משתמש ב-binding רק לזמן ריצה ספציפי, מבלי לקחת בחשבון את החבילות הבודדות המרכיבות את זמן הריצה. כל האלמנטים החסרים נארזים ישירות עם האפליקציה. כאשר נוצר קונטיינר, תוכן זמן הריצה נטען כמחיצת /usr, והחבילה נטענת בספריית /app.

המילוי של מיכלי זמן ריצה ויישומים נוצר באמצעות טכנולוגיה ללא שם: OSTree, שבו התמונה מתעדכנת מבחינה אטומית ממאגר דמוי Git, המאפשר להחיל שיטות בקרת גרסאות על רכיבי ההפצה (לדוגמה, ניתן להחזיר את המערכת במהירות למצב קודם). חבילות RPM מתורגמות למאגר OSTree באמצעות שכבה מיוחדת rpm-ostre. התקנה ועדכון נפרדים של חבילות בתוך סביבת העבודה אינם נתמכים; המערכת מתעדכנת לא ברמה של רכיבים בודדים, אלא כמכלול, משנה את מצבה מבחינה אטומית. מספק כלים להחלת עדכונים בהדרגה, ומבטל את הצורך להחליף לחלוטין את התמונה בכל עדכון.

הסביבה המבודדת שנוצרה אינה תלויה לחלוטין בהפצה שבה נעשה שימוש, ועם הגדרות חבילה מתאימות, אין לה גישה לקבצים ותהליכים של המשתמש או של המערכת הראשית, אינה יכולה לגשת ישירות לציוד, למעט פלט באמצעות DRI, וה- תת מערכת רשת. ארגון פלט וקלט גרפי מוטמע באמצעות פרוטוקול Wayland או באמצעות העברת שקע X11. האינטראקציה עם הסביבה החיצונית מבוססת על מערכת ההודעות DBus ו-API מיוחד של Portals. לבידוד משמש שכבת ביניים ניילון בועות ומסורתי עבור Linux טכנולוגיות וירטואליזציה של מכולות המבוססות על שימוש ב-cgroups, מרחבי שמות, Seccomp ו-SELinuxPulseAudio משמש לפלט שמע.

מקור: OpenNet.ru

קנה אירוח אמין לאתרים עם הגנת DDoS, שרתי VPS VDS 🔥 קנה אחסון אתרים אמין עם הגנת DDoS, שרתי VPS VDS | ProHoster