احتمالا اگر وبلاگ یا محتوایی که من تولید میکنم رو دنبال کرده باشید، با مفاهیم و اسامی خاصی من رو به یاد خواهید آورد. چه مثل چند ماه اخیر با پروژههای بینایی ماشین ، چه روبی و ریلز که چندین ساله کم کم با اون شناخته میشم، چه لینوکس و سختافزار و این داستانها. احتمالا هم اگر از دنبالکنندگان این وبلاگ باشید، میدونید که داستان برنامهنویس شدن من (قسمت اول، قسمت دوم) چیه و چطور شد که من شدم اینی که هستم.
اما قطع به یقین، خیلی از دوستان قدیمیتر من رو با «پروژه جبیر» یا «جبیر او اس» یا «سیستمعامل جبیر» میشناسند. پروژهای که من رو با جدیت وارد دنیای توسعه نرمافزار، نرمافزار آزاد و جامعه کاربری گنو/لینوکس ایران کرد. در این پست، قصد دارم تا در مورد پروژه جبیر کمی بنویسم. در واقع، قصد من اینه که داستان این پروژه رو تعریف کنم و بگم که چی شد که اینطوری شد 🙂
چرا این مطلب نوشته شد؟
حقیقتا از سال ۹۴ به بعد که دیگه وبسایت پروژه جبیر آپدیت نشد و حتی از برند جبیر برای پروژهای استفاده نشد، دلم نخواست که راجع بهش چیزی بنویسم. چرا که این پروژه علیرغم تمام خوبیها و آموزههاش برای من، خاطرات بدی هم داشت و خب هرچیزی، لازمه که روزی کنار گذاشته بشه. در حقیقت، جایی که انسان حس میکنه باید رها کنه، باید رها کنه و برای من این زمان سال ۹۴ بود. زمانی که همهجا اعلام کردم پروژه جبیر، چه در قالب «توزیع لینوکس» و چه در قالب «نسخهای از BSD» دیگر عرضه نخواهد شد.
اما چندی پیش، پای یکی از پستهای جبیر (لینک) نظری دریافت کردم (که البته تایید نشده) و در بخش آمار وبگاه (که به کمک افزونه Jet Pack بررسی میکنم) هم متوجه شدم که افرادی هستند که در حال رصد کردن گذشته من هستند. یکی از چیزهایی که عمیقا بهش باور دارم اینه که نباید در گذشته افراد زیاد کند و کاو کرد، چرا که تهش شما یا خودت ضایع میشی یا چیزی که دنبالش میگردی چیزی در حد زیربغل مار خواهد بود. پس با این حساب، تصمیم گرفتم که در یک سلسله مطلب جامع، داستان جبیر او اس رو جمع کنم.
حالا وقت اینه که حدودا ده سال در زمان سفر کنم و برسیم به سال ۸۹-۹۰ که این پروژه رو استارت زدم، بگم چی شد که این پروژه به ذهنم رسید و چطور شد که رفتم سمت لینوکس و … .
جرقههای اولیه
بسیاری از افرادی که من رو میشناسند، از ارادتی که نسبت به استیو جابز دارم، خبر دارند. سال حدود ۸۹ بود و من در مجلاتی که اون زمان به صورت روتین از قیمت فلان گوشی و فلان کامپیوتر و فلان کارت گرافیک مینوشتند از رونمایی از محصولات جدید اپل مثل iPhone 4 یا iPad میخوندم. بعد مدتی، با استیو جابز و زندگی اون آشنا شدم و فهمیدم که این بابا، آدمی بوده که خیلی خیلی از صفر شروع کرده (تقریبا بر خلاف خیلی از ابرپولدارهای سیلیکونولی، ایشون اصلا خونواده متمول و حتی اهل فنی نداشته و خونوادهای که درش رشد کرده بوده یک خونواده خیلی معمولی بوده).
خلاصه آشنایی با استیو جابز، بعدش خریدن یک iPod Touch 3G در من جرقهای روشن کرد. جرقهای مبنی بر این که «من باید دنیا را تغییر بدم». تغییر دنیا، کار سختیه. خیلی از ما جایی از زندگی این قصد رو داشتیم ولی کار خاصی براش نکردیم. خیلیها هم حرکتایی زدیم ولی بعدا سرمون به سنگ خورده. خلاصه که خیلیامون اونقدری دیوانه بودیم که روزی بخوایم دنیا رو تغییر بدیم و به قول استیو جابز، افرادی که اونقدر دیوانن که فکر میکنن میتونن دنیا رو تغییر بدن، دقیقا همونایین که دنیا رو تغییر میدن.
در همون سالها بود که ما مهاجرتی از تهران به بندرعباس داشتیم و خب حقیقتا این مهاجرت و دوری از فضای تهران – بویژه محلهای که درش بزرگ شده بودم و طبیعتا بسیاری از همکلاسیهای دبیرستانم هم قرار بود همون بچههای راهنمایی و دبستان باشند – باعث شده بود کمی ناامید و افسرده باشم. تمام این دلایل دست به دست هم دادند که من تصمیم بگیرم که بخوام استیو جابز دوم باشم (شاید اشتباه همین بود، هوم؟).
خلاصه شبانهروز در حال ایدهپردازی بودم. اما ایدهها همین جا متوقف نشدند. ایدهها خیلی بیش از اون چه که فکر کنید پیش رفتند در ذهنم. اما نیاز داشتم یک محرک خیلی اولیه داشته باشم. نمیدونستم چه محرکی ولی بهرحال یک محرک نیاز بود.
من باید سیستمعامل بسازم
بالاخره پیداش کردم. محرکی که لازم داشتم تا باهاش دنیا رو تغییر بدم، پیدا کرده بودم. شاید باورتون نشه ولی به معنای واقعی در نقطه نقطه بدنم شور و شوق رو حس میکردم و برای انجام این کار، انگیزه بسیار بسیار زیادی داشتم. حالا که این انگیزه بود، سوال اینجاست که چرا نه؟ اما قبل از هرچیزی بهتره ببینیم که این انگیزه چی بود.
نمیدونم شما چقدر با نشریات قدیمی آشنایید ولی نشریه مورد علاقه من، یا بهتر بگم یکی از نشریات مورد علاقه من، مجله دانشمند بود. مجله دانشمند مطالب علمی و فنی جالبی داشت. در اون میشد از ژنتیک و زیستشناسی تا هوش مصنوعی و … رو خوند و یاد گرفت و لذت برد. در بسیاری از شمارههاش، کارهای عملی رو توضیح میداد که شما میتونستید در خانه انجام بدید و … . خلاصه کلام که یکی از بهترین نشریاتی بود که میخوندم.
در تابستان ۸۹ یا ۹۰ بود که درست یادم نیست؛ در یکی از شمارههای دانشمند کتاب «سیستمهای عامل: طراحی و پیادهسازی» اثر «اندرو استوارت تنن باوم» معرفی شده بود. به صورت خلاصه بگم، در این مطلب اومده بود که انگیزه تننباوم از نوشتن این کتاب چی بوده و چه فرایندی (بسته شدن کد منبع یونیکس نسخه ۷) باعث شد که سیستمعامل خودش رو از بیخ بنویسه و بعد از اون، شروع کنه به این که مراحل توسعه رو مستند کنه و در قالب یک کتاب برای دانشجویانش و همچنین علاقمندان عرضهش کنه.
اما این کل ماجرا نبود. آخر این مطلب اشاره شده بود که این کتاب و این سیستمعامل (مینیکس) باعث شدند که دانشجوی فنلاندی بیاعصاب، یعنی لینوس تروالدز؛ برای این که بتونه با مینیکس درست و حسابی کار کنه و گروههای گفتوگو رو بخونه و … یه سری ابزار توسعه بده و در همین حین یک هسته هم از بیخ و بن بنویسه. در ادامه توضیح داده شد که لینوس تروالدز یک باره هاردش رو نابود کرد (و خب شاید این نابودی یکباره هارددیسک که در میان لینوکسیها شایعه، از همین قضیه نشات بگیره 😂) و این نابودی باعث شد که سیستمعامل خودش – که ملغمهای از ابزارهای پروژه گنو و کرنلش بود – رو روی دستگاهش نصب کنه.
در ادامه کمی به تاریخچه لینوکس و دعواهای روتین تروالدز با بقیه اشاره کرده بود. این بخش کاملا من رو شیر کرد. من این بند رو که خوندم (و دقیقا یادمه که داخل یک خودرو هم بودیم که من این مطلب رو خوندم) با صدای بلند گفتم که «من باید سیستم عامل بسازم» طوری که خونواده هم نگاهشون به سمتم برگشت. خلاصه که این شد که من تصمیم گرفتم که اولین پروژه خیلی جدی زندگیم، یک سیستم عامل دسکتاپ باشه.
نخستین مطالعات، نخستین پیادهسازیها
خب من بعد از خوندن اون مطالب یادمه که کتابی به اسم «کلید لینوکس» که آموزشش بر مبنای «اوبونتو ۱۰.۰۴» بود رو خوندم و خیلی چیزا ازش یاد گرفتم. در عین حال، روی یک ماشین مجازی اوبونتو نصب کردم و کمی از آموزشهایی که از لینوکس دیده بودم بهره بردم که ببینم چه خبره و دنیاش دست کیه. بعد از اون خلاصه اینطور شد که یک روز تصمیم گرفتم اوبونتو ۱۱.۰۴ (یا دقیق یادم نیست، ۱۱.۱۰) رو روی لپتاپم نصب کنم و حین نصب کل دیتام هم پرید.
بعد از این نصب، شروع به این کردم که یاد بگیرم که چطور میتونم شخصیسازی کنم و تا حد خوبی هم موفق بودم. اما هنوز کلی علامت سوال در ذهنم بود. به همین خاطر، کاری که کردم این بود که وارد فروم اوبونتو شدم و این سوالات رو پرسیدم. اینگونه بود که ماجرای عریض و طویل جبیر، آغاز شد …
این داستان ادامه دارد …
تا همین الان، این مطلب شدیدا طولانی شده. به همین خاطر این مطلب رو اینجا قطع میکنم و اجازه میدم که شما حدس بزنید باقی ماجرا چی شد. البته دروغ چرا، باقی ماجرا رو خیلی زود (شاید حتی فردا شب) در وبلاگ منتشر میکنم و منتظر بازخوردهای شما میمونم.
امیدوارم که این مطالب، اطلاعات خوبی به شما از روند یک پروژه اوپن سورس که از قضا در جاهای مختلفی به شدت اشتباه زده؛ بده و براتون مفید واقع بشه. از این که وقت گذاشتید و این مطلب رو خوندید، ممنونم.
من خیلی لذت بردم.منتظر ادامه ی داستان هستم سیستم عامل ساز .
👍
وای مجله دانشمند!!!!😍😍🥺 چه رویاهایی برام زنده شد وقتی اسمش اومد!
منم میخوام توزیع خودم رو بسازم
در مطالب قدیمیتر، نحوه ساخت توزیع توضیح داده شده.