Bit Orbit 🪐 – Telegram
Bit Orbit 🪐
372 subscribers
99 photos
10 videos
45 files
296 links
Talking about world of bit and bytes.
Download Telegram
شده نیاز داشته باشید تا برای یک رخدادی یک تایمر توی کانال یا گروه تلگرامتون بذارید؟

برای من نیاز شد، برای همین یک ربات تلگرام نوشتم که از شما زمان و آی‌دی کانال رو می‌گیره و یک تایمر به اون آی‌دی ارسال می‌کنه که هر سی ثانیه از عدد تایمر کم می‌شه.

سینتکس به این شکل هست:
hour:minute:second:message:@ChannelID

مثلا برای گذاشتن یک تایمر برای یک ساعت و سی دقیقه و 30 ثانیه:
1:30:30:to start the meeting:@ChannelID

همچنین میشه فقط زمان رو بر اساس ثانیه وارد کرد، مثلا:
0:0:3600:to lunch the project:@GroupID


ربات توی این آدرس در دسترس هست:
t.me/countdownvbot


فقط همینطور که می‌دونید باید ربات رو توی کانال یا گروه اضافه کنید.
و البته ربات رو منبع باز گذاشتم گیتهاب
2
‏این طرح صیانت از ۹۷ تا امروز نسخه‌ها و اسامی مختلفی داشته. در این مخزن گیت‌هاب شروع به جمع‌آوری همه نسخه‌ها کردم تا در نهایت روی فایلی diff تغییرات رو ببینیم.

از نسخه ۱ تحت عنوان «طرح ساماندهی پیام‌رسان‌های اجتماعی» شروع کردم. لطفاً مشارکت و حمایت کنید.
https://github.com/Hameds/GO_SIYANAT_YOURSELF

@DevTwitter | <Hamed/>
2
‏google chrome رم زیادی مصرف می‌کنه، هر بار که من روی سیستمم اجراش می‌کنم و چند تب باز می‌کنم، بیشترین رمم مصرفی رو کروم داره.
نه فقط اینکه تب ها رم رو پر می‌کنند بلکه اکستنشن ها هم رم زیادی مصرف می‌کنند، مثلا اکستشن های اد بلاکر و یا هر اکستنشنی که روی هر تب فعالیتی انجام می‌ده.
خب، زمانی که ما چندین تب باز می‌کنیم، در لحظه فقط یک تب رو مطالعه می‌کنیم یا اکر ویدیویی می‌بینیم، فقط ویدیو داخل یکی از تب ها رو می‌بینیم. و دیگر تب ها رو استفاده نمی‌کنیم.
یکی از راهایی که میشه رم رو از تب هایی که بی‌استفاده هستند خالی کرد، استفاده از اکستنشن the great suspender هست.
این افزونه هر تب را که برای مدتی باز نکنید، suspend(تعلیق) می‌کند. و از این رو افزونه ها روی تب های تعلیق شده عملی ندارند.

https://chrome.google.com/webstore/detail/the-great-suspender-origi/ahmkjjgdligadogjedmnogbpbcpofeeo?hl=en
با پایتون یک کوتاه کننده لینک درست کردم که نیازی به دیتابیس نداره، علاوه به اون نیاز به پردازش زیادی نداره چون یک سایت static می‌سازه!

کافیه این برنامه رو روی گیتهاب فورک کنید، و هر بار که نیازه یک لینک کوتاه بسازید، برنامه رو اجرا کنید.

وقتی که برنامه رو اجرا کنید، چند سوال از شما پرسیده می‌شود،

1. لینکی که قراره کوتاه بشه.

2. لینک کوتاه شده پیشنهادی، یا انتخاب لینک به صورت رندم.

3. نوع ریدایرکت،

4. یک عنوان برای صفحه.

5. توضیحاتی که کاربر در حین ریدایرکت شدن می‌بیند


من هیچ وقت دیزاینر خوبی نبودم، اگر تم رو نپسندیدین می‌تونید تم خودتون رو بسازین،


برنامه رو منبع باز توی گیتهاب گذاشتم، امیدوارم مفید باشه.

https://shabane.github.io/carbon/on_open
5
‏ترمینال کالی لینوکس جالبه، حالت و قابلیت های خاصی داره.
برای من سوال بود که کالی از چه تمی برای zsh استفاده کرده، فهمیدم که هیچی!! بجای تم، خود فایل .bashrc رو کاستمایز کرده.
خیلی ساده می‌تونیم این فایل رو جای bashrc هر سیستمی بذاریم.
لینک فایل:
https://gitlab.com/kalilinux/packages/kali-defaults/-/blob/kali/master/etc/skel/.zshrc


