בעקבות X האבוד

| | | | |
כן. זה הגיע ל-FreeBSD, אמנם התמהמה אבל בא. ואם חשבתם שב-Arch זה היה מטרד, וב-Gentoo אתגר, ב-MEPIS מפגע ובדביאן חידון בחרוזים – סימן שלא שמעתם איך זה היה כאן. אז הנה הזדמנות ואפשר לשמוע.

ובכן ערב אחד הרצתי לי, מנומנם למדי, cvsup ports-supfile – שהוא המקביל ל emerge - –sync בג'נטו או apt-get update בדביאן. ונכון, אני מודה נכלם וחפוי-ראש – לא קראתי את ports/UPDATING/ לפני שהקשתי כבדרך אגב portupgrade -a (שהוא המקביל ל emerge world או ל apt-get upgrade בנ"ל) – ופתחתי את הסכר בפני שטפון שאי אפשר לעצרו.

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

העידכון התקדם לו ביד חזקה ובזרוע נטויה. הוריד קימפל התקין וחוזר חלילה. וכך באו להם בזה אחר זה KDE 3.5.6 ו-GNOME חדש, ו-Samba חדשה, ועוד עשרות רבות מקרוביהם וידידיהם.

העניין נמשך לילה ויום ועוד לילה – ובין הא לדא והמון השורות הרצות על המסך, ראיתי פתאום מרצדת לה הודעה על xorg-7.2. הולכות להיות צרות, אמרתי לעצמי, ואכן – הן באו.

כשהסתיים העידכון קרס X וחלף לו כמו שחלפו להן שבע השנים הטובות במצריים. הפרות הדקות ורעות המראה בלעו את השמנות ולא נודע כי באו אל קירבן.

זה הרגע בו חייבים לקרוא ( cat /usr/ports/UPDATING | more) את מה שנמנעתי ממנו מלכתחילה, אף כי תוך כדי קריאה התחזקה בי הדיעה שמוטב לא לקרוא דברים כאלה:

Welcome, fearless user!  You are about to embark upon a mystical
  journey to the world of xorg 7.2.


דהיינו: "ברוך בואכה, משתמש עשוי ללא חת! מיד תצא למסע מיסטי לעולם של xorg 7.2"

השלב הראשון דורש החלפת portupgrade ל portapgrade-devel:

 # portupgrade -f -o ports-mgmt/portupgrade-devel portupgrade
  # rm -f /usr/ports/INDEX*.db /var/db/pkg/pkgdb.db
  # pkgdb -fu


וגם סילוק בסיס המידע הישן של החבילות ויצירת אחד חדש, באותה הזדמנות.
הצעד הבא הוא הוספת משתנה סביבה:

 # setenv XORG_UPGRADE yes

אי אפשר להתקדם ללא הפקודה הבאה:

# portupgrade -Rf libXft

מכאן מתפצל לו העידכון לשניים: לאלה שהתקינו gstreamer ולאלה שלא. אני נמנה על בישי-המזל שהתקינו (למה? למה? למה?). ולכן עלי לבצע את הפעולות הבאות הנמשכות כמה שעות טובות:

# portupgrade -a -x 'gstreamer*'
# portupgrade -Rr 'gstreamer*'


עכשיו יש להסיר את כל מדריכי X הישנים:

 # pkg_delete xorg-manpages\*

הפעולה נכשלה ונאלצתי להסיר את המדריכים הללו ידנית. רק אז התברר לי כמה רבים הם...

עכשיו יש למזג את קובצי X הנותרים בכתובת הישנה /usr/X11R6/ עם אלו שבכתובת החדשה /usr/local/ ולהחליף אותם בקישור לוגי, לטובת אותן תוכנות שימשיכו לפנות ל X בכתובתו הישנה.

הנפש הטובה מ-FreeBSD יצרה סקריפט מיוחד שיבצע את הפעולה הזאת עבורנו (אם התמזל לו מזלנו – מודגש שזה בלי אחריות):

 # sh /usr/ports/Tools/scripts/mergebase.sh

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

startx

שנענה במסך שחור, הבהובים אחדים, והודעה לקונית, פסקנית, מסוג אלו המודיעות שנכשלת במבחן:

Fatal server error:
could not open default font 'fixed'


צרה צרורה. זו הודעה אניגמטית ידועה, ש-X מודיע כשאין לו משהו יותר חכם להגיד. גם חיטוט בלוגים לא עוזר כי הלוג מראה שהכל בסדר עד השורה האחרונה בה צצה ההודעה הזו.

אז מה עושים? להתיאש? לוותר על עבודה של כמעט שבוע שהצריכה התקנה מושלמת של FreeBSD 6.2 ששים וארבעה ביט – הכוללת אפילו קימפול של אופן אופיס 64 ביט והתקנת כל האמולטורים הדרושים להרצת בינאריים של 32 ביט?

אני לא מתיאש מהר, וכך חיטטתי וחיטטתי בגוגל. התברר שרבים נתקלו בבעיה זו ולא מעטים מהם הרימו ידיים ונאלצו להתקין התקנה נקיה מחדש, או לעבור הפצה.

