ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
meijinלא בפורום כעת ת.הצטרפות: 21/12/2008 · הודעות: 659 ·
 

הודעה פורסם: 18/05/2010 - 09:29
נושא ההודעה:

עוד קצת הערות:
אם מאפשרים לך, אתה יכול להשתמש בשרת של המקור\איגוד האינטרנט הישראלי כדי לשים שם חבילות, פשוט כרגע למשל, האתר שאתה משתמש בו קרס, וחבל. בנוסף, אולי אפשר לאפשר בחירה של מראה - באמצעות קובץ שישב למשל ב /etc/farmer/mirror.conf או משהו דומה.

בנוסף, חסרות פקודות בסיסיות כמו file, או whatis, וחבל...

אסף.
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
עיגולדרלא בפורום כעת ת.הצטרפות: 30/07/2009 · הודעות: 142 · מיקום: באר שבע
 

הודעה פורסם: 18/05/2010 - 09:52
נושא ההודעה:

meijin :
אולי אפשר לאפשר בחירה של מראה - באמצעות קובץ שישב למשל ב /etc/farmer/mirror.conf או משהו דומה.


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

meijin :

בנוסף, חסרות פקודות בסיסיות כמו file, או whatis, וחבל...


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

הרעיון דומה לאידיאולוגיה של Tiny Core, המשתמש "בונה" את מערכת ההפעלה והיא באה מראש רק עם מה שנחוץ כדי שהיא תעלה ותאפשר להתקין חבילות.
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם MSN Messenger מספר ICQ 
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
צפריראורח · ·
 

הודעה פורסם: 18/05/2010 - 11:21
נושא ההודעה:

טריק שכמה הפצות מינימליסטיות משתמשות בו הוא אפשרות להתקין חבילות בינאריות נוספות שנמצאות על המדיה (לדוגמה: DoK). חיסרון אחד הוא שאין אפשרות פשוטה לאתר תלויות.

כמוכן: אם אתה מתקין תוכנה ממקור מרוחק, צריך לחשוב על משהו מהסוג של חתימה על חבילה. שאם לא כן, זה פותח פתח להתקפה של החלפת תוכן החבילה ע"י מישהו בדרך (man in the middle).
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
elcucoלא בפורום כעת ת.הצטרפות: 14/10/2003 · הודעות: 6255 ·
 

הודעה פורסם: 18/05/2010 - 12:25
נושא ההודעה:

כמה רעיונות שאני משתעתשע בהן בזמן האחרון:


  • במקום להשיתמש ב־glibc וחבריו, להשתמש ב־uclibc + bysybox. ראיתי אותם בפעולה ואני חושב שהדברי םהאלו מספיק חזקים להחזיק שרת פשוט. בגלל חותמת זיכרון נמוכה ייתכן ולמערכת שלך יהיו ביצועים גבוהים יותר כי ה־icache שלך יהיה נקי יותר מאשר במערכות gnu.
  • להשתמש ב־clang במקום gcc. פה מדובר בהימור מאוד רציני, כיוון שהדבר הזה בקושי self hosting במשך כמה חודשים אצלי (לקח לזה איזה חודש וקצת מרגע שהכריזו על זה ועד שזה עבד בפועל אצלי). קריאה נוספת (+וויקיפדיה, שבור את הראש ותמצא לבד): http://clang.llvm.org/.
  • להשתמש בספריית libc++‎ החדש מבית llvm כדי לקמפל את clang, ואם יש לך מספיק אומץ, תעלה למעלה עד שתגיע ל־Firefox עם ה־toolchain הזה. זהו מהלך התאבדותי שנידון לכישלון, כיוון שהמערכת הזאת רק הוכרזה לפני שבוע. לא הגיוני להשתמש בזה. לקריאה נוספת: http://libcxx.llvm.org/


אני ממליץ לך בחום להישאר עם מנהל חבילות קיים. אני ממליץ לך על rpm כי הבנייה שלו ושל החבילות די טריויאלית. מצד שני, יש כלום מצויינים לבנייה של מאגרי deb אצל דביאן. הם מסורבלים בצורה שאתה לא תאמין, אבל לטווח המאוד רחוק אין מי שינצח אותם. עוד אפשרות היא pacman של arch שהוא הפתיע אותי לטובה במהירות שלו, כמו הן הבנתי שמנגנון הבנייה שלהם די פשוט גם.
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
עיגולדרלא בפורום כעת ת.הצטרפות: 30/07/2009 · הודעות: 142 · מיקום: באר שבע
 

