קטגוריה: arch linux

שלום גנום שלוש

הרבה שנים שאני עובד עם KDE 4. בגדול מאוד, זו אחת הסביבות הכי נהדרות שנבנו לעבודה.

אבל גרסה 4.9, הכניסה המון באגים מעצבנים לסביבה, ואם זה לא מספיק, אז ארץ' לאחרונה גם הכניסו עוד באגים משל עצמם לכל עולם ה systemd, כך עם כל הבעיות בייחד, הסביבה הפסיקה לתפקד (בצורה שנוחה לי).
אז נמאס לי, והחלטתי כי הגיע הזמן לנסות את גנום 3 כמו שצריך.

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

התפיסה הכללית של גנום 3 אומרת כי כל virtual desktop (אם נקרא לזה ככה), הוא עבור חלון או תוכנה אחת, ובכך לאפשר את ההתמקדות שלנו למשימה ספציפית, במקום להיות עם המון חלונות אחד מתחת לשני.

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

אבל דווקא לאנשים שגולשים הרבה, או משתמשים ב IM (שגם כאן ארץ' שברו דברים בייחד עם עוד כמה דברים הקשורים לגנום 3), הגישה הנוכחית לדעתי הרבה יותר נוחה, מאשר הגישה הקלאסית. לפחות עבורי.

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

ארץ' קצת הרסו את חווית השימש של גנום 3 (שברו מקשים, ה IM לא שומר את הסיסמה ותמיד צריך להזין אותה ידנית פר חיבור, ועוד מספר דברים אחרים), אבל למרות זאת, עדיין אני מאוד נהנה מהסביבה.

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

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

ביי פדורה, חזרתי לארץ'

לפני מספר שבועות, עדכון של libc בארץ', גרם למערכת להשבר. בניגוד להרבה אחרים, משום מה אצלי הוא לא צעק אלא פשוט התקין עצמו ונשבר באמצע (מרגיש פגוע).

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

למשל לא הצלחתי לבצע גיבויים לדיסקים חיצוניים (כל מיני בעיות שגרמו לדיסקים לעשות remount לעצמם בזמן הכתיבה). הזיכרון שלי השתגע כל הזמן והתנהג כאילו יש דליפת זיכרון רצינית (הגעתי למצב של 90 אחוז ram תפוס ו50 אחוז swap), הייתי צריך להתפשר מאוד על התצוגה, ובפדורה 17, מי שמתקין מ0, מקבל מערכת שמשנה את הצורה שanti-aliasing נעשת (זו לא תחושה, אלא משהו שמציק להרבה אנשים).

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

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

KDE התנהג לגמרי שונה מארץ'. אינני יודע מה הם שינו בקוד, אבל היו שם כמה דבריים ממש נחמדים, אבל הם תפסו הרבה יותר זיכרון. להתחיל לעבוד עם 20 אחוז זיכרון תפוס (מול 8-10 עם ארץ'), זה המון. זה מסביר מדוע ניצולת הזיכרון במערכת לא הגיונית אולי.

בקיצור, כל הזמן היו לי רק צרות, אשר חלקן באמת שיבש את העבודה, וחלקן נגמרו בשל חוסר הרגל להפצה, קיבעון על ארץ', או אלי משהו אחר, אבל ההפצה לא בשבילי (אם כי עם גרסה 15, דווקא הסתדרתי ממש טוב, ולא היו לי תלונות בכלל, נהפוכו, מאוד אהבתי אותה).

אז הורדתי את iso ההתקנה החדש של ארץ'. ומסתבר ששם הם שינו לרעה את צורת ההתקנה. אם מקודם היה ממשק שעושה דברים בשבילך, כאן אתה עושה הכל ידנית. ללא ממשק מסודר.  אז אתה יוצר לבד את מערכת המחיצות. ואז יוצר מערכת קבצים, ובסוף מעגן אותם לבד, להגדיר (עם תסריט מוכן) הורדת החבילות תתבצע למה שמעוגן תחת mnt, ואז להיכנס ל chroot, ולהמשיך להגדיר דברים. בסוף להגדיר את grub2 (עדיין אני לא מבין אותו). ואחרי שהכל עובד, לאתחל את המחשב, ולהתחיל להתקין את המערכת המועדפת עלייך מבחינה גרפית וכו'. וככה מצאתי את עצמי מ8 בערב ועד 3:30 לפנות בוקר מתקין הכל מ0.

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

ארצ' מול פדורה 17

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

לאחר החזרה, לא היה לי אפילו ls, אבל בזכות bash, עדיין יכולתי לקבל רשימת קבצים על ידי שימוש ב

echo *

כמובן שחשכו עיני, קבצים שלמים נעלמו להם ב /bin/ וב/sbin/. אפילו init שמאוד חשוב לא היה קיים יותר.

אז באמצעות Disk On Key שהיה לי, החלטתי ללכת בדרך חדשה של כובע אדום, והתקנתי את פדורה 17 מבוססת KDE. להמשיך לקרוא

heimdall גרסת ה rpm

בעקבות תקלה שמחקה לי באמצע שדרוג Arch Linux חלק ממערכת הקבצים הכי חשובה (באג בחבילה של libc), מצאתי את עצמי מתקין פדורה 17 בסוף.

אבל יש לי כמובן Samsung Galaxy S II אשר אני מתקין עליו רומים שונים מידי פעם, אבל לשם כך יש צורך לעדכן לפחות פעם אחת קרנל, או אפילו יותר מפעם אחת (אם בא לכם).

בשביל זה המציאו את התוכנה heimdall ללינוקס, אשר מאפשרת לעשות זאת ל Galaxy.

