כשאנשים רואים שאנו משתמשים וממליצים על השם גנו\לינוקס למערכת שרבים אחרים מכנים פשוט ”לינוקס“, הם שואלים הרבה שאלות. הנה שאלות נפוצות ותשובותינו.
ראה לינוקס ופרוייקט גנו בשביל הסברים נוספים, ופרוייקט גנו בשביל היסטוריה.
כינוי המערכת בשם גנו\לינוקס מראה על הכרה בתפקיד שהאידיאליזם שלנו מילא בבניית הקהילה שלנו, ועוזר לציבור להכיר בחשיבות המעשית של האידיאלים האלה.
האנשים ששילבו את לינוקס עם מערכת גנו לא היו מודעים לכך שזה הכיוון אליו התנקזו מאמציהם. הם התחילו עם לינוקס, הקרנל, והוסיפו לו את גנו חלק אחרי חלק. אחרי זמן מה היה להם משהו שהוא יותר גנו מלינוקס, אך הם לא קלטו את זה, והם קראו לזה ”לינוקס“ למרות שהשם כבר לא התאים למה שהיה להם. לקח לנו מספר שנים להבין את גודל הבעיה ולבקש מאנשים לתקן את עצמם. עד אז לטעות היה יתרון תפוצה משמעותי.
רוב האנשים שקוראים למערכת ”לינוקס“ מעולם לא שמעו מדוע זה לא נכון לקרוא כך למערכת. הם ראו אחרים משתמשים בשם, והניחו שהם צודקים. למשל, לרוב הם מאמינים שפיתוחה החל על ידי לינוס טורבאלדס ב1991. ראיה שגויה זו נוטה לחזק את הרעיון שיש לקרוא למערכת ”לינוקס“.
רבות מהשאלות בקובץ זה מייצגות את נסיונותיהם של אנשים למצוא צידוק לשם הראשון בו למדו להשתמש.
לינוס טורבאלדס אולי היה כותב קרנל דמוי-יוניקס ב1991 ללא הדוגמה של גנו. אך הוא בוודאי לא היה תוכנה חופשית, מאחר ולינוקס הפכה חופשית ב1992 כשלינוס שחרר אותה תחת GNU GPL (ראה release notes לגירסה 0.12). בכל מקרה, קרנל לבד לא היה עושה את מה שהשילוב גנו\לינוקס עשה.
אבל יש אנשים שלא אוהבים שאנחנו אומרים את זה. לפעמים האנשים האלה דוחפים אותנו הצידה בתגובה. לפעמים הם כל כך גסי רוח שקשה שלא לתהות אם הם מנסים להשתיק אותנו בכוונה. זה לא משתיק אותנו, אבל זה כן מפלג את הקהילה, אז אנחנו מקווים שאתה יכול לגרום להם להפסיק.
בכל מקרה, זוהי רק סיבה משנית לפילוג בקהילה שלנו. הפילוג הגדול יותר הוא בין אנשים שמעריכים תוכנה חופשית כנושא חברתי ומוסרי ומחשיבים תוכנה קניינית כבעיה (תומכים של תנועת התוכנה החופשית), ואלו שמצטטים רק יתרונות מעשיים ומציגים תוכנה חופשית רק כמודל פיתוח יעיל (תנועת הקוד הפתוח).
חוסר ההסכמה אינו רק עניין של שמות – זה עניין של ערכים בסיסיים שונים. חיוני לקהילה לראות ולחשוב על חוסר הסכמה זה. השמות ”תוכנה חופשית“ ו”קוד פתוח“ הם הסימנים של שתי העמדות. ראה מדוע תוכנה חופשית טובה יותר מקוד פתוח.
חוסר ההסכמה לגבי ערכים מתקשר חלקית למידת תשומת הלב שאנשים מקדישים לתפקידו של פרוייקט גנו בקהילה. אנשים שמעריכים חופש לרוב יקראו למערכת ”גנו\לינוקס“, ואנשים שלמדו שהמערכת היא ”גנו\לינוקס“ סביר להניח שישימו לב לטיעונים הפילוסופיים שלנו לגבי חופש וקהילה (ולכן בחירת השם למערכת חשובה לקהילה). בכל מקרה, חוסר ההסכמה בוודאי היה קיים גם אם כולם ידעו את מוצאה האמיתי של המערכת ואת שמה הנכון, משום שהנושא הוא מהותי. הוא ייעלם רק אם אנו, שמעריכים חופש נשכנע את כולם (מה שלא הולך להיות קל) או שנובס לחלוטין (בואו נקווה שזה לא יקרה).
פרוייקט גנו נקרא על שם מערכת ההפעלה גנו– זהו פרוייקט לפיתוח מערכת גנו. (ראה ההצהרה הראשונית מ 1983 ב.)
פיתחנו תוכנות כמו GCC, GNU Emacs, BASH וכו' משום שנזקקנו להם במערכת ההפעלה גנו. GCC, אוסף הקומפיילרים של גנו, הוא הקומפיילר שכתבנו למערכת ההפעלה גנו. גם את Ghostscript, GNU chess ו GNOME פיתחנו בשביל מערכת .GNU
הקרנל הוא אחת מהתוכנות במערכת הפעלה – התוכנה שמקצה את משאבי המערכת לתוכנות אחרות שרצות. הקרנל גם מטפל בהתחלת והפסקת תוכנות אחרות.
כדי לבלבל את העניינים, יש אנשים שמשתמשים במונח ”מערכת הפעלה“ כדי לומר ”קרנל“. שני השימושים של המונח מקורם מלפני שנים רבות. השימוש ב”מערכת הפעלה“ תוך כוונה ל ”קרנל“ נמצאת במספר ספרים על תכנון מערכות, כבר בשנות ה80'. ”מערכת ההפעלה יוניקס“ כללה את כל תוכנות המערכת, וגירסת ברקלי של יוניקס כללה אפילו משחקים. מאחר והתכוונו שגנו תהיה מערכת הפעלה דמויית-יוניקס, אנו משתמשים במושג ”מערכת הפעלה“ באותה דרך.
רוב הזמן כשאנשים מדברים על ”מערכת ההפעלה לינוקס“ הם משתמשים ב”מערכת הפעלה“ באותה דרך בה אנו משתמשים: כדי להביע אוסף שלם של תוכנות. אם לזה אתה מתייחס, אנא קרא לזה ”גנו\לינוקס“. אם אתה מתכוון רק לקרנל, אז ”לינוקס“ הוא השם הנכון, אך אנא אמור גם ”קרנל“ כדי להמנע מבלבול לגבי חלק התוכנה אליו אתה מתכוון.
מכיוון ששני מבנים אלה משמשים לחילופין, הביטוי ”הlinux kernel“ יכול להתפרש בטעות כאומר ”הקרנל של לינוקס“, ולרמוז שלינוקס חייב להיות יותר מקרנל. אתה יכול להמנע מאפשרות זו אם תאמר או תכתוב ”הקרנל, לינוקס“ או ”לינוקס, הקרנל“.
השם הלגיטימי הקצר ביותר למערכת הוא ”גנו“, אך אנו קוראים לזה ”גנו\לינוקס“ מהסיבות שמובאות למטה.
אם אתה מרגיש צורך חזק לתת קרדיט היכן שצריך, יתכן שתרגיש שלמספר מפתחים משניים גם מגיע קרדיט בשם המערכת. אם זה המצב, לא אנחנו נתווכח איתך. אם אתה מרגיש שלX11 מגיע קרדיט בשם המערכת, ואתה רוצה לקרוא למערכת גנו\X11\לינוקס, עשה זאת. אם אתה מרגיש שPerl פשוט זועקת לאזכור, ואתה רוצה לכתוב גנו\Perl\לינוקס, בבקשה.
מאחר ושם ארוך כמו גנו\אפאצ'י\לינוקס\TeX\Perl\פייתון\FreeCiv הוא כבר מגוחך, תצטרך להציב את הסף במקום מסויים ולהשמיט את השמות של תורמים משניים רבים אחרים. אין מקום נכון מסויים להציב את הסף, כך שבכל מקום שתציב אותו, לא נתווכח.
רמות סף שונות יובילו לבחירות שם שונות למערכת. אך שם אחד שלא יכול לנבוע משיקולים של הגינות ונתינת קרדיט, בכל רמת סף שהיא, הוא ”לינוקס“. זה לא יכול להיות הוגן לתת קרדיט לתרומה משנית אחת (לינוקס) ולהשמיט את התרומה העיקרית (גנו).
לינוקס אינו חבילה של גנו; הוא לא פותח תחת חסותו של פרוייקט גנו או נתרם נקודתית לפרוייקט גנו. לינוס טורבאלדס כתב את לינוקס בצורה עצמאית, כפרוייקט משלו. כך שהמשמעות ”לינוקס שהוא חבילה של גנו“ אינה נכונה.
איננו מדברים על גירסת גנו נפרדת של לינוקס, הקרנל. לפרוייקט גנו אין גירסה נפרדת של לינוקס. מערכות גנו,לינוקס לא משתמשות בגירסה נפרדת של לינוקס; השימוש העיקרי של לינוקס הוא במערכות אלו, והגירסה הסטנדרטית של לינוקס מפותחת בשבילן. כך ש ”גירסת גנו של לינוקס“ גם היא אינה נכונה.
אנו מדברים על גירסה של גנו, שמובחנת בכל שיש לה את לינוקס כקרנל. לוכסן מתאים למצב מאחר והוא אומר ”שילוב“. (תחשוב על ”קלט\פלט“). מערכת זו היא שילוס של גנו ולינוקס; לפיכך, ”גנו\לינוקס“.
ישנן דרכים אחרות להביע ”שילוב“. אם אתה חושב שסימן פלוס ברור יותר, תשתמש בו. בצרפתית, מקף ברור יותר: ”GNU-Linux“. בספרדית אנו לפעמים אומרים ”GNU con Linux“.
אבל אם אתה מעדיף לקרוא למערכת ”לינוקס\גנו“, זה הרבה יותר טוב ממה שאנשים בדרך כלל עושים, שזה להשמיט את גנו לחלוטין ולגרום לדברים להיראות כאילו כל המערכת היא לינוקס.
אנו לא יכולים לשנות אותם, אך אנו לא מהסוג שנכנע רק בגלל שהדרך לא קלה. יכול להיות שאין לך השפעה על התעשיה כמו לIBM וREDHAT, אך אתה עדיין יכול לעזור. ביחד אנחנו יכולים לשנות את המצב עד לנקודה בה החברות ירויחו יותר אם יקראו לזה ”גנו\לינוקס“.
השאלה היא איך לנסות לשנות את זה.
בהתחשב בכך שרוב הקהילה שמשתמשת בגירסה זו של גנו כבר כיום לא מבינה שזה מה שזה, התכחשות לגירסאות בנות כלאיים אלו על ידי כך שנטען שהן לא גנו, לא ילמד משתמשים להעריך יותר חופש. הם לא יקבלו את המסר הנכון. הם רק יגיבו בכך שהם מעולם לא חשבו שהמערכות הן גנו מלכתחילה.
הדרך להוביל את המשתמשים הללו לראות את הקשר עם חופש היא בדיוק להיפך: להודיע להם שכל גרסאות אלו של המערכת הן אכן גרסאות של גנו, שכולן מבוססות על מערכת שקיימת במיוחד למען החופש של המשתמש. עם הבנה זו, הם יכולים להכיר בLindows ובמה שנקרא ”United Linux“ כגרסאות מהולות ומסולפות של גנו.
מאוד יעיל להתחיל קבוצות משתמשים של גנו\לינוקס שקוראות למערכת גנו\לינוקס ומאמצות את האידיאלים של פרוייקט גנו כבסיס לפעילויות שלהן. אם לקבוצת המשתמשים של לינוקס באיזור שלך יש את הבעיות שמתוארות למעלה, אנו מציעים שתחתור בתוך הקבוצה לשנות את האוריינטציה (והשם) שלה , או שתתחיל קבוצה חדשה. לאנשים שמתמקדים במטרות השטחיות יותר יש זכות להחזיק בהשקפה שלהם, אך אל תיתן להם לגרור אותך איתם!
ובאשר לפיתוח הפצה של גנו\לינוקס, כבר עשינו את זה פעם, כשמימנו את הפיתוח המוקדם של Debian GNU/linux. לעשות את זה שוב עכשיו לא נראה יעיל; זה יהיה הרבה עבודה, ואלא אם להפצה החדשה יהיו יתרונית מעשיים מהותיים על פני הפצות אחרות, היא לא תשרת אף מטרה.
ישנה עוד סיבה שאיננו רוצים לקחת איזו גרסה קיימת של גנו\לינוקס ולקרוא לה ”גנו“: זה יהיה במידה מסויימת כמו לעשות גירסה של מערכת גנו ולקרוא לה ”לינוקס“.
למרבה הצער, גילינו שהם היו פחות מעוניינים לשתף פעולה איתנו. אחד מהם אפילו אמר לנו שלא מעניין אותו לעבוד עם פרוייקט גנו בגלל שהוא ”משתמש של לינוקס“. זה היכה אותנו בהלם, בגלל שהאנשים שהמירו חבילות של גנו למערכות אחרות היו בעלי מוטיבציה חזקה לשתף איתנו פעולה. אבל האנשים האלה, שמפתחים מערכת שמבוססת ברובה על גנו, היו הקבוצה הראשונה (ועדיין, למעשה, היחידה) שלא רצתה לעבוד איתנו.
החוויה הזאת היא שהכירה אותנו עם העובדה שאנשים קראו לגירסה של מערכת גנו ”לינוקס“, ושטעות זו מעכבת את עבודתנו. הבקשה שלנו לקרוא למערכת ”גנו\לינוקס“ היא התגובה לכך, ולבעיות אחרות שנגרמו מן הכינוי המוטעה ”לינוקס“.
למעשה לא חיכינו. התחלנו לדבר על זה בפרטיות עם מפתחים ומפיצים ב1994, ועשינו קמפיין ציבורי יותר ב1996. נמשיך כל זמן שהדבר יידרש.
גנו, מערכת הפעלה, בנויה מתוכנות רבות ושונות. חלק מהתוכנות בגנו נכתבו כחלק מפרוייקט גנו, או נתרמו לו במיוחד, אלו הן החבילות גנו, ולרוב אנחנו משתמשים ב“GNU” בשם שלהן.
מפתחי התוכנה הם שמחליטים אם הם רוצים לתרום ולהפוך אותה לחבילת גנו. אם פיתחת תוכנה וברצונך שהיא תהיה חבילת גנו, אנא כתוב ל<gnu@gnu.org>, כך שנוכל לבדוק אותה ולהחליט אם אנחנו רוצים אותה.
יהיה זה לא הוגן לשים את השם גנו על כל תוכנה שמשוחררת תחת GPL. אם אתה כותב תוכנה ומשחרר אותה תחת GPL, זה לא אומר שפרוייקט גנו כתב אותה או שאתה כתבת אותה בשבילנו. הקרנל לינוקס, למשל, שוחרר תחת GNU GPL, אבל לינוס לא כתב אותו כחלק מפרוייקט גנו – הוא עשה את העבודה בצורה עצמאית. אם משהו אינו חבילת גנו, פרוייקט גנו לא יכול לקחת את הקרדיט עליו, ולשים ”GNU“ בשמו יהיה לא ראוי.
מצד שני, כן מגיע לנו הקרדיט על מערכת גנו ככלל, גם אם לא על כל תוכנה ותוכנה בה. המערכת קיימת כמערכת בגלל הנחישות וההתמדה שלנו, החל ב1984. שנים רבות לפני שהתחילו את לינוקס.
מערכת ההפעלה שבה הפך לינוקס לפופולרי היתה זהה בעיקרון למערכת ההפעלה גנו. מה שנותן למערכות אלו את הזהות שלהן הם גנו ולינוקס שבמרכזן, ולאו דווקא לינוקס לבדו.
אין בגנו קוד שהגיע מיוניקס, אך גנו היא מערכת תואמת יוניקס; לכן רבים מהרעיונות והמפרטים של גנו אכן באים מיוניקס. השם ”גנו“ הוא דרך הומוריסטית לעשות מחווה ליוניקס, בעקבות מסורת האקרית של שמות רקורסיביים שהחלה בשנות ה70.
השם הרקורסיבי הראשון מסוג זה היה TINT Is Not TECO” ,TINT“. היוצר של TINT כתב יישום אחר של TECO (היו כבר רבים מהם, למערכות שונות), אך במקום לקרוא לו בשם משעמם כמו ”somethingorother TECO“, הוא חשב על שם חכם ומשעשע. (זו המשמעות של האקינג: חוכמה משעשעת)
האקרים אחרים נהנו מהשם הזה כל כך שחיקינו את הגישה. נוצרה מסורת שכשאתה כותב תוכנה דומה לתוכנה קיימת (בואו נניח שהשם שלה הוא ”Klever“), אתה נותן לה שם של ראשי תיבות רקורסיביים, כמו ”MINK“ בשביל”MINK Is Not Klever“. באותה רוח קראנו לתחליף שלנו ליוניקס ”GNU's Not Unix“ (גנו אינה יוניקס).
היסטורית, AT&T (שפיתחה את יוניקס) לא רצתה שאף אחד יתן לה קרדיט על ידי שימוש ב”Unix“ בשם של מערכת דומה. AT&T לא רצתה זאת גם אם המערכת השתמשה בקוד מיוניקס, אפילו אם היא היתה 99% יוניקס. AT&T תיעבה כל כך קרדיט מסוג זה שהיא איימה לתבוע על שימוש בסימן רשום את מי שניסה להציע את זה. בגלל זה לכל הגרסאות המותאמות השונות של יוניקס (כולן קנייניות כמו יוניקס עצמה) שנוצרו על ידי חברות מחשבים שונות היו שמות אחרים.
מערכת BSD פותחה על ידי אוניברסיטת ברקלי בקליפורניה כתוכנה לא-חופשית בשנות ה80, והפכה לחופשית בשנות ה90 המוקדמות. כל מערכת הפעלה חופשית שקיימת כיום היא קרוב לוודאי גירסה של מערכת גנו, או סוג של מערכת BSD.
אנשים לפעמים שואלים אם BSD היא גירסה של גנו, כמו גנו\לינוקס. היא לא. מפתחי BSD קיבלו את ההשראה להפיכת הקוד שלהם לתוכנה חופשית מפרוייקט גנו, ובקשות מפורשות מפעילים של גנו עזרו לשכנע אותם להתחיל, אבל לקוד היתה חפיפה מועטה עם זה של גנו.
מערכות BSD כיום משתמשות במספר חבילות גנו, בדיוק כפי שמערכת גנו על גרסותיה משתמשת במספר תוכנות של BSD; אבל בגדול, הן שתי מערכות שונות שהתפתחו בנפרד. מפתחי BSD לא כתבו קרנל והוסיפו אותו למערכת גנו, כך ששם כמו גנו\BSD לא יתאים למצב.
הקשר בין גנו\לינוקס לגנו קרוב הרבה יותר, ולכן השם ”גנו\לינוקס“ מתאים.
אגב, יש פרוייקט לפיתוח גירסה של גנו שמשתמשת בקרנל מ FreeBSD. המפתחים קוראים למערכת ”Debian GNU/FreeBSD“, אבל ”GNU/kernelofFreeBSD“ יהיה מדוייק יותר, מאחר וBSD היא מערכת שלמה, לא רק קרנל. לקרוא להם ”מערכת לינוקס“ ו”מערכת BSD“ יתן רושם מטעה שהם מאוד שונים; מערכת זו לא תהיה מאוד שונה, בשביל המשתמש, מגנו\לינוקס של .Debian
אנשים שחושבים על הקרנל כיותר חשוב מכל שאר המעכת אומרים ”כולם מכילים לינוקס, אז בואו נקרא לכולם מערכות לינוקס“. אך בין כל שתי מערכות כאלה יש שוני ממשי, וכינויים באותו שם זו הטעיה. (זה גורם לאנשים לחשוב על הקרנל כיותר חשוב מכל שאר המערכת, למשל.)
במערכות המשובצות הקטנות, לינוקס יכול להיות רוב המערכת. אולי ”מערכות לינוקס“ הוא השם המצאים בשבילן. הן מאוד שונות ממערכות גנו\לינוקס, שהן יותר גנו מלינוקס. המערכת התיאורטית של IBM שונה מכל אחת מהן. השם הנכון בשבילה יהיה AIX/linux: בעקרון AIX, שבל עם לינוקס כקרנל. שמות שונים אלה יראו למשתמשים איך מערכות אלו שונות.
לינוס מצהיר בפומבי על חוסר הסכמתו עם האידיאלים של תנועת התוכנה החופשית. הוא מפתח תוכנה לא-חופשית (כפי שאמר לפני קהל גדול בתצוגת “Linux”world), ואפילו מחייב מפתחים עמיתים של לינוקס, הקרנל, להשתמש בתוכנה לא-חופשית כדי לגשת למאגר קוד המקור שלו. הוא הולך אפילו יותר רחוק, ומגנה אנשים שטוענים שמהנדסים ומדענים צריכים לשקול את התוצאות החברתיות של העבודה הטכנית שלנו– ובכך דוחה את הלקחים שהחברה למדה מפיתוח פצצת האטום.
אין רע בלכתוב תוכנה חופשית ממניעים של למידה וכיף; הקרנל שלינוס כתב מסיבות אלה היווה תרומה חשובה לקהילה שלנו. אך מניעים אלו אינם הסיבה שבגללה המערכת החופשית המלאה, גנו\לינוקס, קיימת, והם לא יבטיחו את החופש שלנו בעתיד. הציבור צריך לדעת את זה.ללינוס יש את הזכות לקדם את דיעותיו; אולם אנחנו חושבים שעבודתנו הגדולה יותר והחלוצית יותר צריכה לקדם את השקפותינו, לא את השקפותיו.
זה לא מועיל כי ההסבר עלול שלא להקלט, ובוודאי שלא להתפשט. חלק מהאנשים שישמעו את ההסברים שלך ישימו לב, ויתכן שהם ילמדו את התמונה האמיתית של מוצא המערכת. אך לא סביר שהם יחזרו על ההסבר מול אחרים כשהם ידברו על המערכת. הם בוודאי יקראו לה פשוט ”לינוקס“. ומבלי שיתכוונו לכך במידה מיוחדת, יעזרו להפיץ את התמונה השגויה.
זה לא יעיל כי זה לוקח הרבה יותר זמן. להגיד ולכתוב ”גנו\לינוקס“ יקח לך רק מספר שניות ביום, לא דקות, כך שאתה יכול להגיע להרבה יותר אנשים ככה. הפרדה בין לינוקס לגנו\לינוקס כשאתה כותב ומדבר היא הדרך הקלה ביותר לעזור לפרוייקט גנו ביעילות.
למה אנחנו לוקחים את הסיכון בלבקש בקשה שלפעמים גורמת לאנשים לצחוק עלינו? בגלל שלרוב יש לזה תוצאות שעוזרות לפרוייקט גנו. נסתכן בעלבון לא מוצדק בשביל להשיג את מטרותינו.
אם אתה רואה אחד מאותם מצבים אירוניים ולא צודקים מתרחש, אנא אל תשב בצד. למד את האנשים שצוחקים את ההסטוריה האמיתית. כשהם יראו למה הבקשה מוצדקת, אלו עם מעט שכל יפסיקו לצחוק.
זה לא הגיוני לדאוג בקשר להתנכרות לאנשים שגם ככה אינם משתפים פעולה, וזוהי תבוסתנות לא לנסות לתקן בעיה רצינית, מפחד שנכעיס אנשים שמנציחים אותה.לפיכך נמשיך לנסות לתקן את השם של המערכת.
אנו מקווים שאתה לא מסכים עם אמירה זו באותה מידה שאנחנו לא מסכימים איתה.
לא היינו יכולים לפתח מערכת הפעלה חופשית מבלי לדחות קודם את האמונה בה מחזיקים רוב האנשים, שתוכנה קניינית היא לגיטימית ומקובלת.
אנו מקווים שאתם מאלה שבשבילם יש משמעות למה שנכון ומה שלא נכון.