הודעה פורסם: 18/05/2010 - 12:52
נושא ההודעה:

בדקתי את האפשרות של uclibc. הבעיה איתו זה שהרבה דברים לא מתקמפלים איתו בגלל שיש בו הרבה חורים בהשוואה ל-glibc. נכון שדברים כמו Busybox ו-udev יעבדו, אבל אלה דברים טריוויאליים. דברים כמו Python - אני בספק אם הם יעבדו.

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

לא נותן לאף משתמש חוץ מ-root להריץ אותו -

Image

מבקש אישור מהמשתמש כשהוא רוצה להתקין משהו ונותן בחירה בין מאגרים (נכון לעכשיו יש רק אחד) -

Image

מוריד דברים עם progress bar נחמד וזמן משוער -

Image

מתקין תלויות רקורסיבית -
Image

(transmission רוצה את curl שרוצה עוד כמה דברים)

Image

אני חושב שאין אף מנהל חבילות שעונה על הדרישות שלי. המטרה שלי היא לבנות אחד שכן. Smile
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם MSN Messenger מספר ICQ 
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
meijinלא בפורום כעת ת.הצטרפות: 21/12/2008 · הודעות: 659 ·
 

הודעה פורסם: 18/05/2010 - 12:58
נושא ההודעה:

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

bzip היא חבילה שבורה - אחת התלויות שלה לא נמצאות (נסה להתקין את elinks).

אסף.


נערך לאחרונה על-ידי meijin בתאריך 18/05/2010 - 13:05, סך-הכל נערך פעם אחת
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
elcucoלא בפורום כעת ת.הצטרפות: 14/10/2003 · הודעות: 6255 ·
 

הודעה פורסם: 18/05/2010 - 13:04
נושא ההודעה:

אני דווקא התלהבתי מאוד מ־urpmi בזמנו. למשל כשיש לך שתי חבילות שמספקות את אותו dependency, זה נותן לך דרך שפוויה לבחור ביניהם, (מספר בודד) זאת בניגוד ל־apt שמכריח אותך לכתוב את שם החבילה המלא. לגבי שאר הדברים - תתפלא, אבל כל מה שאתה מתאר נתמך.

מצד שני, אתה מעלה טיעון מנצח "זה כל הכיף".

לגבי פייתון - בעבודה הקודמת קימפלו את php ואת perl עם uclibc על BlackFin שמשתמש ב־toolchain שבנוי מ־uclibc (מה שצפריר קישר אליו מקודם). זאת הייתה פלטפורמה בעייתית, שלא תומכת אפילו ב־fork (כי אין לה mmu). לאחר שינוי s/fork/vfork/g שתי השפות האלו היתקמפלו ועבדו טוב במסגרת הבעיות של החומרה. אני לא צופה בעיות עם פייתון בימינו.
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
צפריראורח · ·
 

הודעה פורסם: 18/05/2010 - 14:18
נושא ההודעה:

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

הבעיה הזו קיימת אם מאגר החבילות שלך כולל "חלופות" - מקרים שבהם תלות מסויימת יכולה להיות מסופקת ע"י שתי חבילות שונות. ברגע שאתה צריך לטפל במקרה הזה, בעיית מציאת החבילה הופכת להיות (במקרה הגרוע) לבעיה מסובכת מאוד. חפש, לדוגמה, package management sudokuם (מסתבר שפותר התלויות של aptitude יודע לפתור סודוקו, אבל לא ממש אופטימלי לפתרון הבעיה).

עוד נקודה: העובדה שאי אפשר להריץ את farmer כמשתמש שאינו root נראת לי דווקא באג. כל מערכת ניהול חבילות שאני מכיר אפשר להריץ כמשתמש רגיל. לדוגמה:
* לשאול שאלות על מצב המערכת
* ליצור חבילות

המניעה של עבודה כ־root נעשית ע"י הרשאות. ליתר דיוק, גם rpm, גם apt וגם dpkg (אני לא מכיר מערכות אחרות מספיק טוב) מתחילים בכך שהם "נועלים מנעול" ע"י כתיבה לקובץ מסויים. מי שאינו root פשוט לא יכול לכתוב לקובץ הזה והפעולה נכשלת

