חזרה

Libghostty 1.0 הופכת את ספריית אמולציית המסוף הניידת ליציבה ב-C ABI
SiTech AI Team4 דק׳ קריאה

Libghostty 1.0 הופכת את ספריית אמולציית המסוף הניידת ליציבה ב-C ABI

Mitchell Hashimoto הודיע ב-6 בנובמבר 2026 על libghostty 1.0: ספריית C ניידת ומהירה לאמולציית מסוף שהוצאה מ-Ghostty, עם ספרייה ו-C ABI יציבים, אימוץ נרחב ותמיכה בחבילות.

מיטשל האשימוטו הכריז ב-6 בנובמבר 2026 על libghostty 1.0, ספריית C ניידת ובעלת ביצועים גבוהים לאמולציית מסוף, שהוצאה ישירות מהליבה של Ghostty. השחרור הופך גם את הספרייה עצמה וגם את ה-C ABI שלה ליציבים. לפני קצת יותר משנה מודול ה-Zig רק זה עתה מוזג, ממשק ה-C API לא היה קיים, ואיש מלבד Ghostty לא השתמש בספרייה.

אימוץ ומערכת אקולוגית

המסופים ב-IDE-ים של JetBrains פועלים כעת על libghostty, ולפי דוח של JetBrains מדובר ביותר מ-12.5 מיליון משתמשים פעילים. ל-Neovim יש בקשת מיזוג מאושרת להחלפת libvterm ב-libghostty-vt, שתסגור בעיה בת 10 שנים בנושא סידור מחדש של היסטוריית הגלילה בשינוי גודל; המתחזקים ממתינים לשחרור מתויג לפני המיזוג, כדי שהפצות יוכלו לארוז את התלות בנפרד. מפתחי KDE מתנסים בתחליף ל-Konsole שנבנה עליה, Turborepo של Vercel משתמש בה כדי להציג פלט משימות ב-TUI שלו, devenv משתמש בה כדי להריץ מעטפות פקודה, ו-Antithesis השתמשה בה לבדיקות fuzz לתוכניות TUI ומצאה באגים אמיתיים ב-btop ובאחרות. Ghostel מביא אותה ל-Emacs, ghostty-web מספקת גרסת WASM עם API תואם ל-Xterm.js, ו-OrbStack משתילה אותה במוצר שלה. מסופים חדשים וכלי קידוד אג'נטיים כמו herdr ו-cmux נבנו עליה, ויש חיבורי שפה ל-Rust, Go, JavaScript, Swift, Python, .NET, Elixir, Dart, Java ועוד. רשימת awesome-libghostty עוקבת אחרי יותר ממאה פרויקטים. לפי הפרויקט, כיום יותר אנשים משתמשים במסוף שמבוסס על libghostty מאשר באפליקציית Ghostty עצמה, ובפער גדול מאוד.

יציבות ABI ואריזה

libghostty-vt עוקבת אחר גרסאות סמנטיות עם הבטחות תאימות ABI קפדניות, ויש לה מדיניות יציבות ABI אמיתית שנאכפת בפועל. כל אובייקט הוא handle אטום, ומאות ערכים נקראים ונכתבים דרך סט קטן של getters ו-setters שממופתחים ב-enum, כך שאפשר להוסיף ערכים חדשים בלי להוסיף סמל חדש. תוכניות עם headers חדשים שמקושרות לספרייה ישנה מקבלות GHOSTTY_UNSUPPORTED במקום קריסה או התנהגות לא מוגדרת. המבנים המעטים שאינם אטומים נושאים את הגודל שלהם כדי שאפשר יהיה להוסיף שדות בהמשך, או מכילים ריפוד שמור. enums מוצמדים ל-int בכל מהדר, ככל שתקן C מאפשר. ה-CI אוכף את המדיניות: כל שינוי נבדק עם libabigail מול בסיס מחויב ב-Linux, ומול רשימות טיפוסים קנוניות ב-macOS וב-WebAssembly. בפלטפורמות ELF כל סמל מיוצא מקבל גם גרסה, ולכן ה-loader הדינמי מסרב לטעון ספרייה לא מתאימה לפי שם במקום להיכשל בדרך מסתורית מאוחר יותר. השחרור מוסיף גם את כלי הבנייה, ה-tarballs, רשימות רישוי תלויות ותיעוד, כדי שכל מערכת הפעלה והפצה מרכזית תוכל לארוז את libghostty-vt בכלים הרשמיים שלה. ל-libghostty מחזור שחרורים נפרד מזה של אפליקציית Ghostty, וה-tarballs שלו מכילים רק את הקבצים והתלויות שהוא צריך. כל שחרור מפרסם tarball מקור חתום ו-tarball תלויות נלווה, כדי שאפשר יהיה לבנות את הספרייה לגמרי בלי רשת. הבנייה מתקינה ספריות משותפות וסטטיות עם SONAME תקין, headers, קבצי pkg-config וקונפיגורציית חבילה של CMake, ומכבדת prefix, DESTDIR ו-lib64. הספרייה ברישיון MIT, בזמן ריצה היא צריכה רק libc, ואפשר לבנות אותה גם כ-freestanding. התלויות שלה ברישיון מתירני וכוללות את simdutf ו-Google Highway, טבלת Unicode קומפקטית ו-Wuffs; אין קוד copyleft בשום מקום בעץ התלויות.

ניידות ושימוש במשאבים

הפלטפורמות שנבדקות ב-CI, כולל בדיקות יחידה מלאות והרצת כל הדוגמאות: Linux עם glibc או musl על x86_64 ו-aarch64, macOS 13 ואילך על x86_64 ו-aarch64, iOS 13 ואילך על aarch64, FreeBSD על x86_64 ו-aarch64, Windows על x86_64, Android על aarch64, x86_64 ו-arm, ו-WebAssembly wasm32 freestanding. יעדים שנבנים ב-CI בלי בדיקות: bare metal riscv32 ו-thumb, WebAssembly WASI wasm32, Windows arm64, illumos x86_64 ו-x86 של 32 סיביות. הספרייה לא יוצרת threads, מקצה זיכרון רק דרך allocator שאפשר להתאים, ומשתמשת במינימום מחשוב וזיכרון. המחבר מדווח שהריץ 10,000 מסופים פעילים, כל אחד עם shell חי שמייצר פלט, על שרת Linux עם 4 ליבות ו-8 GB זיכרון; בבדיקה הוא נאלץ להשתמש ב-dash כי bash צרך הרבה יותר זיכרון ולא נכנס לתקציב של 8 GB.

מה הלאה

libghostty 1.0 היא אבן דרך משמעותית: אפשר כעת ליצור מסוף בכ-1,500 שורות C עם יותר תכונות וביצועים טובים יותר מכמעט כל מסוף שהיה קיים ב-2025, ורוב המסופים שקיימים היום ב-2026. ובזכות מערכת אקולוגית עשירה של חיבורי שפה אפשר לעשות זאת בכל שפה מרכזית, כמעט בלי מאמץ. התיעוד, הדוגמאות וההורדות נמצאים ב-lib.ghostty.org.

מקורות: Mitchell Hashimoto

SiTech

SiTech — פיתוח אתרים בכוח ה-AI

אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.