#لینوکس
7
‏ترکیب پایتون و بش توی ترمینال لینوکس xonsh

sudo apt-get install xonsh
6
توی گیت هاب یک ریپازیتوری درست کردم و تمامی والپیپر هایی که بنظرم قشنگ بودن رو داخلش قرار دادم.


و همینطور که شاید می‌دونید قرار بود هر کسی که والپیپر های قشنگی داشت و می‌خواست که اشتراک بذاره، بیاد و داخل این ریپو قرار بده.

ادرس ریپو
https://github.com/shabane/Starry-Night
5
‏زمان زیادیه که میخام چیزی شبیه jira و trello بنویسم، یه پلتفرم تحت وب برای مدیریت تسک ها.

قابلیت هایی که واقعا نیاز خودم بودن، و توی شرکت هم کمبودش حس می‌شه.
میخام با python و api بنویسمش،
کسی هست که باهم بریم جلو؟

اگر هستید خوشحال می‌شم باهم پیش بریم
@m_shabane
ممنونم

ماه ها پیش با دوستانم تصمیم گرفیتم کتابی اپن سورس برای لینوکس و ابزار هایش بنویسیم اما چرا؟

در این چند سال که با لینوکس کار کردم و با ابزار های مختلف آن آشنا شدم. هر ابزار دفترچه راهنایی به اسم ‌man page دارد که هدف و مفهوم یک ابزار را توضیح می‌دهد، علاوه به این، یک ‌man page تمامی سوییچ ها و آرگومان ها را به صورت کامل با مثال توضیح می‌دهد. و چه چیز بهتر از اینکه برای یادگیری یک ابزار دفترچه راهنمای خود آن را بخوانیم؟

خب از نظر من خواندن دفترچه راهنما کار درستی است، ولی آیا تمامی سوییچ های یک ابزار را می‌توانیم به خاطر بسپاریم؟

و آیا تمامی آن سوییچ ها نیاز دائمی و روزمره ما هستند؟

اگر موافق هستید، شروع به خواندن map page ابزاری مانند nmap کنید. به دلیل جامع بودن‌ آن، خواندنش زمان زیاد از شما خواهد گرفت و البته زمانی هم برای درک کردن متن ها باید بگذرانید.

با وجود تعداد زیاد ابزار ها و جامع بودن map page ها شما برای یادگیری ابزار ها باید زمان زیاد را صرف کنید، و قول می‌دهم برخی از امکانات یک ابزار برای شما کاربردی نخواهد بود. و حتی ممکن است بعد از گذشت زمانی برخی از سوییچ ها را به دلیل استفاده کمتر به فراموشی بسپارید.

هر ابزار به دلیل ساخته شده است، شناخت کافی و پی‌بردن به هدف ابزار ها به شما کمک می‌کند تا در هر موقعیتی ابزار درست و مناسب را انتخاب کنید.

هر برنامه در یک زمینه خاص کار های مختلفی می‌کند، برای یاد گیری آن ها نیاز نیست تمامی سوییچ ها را حفظ کنید، فقط باید علت وجودش را درک و قابلیت هایش را بشناسید. بفرض شما می‌دانید که برنامه shutdown سیستم عامل را خاموش می‌کند، قابلیت های این برنامه چه چیز هایی می‌تواند باشد؟ قاعدتا باید بتواند سیستم را reboot هم بکند و آیا این برنامه باید بتواند فایلی از اینترنت دانلود کند؟ قطعا جواب شما هم خیر است.

هدف این کتاب این است که راهنمای هر ابزار را با تجربه‌ای که از آن داریم بنویسیم. تقریبا در تمامی زمینه های کامپیوتر ابزاری وجود دارد، قصد داریم که همه آن ها را با کمک هم پوشش دهیم.


این کتاب در این لینک همیشه در دسترسته.

و این لینک مشارکت در کتاب هست.
4
‏توی لینوکس تا حالا برای GRUB تم نصب کردین؟ این تم watch dogs واقعا جالبه.

لینک گیتهاب:
https://github.com/vandalsoul/dedsec-grub2-theme



#tech_seeker
3
This media is not supported in your browser
VIEW IN TELEGRAM
ما زمانی که برنامه‌ای در ترمینال اجرا می‌کنیم برای کپی کردن ریزالت اون برنامه، با موس تکست رو سلکت می‌کنیم و بعد کپی می‌کنیم. اما می‌دونیم که توی لینوکس ما pipe رو داریم.
پایپ کردن به این معنی است که شما یک برنامه رو اجرا می‌کنید و ریزالت اون برنامه رو بعنوان ورودی به یک برنامه دیگر می‌دهید.
و خب کاش می‌شد با پایپ کردن، متنی کپی بشه!

