תוכנה חופשית וקוד פתוח בארגון - חקר ארועים - פרק שני - 5 - רשיונות תוכנה

מתוך ויקיטקסט, מאגר הטקסטים החופשי

תוכנה חופשית וקוד פתוח בארגון - חקר ארועים - פרק שני – רשיונות תוכנה

2 רשיונות תוכנה .5 למרבית התוכנות מצורף רישיון שימוש. רישיון זה, בעל תוקף משפטי מחייב, מסביר מהם התנאים לשימוש בתוכנה או במרכיביה. כל פרט או ארגון יכול להחליט אם להשתמש בתוכנה במסגרת הרישיון או להפר את הרישיון ולהשתמש בה כרצונו. הפרת רישיון עלולה לגרור משתמש לתביעה משפטית מצד בעל הזכויות בתוכנה. רשימה ממצה של רישיונות תוכנה קיימים אפשר בנספח ג. הנושא היחיד שמוסכם בכל סוגי ,[Bollinger (2002)] MITRE למצוא בסקר הרישיונות הוא חוסר אחריות מוחלט לנזקים או לטעויות (לצערם של הלקוחות). ככלל, יש שלוש קבוצות עיקריות של רישיונות: ברישיון מופיעות במרבית ההגבלות שתוארו .(EULA תוכנה עם רישיון קנייני (בדרך כלל בשם קודם לכן. תוכנה זו יכולה להיבנות על תוכנה ברישיון פתוח. האיסורים הם: אסור לשכפל את התוכנה או למסרה לצד שלישי. אסור לנסות לפענח כיצד נכתבה התוכנה. הגבלה למדינות שבהן מותר להשתמש בתוכנה. בעיקר הגבלות יצוא של ממשלת ארצות הברית. הגבלות נפחי שימוש: הגבלה למספר משתמשים רשום, הגבלה למספר משתמשים בו זמנית, הגבלה לכמות זיכרון, הגבלה למספר מעבדים, הגבלה לתאריך. איסור על חשיפת בעיות או שגיאות. איסור על מבחני ביצועים (בין לתוכנה בלבד ובין לתוכנות מתחרות). יש סוגים רבים של רישיונות פתוחים. פירוט בנספח ב). ) Open source תוכנה ברישיון קוד פתוח תוכנה שהקוד לכתיבתה זמין (בין בתוכנה עצמה ובין באתר מסוים). אפשר לשלבה עם תוכנות קוד פתוח אחרות או תוכנות קנייניות. בדרך כלל מחייבת אזכור של מקורותיה, נתינת קרדיט לקבוצת המפתחים. הגדרות אלו כוללות גם את הרישיון החופשי, אך יש שוני מהותי, ולכן במחקר זה יש הפרדה בין השניים. רישיון שמחייב הפצת הקוד ולא מאפשר .(GNU/GPL, LGPL, GFDL) תוכנה עם רישיון חופשי נטילת זכויות של מפיץ. מי שמערב תוכנה זו בתוכנה שיצר, חייב להפיץ את כל התוכנה ברישיון חופשי. למשל, אם פיתחת תוכנה והשתמשת לפחות בספרייה אחת ברישיון חופשי, אז חובתך ההפצה ,GPL- זו גם הבעיה ב .GPL- לחשוף את כל הקוד בתוכנה ולהשתמש ברישיון ה הוויראלית. אם השתמשת קצת או הרבה בתוכנה עם רישיון זה, אז כל התוכנה חייבת להיות בעלת רישיון זה. לכן מעט מאוד חברות קנייניות מנצלות תוכנות אלו לפיתוח. - 27 - GNU/GPL 2.5.1 רישיון המספור של 0 עד 3 שייך להומור של .(www.fsf.org) רישיון שכולל ארבעה עקרונות מחייבים ארבע החירויות (הרישיון כולו מפורט בנספח א): ,C תוכנתי חירות 0 – החירות להריץ תוכנה, לכל מטרה שהיא חירות 1 – החירות לחקור כיצד התוכנה פועלת ולהתאים את התוכנה לצרכיך (גישה לקוד המקור היא תנאי מוקדם והכרחי לתנאי זה) חירות 2 – החירות להפיץ עותקים כדי לעזור לזולתך) חירות 3 – החירות לשפר את התוכנה, שחרור של התוכנה המשופרת לציבור כך שכל הקהילה תרוויח (גישה לקוד המקור היא תנאי מוקדם והכרחי לתנאי זה) רישיון זה מדגיש את החירות לחקור ולפתח באופן חופשי. פירות המחקר והפיתוח שברישיון זה, תמיד יהיו שייכים לקהילה, ואסור על גורמים אחרים לכלול אותם או לבקש לרשום פטנט עליהם. החיוב, על כל מי שמפתח, משנה או כולל תוכנה זו במסגרת תוכנה שלו, הוא הפצת כלל התוכנה המשמעות היא הפצה ויראלית – מי "שנוגע" ברישיון נדבק בו. מעל לכול, רישיון זה בא .GPL- כ להבטיח את המשך הפיתוח (לא ניתן להשתלט על רישיון זה) ואת המשך החירות לחקור ולשנות. רישיון זה אינו עוסק בכספים, על אף שהוא מאפשר לגבות תשלום תמורת הפצה פיזית של תוכנה. עם זאת, המחיר תמיד ייגרר למחירי עלות, כי כל אחד יכול להפיץ תוכנה זו. 2.5.2 רישיון קוד פתוח מאחר שאין רישיון אחד, הרי שכל .Open source יש קבוצה גדולה של רישיונות המאוגדים בשם גורם עושה בשם כרצונו, וברישיון מסוג הזה תמיד עולה השאלה: “How open is open enough?” [West, Dendrick (2001)] ההרשאות וההגבלות הן רבות ושונות, ולהלן פירוטן (רשימה מלאה והעקרונות מפורטים בנספח ב. (www.opensource.org/licences 1. אפשרות הפצה חופשית. הרישיון לא ימנע מכל צד שלישי להפיץ תוכנה זו או תוכנה הכוללת תוכנה זו. לא יידרשו תמלוגים תמורת מכירה. 2. קוד המקור יופץ עם התוכנה או יפנה למקום שבו אפשר להשיג את קוד המקור. 3. הרישיון יחייב להפיץ את התוכנה (או תוכנות שיכללו אותה) באותו רישיון ובאותן הרשאות שניתנו למקבל. 4. הרישיון מחייב את מי שביצעו שינויים, לכלול הודעה מתאימה על כך. חייב להיות הבדל (הודעה על שינוי) בין התוכנה שנכתבה במקור לבין תוספות או תיקונים מאוחרים יותר. מבצעי השינוי יכולים שלא לכלול את הקוד שלהם. 5. לא תותר הפליה בין אנשים או קבוצות שונות. 6. לא תותר הפליה בתחומי עיסוק שונים. 7. הרישיון חייב להיות מופץ עם התוכנה, וחייב לאפשר עיון לפני השימוש. - 28 - 8. חובה על הרישיון שלא להיות ספציפי למוצר מסוים, למנוע אפשרות של הוצאת רישיון תוכנה מהקשרו. 9. הרישיון אינו יכול לאסור שימוש בתוכנות אחרות או רישיונות אחרים. 10 . הרישיון חייב להיות ניטרלי מבחינה טכנולוגית. אין עליו לאסור שימוש בטכנולוגיה מסוימת או בממשק מסוים. יכול להיכלל במסגרת זו (יש מחלוקת אפשרית בנוגע לסעיף 9) כרישיון מחייב GPL- לכן רישיון ה MIT, BSD, : יותר, אך גם כלול במסגרת. מובן שגם רישיונות רבים אחרים נכללים, כגון . Artistic, X11, Apache, MPL, IBM PL חברת מיקרוסופט Shared Source 2.5.3 רישיון תשובתה הראשונה של מיקרוסופט לנושא של קוד פתוח. מיקרוסופט מבוססת על קוד קנייני וזהו מקור הכנסתה העיקרי, לכן רישיון זה מפתיע. עם זאת, בחברה קשובים לשוק ורוצים להראות שגם הם עושים משהו בנושא. ככלל, רישיון זה מיועד ללקוחות האסטרטגיים שמיקרוסופט אינה מעונינת לאבד: חברות ענק, ארגונים גדולים, ממשלות. הרישיון מאפשר לראות או לקרוא את מרכיבי התוכנה, כלומר גישה לקוד המקור. מידע אישי, אנשים שראו את קוד המקור התרשמו מאיכות הנדסית גבוהה של בניית תוכנה. עם זאת מגביל הרישיון, את המשתמש בו, במגבלות הבאות:

  • שמירת סודיות - אסור לגלות לאחר או לפרסם את כל מה שרואים.
  • אסור לפרסם ביקורת המבוססת על המידע שאליו נחשפים.
  • אסור לשנות את התוכנה.
  • אסור לבנות תוכנה לשימוש מתוך קוד המקור או עירוב של קוד המקור עם קוד אחר כלשהו.
  • לא ניתן להדר את הקוד ולוודא כי מקוד זה מורכבת התוכנה בשימוש.

יש המזהירים מפני שימוש ברישיון זה של מיקרוסופט מאחר שמידע יכול לעבור באופן חד צדדי בלבד – מהלקוח אל מיקרוסופט. - 29 - 2.5.4 השוואות בין סוגי רישיונות [Bollinger (2002), MITRE, page 15] שרטוט 5 - טבלה Table 1. A Comparison of FOSS and Related Licenses Property/Licence GPL LPGL BSD, MIT Apache Public Domain Microsoft MIT*EULA a. Can be stored on disk with other license types Y Y Y Y Y (bans FOSS) 5 b. Can be executed in parallel with other license types Y Y Y Y Y (bans FOSS) 5 c. Can be executed on top of other license types Y Y Y Y Y (bans FOSS) 5 d. Can be executed underneath other license types Y 1 Y Y Y Y (bans FOSS) 5 e. Source can be integrated with other license types Y Y Y Y (bans FOSS) 5 f. User decides if and when to publish derived code Y 2 Y Y Y Y Y g. Software can be sold for a profit Y Y Y Y Y Y h. Binary code can be replicated by users as desired Y 2 Y Y Y Y i. Binary code can be redistributed as desired Y 3 Y Y Y Y j. Binary code can be used as desired by users Y Y Y Y Y k. New users always receive source code of derived works Y Y 6 l. New users receive full source modification rights for derived works Y Y 6 m. New users receive full redistribution rights for derived works Y Y 6 - 30 - n. Binary code can be released without source code Y Y Y Y o. Derived code can have a different type of license 7 Y p. Original source can be incorporated into closed source products Y 1 Provided that both programs are fully and independently usable in other unrelated contexts. 2 Provided that the binary code has not been previously released to the public. 3 Provided that source code is always redistributed along with the binary code. 4 The proprietary Microsoft MIT EULA is not related to the similarly named MIT (X/MIT) license. 5 Specifically bans use of: GPL, LGPL, Artistic, Perl, Mozilla, Netscape, Sun Community, and Sun Industry Standards. 6 The rights granted by LGPL do not necessarily extend to the applications linked into an LGPL library. 7 The LGPL does permit re-licensing under GPL as a special case, but not re-licensing under any other license type. License Acronyms: GPL - GNU General Public License (Microsoft) MIT -Mobile Internet Toolkit LGPL - GNU Lesser General Public License (X/MIT) MIT - Massachusetts Institute of Technology BSD - Berkeley Software Distribution EULA - End-User License Agreement MPL - Mozilla Public License FOSS - Free and Open-Source Software - 31 -