من هم به همین فکر بودم که به عنوان تمرینی برای یادگیری بهتر Qt، رابطی برای مدیر دانلودهای خط فرمانی بنویسم. یکی با عنوان qtdownloadmanager وجود داره که خیلی وقته گسترش داده نشده و اینکه کمی هم مشکل داره. تو AUR هست. شاید نقطه شروع مناسبی باشه.
اون دانلود منیجره که خیلی سادست ولی خوب برای یادگیری میشه کد های اونو خوند. من یه دانلود منیجر داشتم می نوشتم تا حد خوبی پیشرفت کرده بودم می تونست فایل رو n تیکه کنه و دانلود کنه و بعد از پایان هر تیکه هم یک connection جدید از بهترین جا می ساخت. برپایه network framework خود Qt هم بود. ولی در چند جا به مشکل برخوردم مثلا در دانلود هایی که redirect می شدن یا دانلود attachment انجمن ها یا دانلود هایی که cookie می خواستن. اینا مشکلاتی بود که می دونستم چجوری برطرف کنم ولی به عنوان یک نفر بار زیادی رو دوشم احساس می کردم
و در آخر به دلیل مشغله هام ولش کردم. (انگیزه اصلیم برای ساختن اون این بود که سرعت اینترنت نابود من بدون دانلود منیجر ۶−۷ هست با دانلود منیجر ۲۹−۳۰ و یک دانلود منیجر کامل و خوب هم پیدا نکردم. بهترینی که پیدا کردم prozilla بود که بعد از تمام شدن یک connection یکی دیگه نمی ساخت و با package manager من (pacman) سازگار نمی شد.) از طرفی دیگه فهمیدم برای پیاده سازی speed limiter کلا نمیشه از Qt network استفاده کرد و باید رابط http رو از اول نوشت و هنوز کامل نمی دونم چجوری speed limiter بنویسم.بخش ftp هم که هنوز شروع نکرده بودم.
در حال حاضر هیچ دانلود منیجری نیست که هم رابط ترمینال و هم رابط گرافیکی داشته باشه که البته چنین دانلود منیجری در گنو/لینوکس لازمه.
البته همین دانلود منیجر ناقص من الان همه دانلود ها و به روز رسانی های من رو به عهده داره.(فقط لینک مستقیم http میتونه بگیره)
در کل به نظرم اگر یک گروه باشه بهتر میشه برنامه بزرگ و همه کاری ای ساخت و مشکلاتشو برطرف کرد.
اصل کار افزونه هست که بروزر رو با دانلود منیجر ادغام کنه. به نظر من تنها علت برتری IDM بر خیلی از دانلود منیجر های عالی و پرقدرت لینوکسی همین موضوعه.
وقتی یک دانلود منیجر کامل و همه کاره و بی نقص داشته باشیم. سازنده های اون چون با ساختارش کاملا آشنا هستن به راحتی می تونن افزونه نوشتن رو یاد بگیرن و بنویسن.
اگر دوستانی هستن که مایل به همکاری هستن بگن یه تاپیک بزنیم در موردش. اینجا به نظرم off-topic هست.
اگر کسانی هستند که می خواهند همکاری کنند ولی فکر می کنند علوم لازم را بلد نیستند نگران نباشند. من خودم هیچی از شبکه و http بلد نبودم همون دانلود منیجر ناقص رو در ۱ ماه یاد گرفتم و نوشتم. (کسانی که اهل یادگیری هستند به راحتی می توانند همه چیز را در زمانی معقول یاد بگیرند)