הבעיה היא שבעוד שב Arch היא קיימת ב Aur, היא לא קיימת לנו בפדורה, ולכן אין לי יכולת "לדחוף" קרנל. אז חיפשתי מאגר שיש שם אותה, ומצאתי קבצי spec בנושא, אז החלטתי להתאים אותם לגרסה היציבה האחרונה שעובדת כמו שצריך (למרות שיש גרסה אחת חדשה יותר), עדכנתי את השינויים, יצרתי אצלי בפדורה את החבילות, ושיחררתי לאוויר החופשי את קבצי ה spec וגרסת heimdall שעובדת בצורה יציבה.

תוכלו למצוא את זה כאן בgithub .

פסקל ברברס

התארחתי בפודקאסט "רברס עם פלטפורמה", ודיברתי מעט על שפת פסקל מונחת עצמים, ובעיקר על FPC.

תודה לאורי ורן על האירוח.

אתם מוזמנים להקשיב , ובעיקר להעריך את העובדה שאני יותר כותב ופחות מדבר 🙂

ככה לא עושים פיטצ'ר אבטחה

בשעה טובה ומוצלחת הפצת הלינוקס האהובה עלי – Arch הכניסה לתוכה חתימת חבילות התקנה.

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

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

אז ארצ' נכנסו סוף כל סוף לעולם של הגדולים -> דביאן וredhat. ומציעים גם חתימה של חבילות ! אבל המימוש שלהם לא נכון.

בעוד שב redhat החתימה היא על כל חבילה, ובדביאן (כל הנגזרות), החתימה היא על ה repository – כלומר מאגר חבילות, החתימה בארצ' היא לפי חבילה. אממה, למי שאינו יודע באמת עד הסוף כיצד הם מימשו את הדברים, זה סיוט וכמעט בלתי אפשרי לגרום לכך שאנחנו נאשר חבילות. וזה בנוסף לעבודה הסיזיפית לאשר לפחות 30 מפתחות ציבוריים של מפתחי ארצ'. ולכן הרבה אנשים מכבים את הפיטצ'ר הזה (וגם האנשים של ארצ', ממליצים למי שלא מבין לעשות את זה).

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

וכאן יש פתח להרבה בעיות. אז למי שאין כוח להתחיל לחפור בנושא. בשורה התחתונה, יש מספר מפתחות כלליים (master keys) שצריך לאפשר ואז אין צורך לאפשר את כל מפתחות ההצפנה פר מפתח.

הבעיה ברצ' היא מאוד "פשוטה". במקום לספק מפתח אחד בודד של מפתחים (או מספר מפתחות), אשר מראש מגיעים משרתי מפתחות ייעודים של הפרוייקט, כל מפתח שם את החתימה האישית שלו על החבילות. וזו הסיבה לכל כאב הראש.

אז כאשר האנשים הטובים בהפצה הבינו את הבעיה, הם פתרו אותה על ידי יצירת מספר מפתחות "על" (master keys  ואנחנו מייבאים אותם בצורה הבאה:

$ sudo -s
# for key in FFF979E7 CDFD6BB0 4C7EA887 6AC6A4C2 824B18E8; do
    pacman-key --recv-keys $key
    pacman-key --lsign-key $key
    printf 'trust\n3\nquit\n' | gpg --homedir /etc/pacman.d/gnupg/ \
        --no-permission-warning --command-fd 0 --edit-key $key
done

במידה ואתם לא בוטחים בי, תמיד אפשר לאשר ידנית את המפתחות בצורה הבאה:

sudo pacman-key --lsign-key

כאשר מפתח נראה בסגנון הבא: FFF979E7.

את המפתחות אתם מקבלים על ידי pacman – מנהל החבילות עצמו.

בהצלחה !

My Lenovo Thinkpad T420s

I bought a new laptop after my old one started to have too many hardware issues, such as mouse buttons that stopped working, the screen turned off and on again while working, hard drive that died on me, wifi that started resetting itself every few minutes, and even the battery is dead (4 minutes of power), and last week the charger started to stopped working from time to time.

So I started looking for a new laptop, but I was looking for a machine for hard work, and not just for saying that I have a laptop. It is an important working tool in my business, and I can not afford any downtime, or things that do not work, so I looked on two brands of laptop vendors: Lenovo and DELL. They both create good laptops, but somehow the Lenovo's products seems a bit better (the old IBM line at least).

So after few days of research I decided that Lenovo T series brand is the one for me. I do not really understand why, but in Israel everything is more expensive, and you can understand it even from the last tent protest. This fact exists also with new laptops (I needed it very soon as you can understand, so I had no choice). So I needed to go with 14.1" laptop because the 15.6" was way over my budget, and the 14.1" was a little bit higher from my budget, so I chosen the T420s model. להמשיך לקרוא

Would you like to be FB maintainer ?

Several months ago, I removed myself as Firebird package maintainer at Arch Linux (AUR). The reason was lack of time by my side, and a lot of work is still needed to be made with the packages.

So I removed myself, in order to allow other person to take charge of it, but no one raised the orphan packages (and they are looking for a warm home, with good parent. Really, they are good packages), and AUR does not have very good FB packages because of it.

Would YOU like to be the package maintainer ? To follow the Firebird community, in sickness and in health ? To fix issues, and make the best effort to make it work for everyone ?

עדכוני חבילות בArch Linux

קרו 2 דברים השבוע בכל הקשור לחבילות בArch Linux אליהם אני קשור:

  1. החבילה שלי של libfbclient עבור גרסה 2.5 של firebird הועברה מ AUR ל community
  2. עדכנתי את החבילה של firebird-superclassic

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

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

השינוי הזה של החבילה אינו דורש מאף אחד באמת שדרוג בנושא אם החבילה כבר מותקנת אצלכם.