אבל לבסוף נמצא מי שהרים את הכפפה ומצא פתרון. הפתרון מזכיר את התובנה שצוינה במדריך של Arch Linux למעבר ל-xorg 7.0 - אבל לא במדריכים אחרים למעבר הזה.

xorg 7.x הוא מודולרי, ומורכב מהמון תת-חבילות. לא כולן , כולל אלו שמציאותן קריטית, נכללות בתלויות של xorg. התקנת השתיים שנשכחו בצד פתרה את הבעיה:

cd /usr/ports/x11-fonts/font-cursor-misc
make install clean
cd /usr/ports/x11-fonts/font-misc-misc
make install clean



זהו. X עלה וfreeBSD חזרה לאיתנה, מה-זה-משודרגת.

זהו? כרטיס הקול (Creative Audigy) שהנעים עד עכשיו זמירות משמיע מאז השדרוג טרטור מעצבן ותו-לא. בינתיים לא מצאתי לכך פתרון, והוא יחכה לו בינתיים במחכים לבוא הסתיו...

מידע נוסף
ITtoolbox, X.org 7.2 in FreeBSD ports tree, Dru Lavigne
FreeBSD (Blog), PC-BSD 1.4 (alpha), Xorg 7.2 & Beryl

לינמגזין, התקנים מתנתקים ב-FreeBSD 6.2
לינמגזין, האדם הקדמון ומסעו לירח (היכרות עם DesktopBSD ששים וארבעה ביט)
לינמגזין, המעוז האחרון (רשמים מהתקנת OpenBSD)

* נערך על ידי אורי

אפשרויות לתצוגת תגובות

בחרו באפשרות התצוגה הרצויה, ולחצו על "שמור הגדרות".

תודה

הקישורים שהוספת מועילים וטוב להכיר אותם.

אני לא ממש מבין ...

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

Shame on you

Shame on you,

After years of using unix you still type
"cat /usr/ports/UPDATING | more"

?

הפוסל במומו פוסל

maheer# tail /usr/ports/UPDATING

  Change the default version of perl to 5.8.

  1) Force perl-5.6.1 to be upgraded with perl-5.8.
        portupgrade -o lang/perl5.8 -f perl-5.6.1_15

  2) Update all p5-* modules.
        portupgrade -f p5-\*

$FreeBSD: ports/UPDATING,v 1.519 2007/06/14 21:56:23 pav Exp $
maheer# ls -al /usr/ports | grep UP
-rw-r--r--     1 root  wheel    197832 Jun 15 00:56 UPDATING

ושתי הערות:
כדי ליישר את הטקסט לשמאל, יש לכלוא אותו בין code בסוגריים רבועים לבין code/ בסוגריים רבועים.
וקרא עוד כאן:
http://linmagazine.co.il/node/view/38254

אולי גם אתה לא חשבת על הכל

ומה אם הוא הניח שהקובץ הוא קצר ולכן הדפיס:

cat file
ומייד אחדי שהוא הבין שהוא 200 עמודים הדבר המהיר ביותר לעשות היה להקיש "למעלה" להוסיף pipe ו- more:
cat file | more
נ.ב: למעשה הדבר הקצר ביותר לעשות היה (בBASH):
more !$

יפה. אפשר להוסיף...

יפה. אפשר להוסיף לרשימת הטיפים כאן:

http://linmagazine.co.il/node/view/42538

להיות אובר-חוכם

הפקודה setenv מלמדת שהסביבה היא csh ולא sh.
מראה עד כמה כותבי העצות באמת הפנימו את הכתוב.
ובכלל, מה גרם לכם לעסוק בהערות השוליות והזניחות הללו?
הבעיה שהרשימה עוסקת בה היא מידת המוכנות של ההפצה למעבר ל xorg 7.2, ולא באיזה דרך לקרוא כמה הוראות כשאין לך X. לקרוא אותם דרך מחשב אחר או להדפיס אותם בעזרת מערכת הפעלה אלטרנטיבית על אותו מחשב טובה בדיוק באותה מידה, ואולי יותר.

[quote]Welcome, fearless user...

ציטוט:
Welcome, fearless user! You are about to embark upon a mystical journey to the world of xorg 7.2.

מפחיד אותך אה?

ו-startx זה הרגע שהכל קם או נופל אצלך?

ביצעתי את ההתקנה מנקי ואת השדרוגים האלה כבר כל כך הרבה פעמים וזה אף פעם לא היה מסובך מדי, הכל מוסבר טוב ויש דברים כמו החלפת portupgrade ב- portupgrade-devel שאין בהם צורך ממשי.
חוץ מזה, ל-BSD יש כל כך הרבה ייתרונות פרט ל-X.
בכל מקרה, אני מבין ש-BSD מתחיל להיכנס לאט לאט, אני כבר בפנים שנה ואני שמח שעוד אנשים מתחילים להצטרף לזה. הכל במערכת זו לא קשה כמו שאנשים מתארים, זה פשוט שונה קצת בתפיסה ובהשמת דברים.
אם יש מעוניינים אני מקים אתר בנושא מערכות BSD, האתר כולל בין השאר גם פורום, מדריכים וטיפים המבוססים על ניסויים ב- FreeBSD 6.x, אני אשמח לראות אתכם מגלים עניין.