טיפ קטן: כדי לצלם "צילום מסך" כטקסט מהקונסול:
cat /dev/vcs >screenshot
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
עיגולדרלא בפורום כעת ת.הצטרפות: 30/07/2009 · הודעות: 142 · מיקום: באר שבע
 

הודעה פורסם: 18/05/2010 - 16:34
נושא ההודעה:

meijin :
תוכל לפרט קצת יותר מה מכיל קובץ bucket שכזה? טיפה על מנגנון בניית החבילות?


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

קוד:
glibc zlib expat


קובץ שני בשם postinstall מכיל רשימה של פקודות להריץ אחרי ההתקנה. הוא מורץ ע"י
ash.

הנה דוגמה מהחבילה של Bash:

קוד:
echo "Setting Bash as the default shell"
/bin/rm /bin/sh
/bin/ln -s bash /bin/sh


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

קוד:
generic name|version|dependency,dependency (...)|size|md5


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

meijin :

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


כבר תיקנתי את זה.

meijin :

bzip היא חבילה שבורה - אחת התלויות שלה לא נמצאות (נסה להתקין את elinks).


אני אבדוק את זה.
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם MSN Messenger מספר ICQ 
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
צפריראורח · ·
 

הודעה פורסם: 18/05/2010 - 17:22
נושא ההודעה:

הפורמט שבו משתמשים ב־deb לרוב הדברים נקרא "פורמט RFC 2822" (כלומר: של כותרות דואר). באופן כללי:
קוד:

Package: foobar
Var1: Value of Var1
Var2: Value of Var2
Multi-Line: A multii-line
 value: a line that begins with a space means it is added to
 the previous one
Var3: Value of Var3

# '#' begines a comment
# An empty line breaks a section. Here we start the section of the next package:
Package: baz
...


הפורמט הזה מאוד נוח לפרוש.
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
עיגולדרלא בפורום כעת ת.הצטרפות: 30/07/2009 · הודעות: 142 · מיקום: באר שבע
 

הודעה פורסם: 18/05/2010 - 18:31
נושא ההודעה:

צפריר :
הפורמט הזה מאוד נוח לפרוש.


המממ ... נחמד מאוד. משום מה ישר קפצתי לתיאור של חבילות לפי שורות (כמו ב-Puppy Linux) ... אני אנסה לבנות משהו כזה. Wink
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם MSN Messenger מספר ICQ 
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
11111לא בפורום כעת ת.הצטרפות: 15/12/2005 · הודעות: 538 ·
 

הודעה פורסם: 30/05/2010 - 00:14
נושא ההודעה:

ניסיתי להפעיל על גבי VirtualBox והמערכת ברוב מוחלט של הפעמים נתקעת אחרי השורה:
Checking 'hlt' instruction... OK.
לא הצלחתי להבין מתי כן ומתי לא.

_________________
בתודה מראש 11111
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
הצגת הודעות מלפני:     
מעבר אל:  
כל הזמנים הם GMT + 2 שעות
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
PNphpBB2 © 2003-2004 

תוכן הדיון

  1. עיגולדר
  2. CooL_SPoT
  3. אורח [iTK98se]
  4. אורח [צפריר]
  5. עיגולדר
  6. אורח [חיים]
  7. עיגולדר
  8. אורח [רם און]
  9. MBD
  10. עיגולדר
  11. SoOmSoOm
  12. meijin
  13. אורח [צפריר]
  14. עיגולדר
  15. OriIdan
  16. meijin
  17. עיגולדר
  18. meijin
  19. עיגולדר
  20. meijin
  21. עיגולדר
  22. orgads
  23. meijin
  24. עיגולדר
  25. meijin
  26. עיגולדר
  27. meijin
  28. עיגולדר
  29. meijin
  30. עיגולדר
  31. meijin
  32. עיגולדר
  33. אורח [צפריר]
  34. elcuco
  35. עיגולדר
  36. meijin
  37. elcuco
  38. אורח [צפריר]
  39. עיגולדר
  40. אורח [צפריר]
  41. עיגולדר
  42. 11111