برنامه‌ای ساده نوشتم که این کار رو برای ما به سادگی انجام بده.

مثلا ما می‌خواهیم لیست فایل ها و دایرکتوری های داخل پوشه /var/ رو کپی کنیم.
می‌دونیم که دستور ls میاد و لیست فایل ها رو می‌گیره، کافیه این رو پایپ کنیم به clp تا این لیست به کلیپ برد کپی بشه.

ls /var | clp


برای نصب این چند دستور رو می‌تونید اجرا کنید:

cd /tmp/ && wget 'https://raw.githubusercontent.com/shabane/clp/master/clp.py'
cp clp.py ~/.local/bin/clp
chmod +x ~/.local/bin/clp
clp -h


و خب می‌تونید برای دیدن مثال ها ریپوی گیتهاب برنامه رو ببینید:
https://github.com/shabane/clp
5
Bit Orbit 🪐
ماه ها پیش با دوستانم تصمیم گرفیتم کتابی اپن سورس برای لینوکس و ابزار هایش بنویسیم اما چرا؟ در این چند سال که با لینوکس کار کردم و با ابزار های مختلف آن آشنا شدم. هر ابزار دفترچه راهنایی به اسم ‌man page دارد که هدف و مفهوم یک ابزار را توضیح می‌دهد، علاوه…
سلام دوستان وقت بخیر.

از روزی که کتاب رو معرفی کردم. p.r های زیادی میان و من فرصت ادیت و اصلاحشون رو ندارم.
خواستم ازتون بخواهم که اگر برای شما مقدور هست، ریپو رو on watch کنید و p.r ها رو نگاه کنید و اشکالاتشون رو توی issue ها به نویسنده یک فصل منشن کنید.

این یک کار آزادانه‌ست که با قدرت جامعه رشد پیدا می‌‌کنه. به کمکتون برای رشد این جامعه نیاز داریم. ممنونم.
دستورات لینوکسی که دیگر منسوخ شده اند و نباید از آن استفاده کنید:

https://itsfoss.com/deprecated-linux-commands/
2
توی لینوکس معمولا برای مخفی کردن یک فایل یا دایرکتوری، به اول اسم فایل یک . (دات) اضافه می‌کنیم.

اما یک راه دیگه هم اینه که فایلی به اسم .hidden بسازیم و نام فایل هایی می‌خواهیم مخفی کنیم را در آن بنویسم.

چرا؟ خیلی وقت ها برنامه های ما خودکار یکسری فایل می‌سازند، اگر فایل های برنامه ها را پاک کنیم یا داده هایشان را از بین می‌بریم یا باعث می‌شویم برنامه کلا کرش کند. برای همین سعی می‌کنیم فایل را مخفی کنیم تا آزار دهنده نباشد، اما مسئله اینجاست که تغییر نام فایل هم باعث می‌شود برنامه‌ای که فایل را ساخته است دیگر دسترسی به فایل نداشته باشد! برای همین از این روش برای مخفی کردن استفاده می‌کنیم.

نکته: فایل .hidden باید با فایل هایی که باید مخفی شوند در یک مسیر باشد،

یه نکته دیگه: فایل .hidden فقط برای فایل منیجر های گرافیکال کار می‌کنه و توی ترمینال کار نمی‌کنه.
7
یه نکته جالب درباره git که توی کتاب python tricks the book خوندم اینه که زمانی که شما یک ایتریشن تعریف می‌کنید حتما برای آخرین آیتم آن هم یک (,)کاما قرار بدین، دلیل اینکار اینه که اگر شما بعد از کامیت، کد را مجدد اپدیت کنید و یک آیتم دیگه اضافه کنید، توی diff دو خط تغییر نکرده.
This media is not supported in your browser
VIEW IN TELEGRAM
یکی از عجیب ترین اکستنشن های #gnome هست که تا الان دیدم!
با این اکستنشن می‌شه یک پترن درست کرد و برای اون پترن یک اکشن تعریف کرد.
مثلا مثل باز کردن یک url یا برنامه، یا حتی اجرای یک کامند، شورتکات و ...


https://extensions.gnome.org/extension/3433/fly-pie/
5🤩1💩1
آیا خواندن بلاگ را به گوش دادن به پادکست ترجیح می‌دین؟
(با توجه به اینکه بلاگ رو میشه برای بعدا سیو کرد، ولی از پادکست باید نوت برداری کرد و شیر کردن یه بخشی از آن سخت تره)
Final Results
48%
بله (:
39%
خیر (=
12%
دیدن نتيجه o_O
👍1🤩1