חזרה
OpenBSD לא קיבלה את הפורט של uutils שנכתב ב-Rust, GNU coreutils נשאר בעץ
SiTech AI Team2 წთ. საკითხავი

OpenBSD לא קיבלה את הפורט של uutils שנכתב ב-Rust, GNU coreutils נשאר בעץ

ברשימת התפוצה של OpenBSD ports לא התקבלה הצעה להוסיף את uutils שנכתב ב-Rust כתחליף לכלי GNU. Theo de Raadt כינה כל ניסיון החלפה מבוי סתום מוחלט.

ב-20 בספטמבר 2026 רשימת התפוצה של OpenBSD ports לא קיבלה הצעה להוסיף את uutils שנכתב ב-Rust כתחליף לכלי GNU. מייסד הפרויקט Theo de Raadt הכריז שכל החלפה של הפורט GPL coreutils היא מבוי סתום מוחלט.

מה הוצע

David Uhden Collado הציג את sysutils/uutils כפורט מרובה חבילות: המטא-חבילה מתקינה את uutils-coreutils, uutils-findutils, uutils-diffutils, uutils-grep, uutils-awk, uutils-sed ו-uutils-tar, וחלק ה-coreutils מבוסס על uutils/coreutils 0.12.0. המטרה הייתה שהמימושים האלה ישמשו חלופה לפורטים של GNU בלי לשנות קוד של פורטים תלויים: uutils-coreutils מתקין פקודות עם אותו קידומת g כמו sysutils/coreutils, כקישורים סימבוליים לקובץ בינארי multicall, וכל חבילה מתנגשת עם מימוש GNU המתאים ומצהירה על פורט GNU כ-@pkgpath משני.

המחבר הודה שהתאימות אינה מלאה: ל-uutils-diffutils אין diff3 ו-sdiff, ו-uutils-awk הוא בעיקר מימוש POSIX.

איך הגיבו

Stuart Henderson כתב שהוא לא רואה בכך גישה מתאימה ל-ports. המחבר השיב שהוא מתעניין בשכתובים ב-Rust, ש-Ubuntu 26.10 כבר אימצה את uutils coreutils כי הפרויקט הגיע לבגרות מקובלת, ושהרישיון MIT המתירני שלהם מתאים היטב ל-OpenBSD.

תגובתו של Theo de Raadt הייתה משפט אחד: „Smells like agenda.“ לדעתו, משתמשים לא זקוקים לערכה שנייה של כלים ברישיון מתירני שמתנהלת רק במעט אחרת מהקיימת: אם צינור משתמש ב-ls של OpenBSD יחד עם sed או cut של OpenBSD ובמקרה נשען על פלט לא סטנדרטי, החלפת אותו ls ב-ls אחר תגרום להתנגשות בהתנהגות של כלים לא סטנדרטיים. על האזכור של Rust הוא הוסיף: „Oh, because it is written in Rust. Your agenda is showing.“

למה GNU coreutils נשאר

de Raadt הסביר לאחר מכן את עמדת הפרויקט: coreutils בעיקר תומך בסביבות בנייה רגישות להתנהגות GNU ומקל על בניית פורטים מורכבים; המטרה אינה שהוא יהיה נוח לעבודה יומיומית, שבה יש להשתמש בכלים המקוריים של OpenBSD בדרכים סטנדרטיות. מכיוון שסביבת הבנייה תלויה ביציבות מרבית של coreutils המשתנה לאט, כל שינוי בהתנהגות יגזול זמן ממפתחי ports.

Stuart Henderson אמר שהוא לא רואה בעיה אם הכלים יהיו ב-ports למי שרוצה ובתמיכת מפתחים להכניסם לעץ, אבל הציב שני תנאים: הם לא צריכים להתנגש בכלי GNU, ולכן זקוקים לקידומת או לספרייה אחרת, ולא ניתן להשתמש בהם כתלות של פורטים אחרים במקום כלי GNU, כי Rust מגביל יותר מדי ארכיטקטורות.

כתוצאה מכך, המצב הקיים ללא שינוי: פורטים שדורשים התנהגות GNU עדיין תלויים ב-GNU coreutils ברישיון GPL, והפורט של uutils לא התקבל לעץ.

SSiTech

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

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