لینوکس و من

تنظیم خودکار نور مانیتور از طریق وبکم

نویسنده : امین | تاریخ: 1397/04/28

خیلی وقت بود به این فکر میکردم که کاش میشد مثل گوشی ها که بوسیله سنسور، نور صفحه بصورت اتوماتیک تنظیم میشه، در لپتاپ هم همین اتفاق بوسیله وبکم بیفته. چند تا ابزار برای این کار وجود داره، اما برای من clight تونست کارش رو درست انجام بده.
clight هر چند دقیقه (که قابل تنظیم هست) چند تا عکس از وبکم میگیره و بر اساس اون نور مانیتور رو تنظیم میکنه. این طوری وقتی اطراف شما روشن باشه، مثلا روز باشه یا چراغ روشن باشه، نور صفحه رو بیشتر میکنه و وقتی اطرافتون تاریک باشه نور صفحه رو کم میکنه. شدت کم و زیاد کردن نور هم توسط فایل کانفیگ قابل تعیین کردنه. 
برای نصب clight در توزیع های آرچی میتونید از AUR استفاده کنید:
yaourt -S clight-git

بعد از اینکه نصب تموم شد، باید فایل کانفیگ پیشفرض رو به فولدر یوزر خودمون کپی کنیم تا بتونیم تنظیمات اختصاصی خودمون رو داشته باشیم
cp /etc/default/clight.conf ~/.config/clight.conf

در فایل کانفیگ میتونین چیز های مختلفی رو تعیین کنین.

در قسمت TIMEOUTS مشخص میکنین که فاصله بین عکس گرفتن ها در حالت باتری/شارژ هر چند ثانیه باشه.
در قسمت GAMMA یه چیزی شبیه به redshift یا Gnome night light هست که میتونین تنظیماتش رو انجام بدید.
در قسمت DISABLE MODULES میتونین ماژول های clight رو غیر فعال کنید. مثلا من gamma و dimmer رو غیر فعال کردم. چون گنوم خودش این کار رو برام میکنه. کافی علامت # رو از ابتدای خط مورد نظر بر دارید.
در قسمت BACKLIGHT CURVES تعیین میکنید که شدت تغییر نور چقدر باشه. من چون کلا دوست دارم نور مانیتور کم باشه این مقادیر رو برای خودم تعیین کردم:
ac_brightness_regression_points = [ 0.0, 0.05, 0.08, 0.11, 0.13, 0.16, 0.19, 0.21, 0.24, 0.27, 0.30 ];
batt_brightness_regression_points = [ 0.0, 0.05, 0.08, 0.11, 0.13, 0.16, 0.19, 0.21, 0.24, 0.27, 0.30 ];
توجه کنید که علامت # رو باید از ابتدای این دو خط بر دارید. 

حالا برای اجرا شدن clight کافیه در خط فرمان تایپ کنید clight -c و همچنین میتونید یک کیبورد شورتکات هم برای این دستور تعیین کنید تا هر بار که خواستین نور مانیتور بر اساس محیط اطراف تعیین بشه به راحتی با فشردن شورتکات این اتفاق بیفته.

برای اینکه بتونین شدت نور رو در محیط تاریک و روشن برای چشم خودتون تعیین کنین میتونین دستتون رو روی وبکم بگیرین و شورتکات رو بفشارید! و بعد با کم و زیاد کردن عدد های بالا، نور دلخواهتون رو مشخص کنید.

در قسمت های دیگه هم توضیحات نوشته شده. میتونید بخونید و اون چیزی رو که میخواید بدست بیارید.

اسکن اسناد و تبدیل به PDF هایی با کیفیت چاپی، در لینوکس

نویسنده : امین | تاریخ: 1397/04/25

انتخاب عنوان خیلی سخت بود!
کاری که میخوایم بکنیم اینه که از یک مطلب چاپ شده که میتونه کتاب، نمونه سوال، مجله و هر چیزی باشه، عکس بگیریم و این عکس ها رو در یک PDF جمع کنیم. به طوری که کیفیت PDF مثل کتاب های چاپی باشه، و حجم زیادی هم نگیره.

تصویر اصلی که توسط گوشی گرفته شده

 
تصویر ویرایش شده توسط اسکریپت


اول باید دقت کنید که با موبایل یا اسکنر تصاویر رو به دقت تهیه کنید تا نیاز به برش یا crop تصاویر نباشه. اگر دقت نکنید اون وقت مجبورید دونه دونه عکس ها رو کراپ کنید. چون هر کدوم با دیگری متفاوته و نمیشه این کار رو توسط اسکریپت به صورت فله ای انجام داد.

۱- همه عکس ها رو در یک فولدر قرار بدید. چون عکس ها پشت سر هم گرفته شدن، پس نیازی به تغییر نام و مرتب کردن اونها نیست. 
۲- باید imagemagic رو در لینوکس خودتون نصب داشته باشید.
۳- اسکریپت زیر رو یک جا ذخیره کنید و بهش مجوز اجرایی بدید:

#!/bin/bash
#
# Digital Camera + This Software + Printer = A Document Photocopier
#
# Input:  pictures of B&W Text documents taken with a digital camera using
#         flash from about 3 feet away with no dark border around the page.
#
# Output1: b-file.tif (a very small B&W TIF file)
# Output2: g-file.jpg (a alternative grayscale file)
#
# If input is purely black and white,  Output1 should be better
# If input is not purely black and white, Output2 may be better
#
# Corey Satten, corey @ cac.washington.edu, March 2007

do1 () {
   echo starting $1 1>&2
   BASE="${1##*/}"; NAME=${BASE%.[jJ][pP][gG]}; TMP1="t-$BASE"; TMP2="x-$BASE"
   trap 'rm -f "$TMP1" "$TMP2"; exit' 0 1 2 13 15
   CGQ="-colorspace gray -quality"
   CGT="-compress group4 -density 480x480"

   convert $CGQ 99 "$1" -resize 5120x5120 "$TMP2"
   convert $CGQ 99 "$1" -resize 1024x1024 -negate -blur 15,15 -resize 5120x5120 "$TMP1"
   composite $CGQ 99 -compose plus "$TMP2" "$TMP1" "$TMP1"
   convert $CGQ 60 "$TMP1" -normalize -level 50,85% "g-$BASE"
   convert $CGT "$TMP1" -normalize -threshold 85% "b-$NAME.tif"
   rm -f "$TMP1" "$TMP2"
}

# This tries to detect multiprocessors and run 2 conversions in parallel
# Move CPUS=1 after the test to effectively disable the test.
CPUS=1
if [ -f /proc/cpuinfo ] ;then
    CPUS=`grep ^processor /proc/cpuinfo | wc -l`
    if [ "$CPUS" -lt 2 ] ;then CPUS=1; fi
fi

for i in "$@"; do
   case $#/$CPUS in
    0/*) exit;;                                     # done
    1/*) do1 "$1"; shift;;                          # only one file to do
    */1) do1 "$1"; shift;;                          # only one cpu to use
      *) do1 "$1" & do1 "$2"; wait; shift; shift;;  # process 2 files at once
   esac
done

exit 0

۴- حالا باید این اسکریپت رو در فولدری که عکسهاتون قرار داره اجرا کنید. مثلا:
/PATH/TO/scan /PATH/TO/*.jpg

پس از اجرای اسکریپت، دو نوع فایل در کنار فایلهای اصلی تولید میشه. یکی tiff و یکی jpg. که طبق گفته خود اسکریپت اگر تصویرهای ورودی کاملا سیاه و سفید باشند فرمت tiff نتیجه بهتری خواهد داشت و در غیر این صورت فرمت jpg بهتر خواهد بود.

۵- حالا میخوایم از تصاویر تولید شده، یک PDF بسازیم. به راحتی با این دستور میتونیم فایلهای tiff رو تبدیل به یک فایل PDF کنیم:
convert /PATH/TO/*.tif /PATH/TO/custom.pdf

توجه داشته باشید که نتیجه به صورت سیاه و سفید خواهد بود. شما میتونید با تغییر پارامترها در اسکریپت بالا، نتیجه رو به دلخواه خودتون عوض کنید.
اگر شما از قبل یک PDF داشتید که از یک کتابی تهیه شده و صرفا عکسها رو برداشتن PDF کردند، بدون اینکه این کارها رو روشون انجام بدن، میتونین با دستور زیر به سادگی یک فایل PDF رو یه فایلهای jpg تبدیل کنید. یعنی مثلا یک فایل PDF صد صفحه ای، تبدیل خواهد شد به صد تا فایل jpg و اونوقت میتونین عملیات دلخواهتون رو روی این عکسها انجام بدید و مجدد خروجی PDF تولید کنید. 
برای این کار نیاز به نصب pdftoppm خواهید داشت
 pdftoppm /PATH/TO/file.pdf  filename -jpeg
قسمت filename اسم فایلهای jpeg است که قرار است تولید شوند. ضمنا شما میتونید بجای آپشن jpeg از png هم استفاده کنین.

لینک‌های مرتبط

آپدیت جدید مانجارو ۱۷.۱.۱۱

نویسنده : امین | تاریخ: 1397/04/12

روز گذشته مانجارو نسخه 17.1.11 رو بیرون داد. من هم آپدیت کردم و مثل همیشه بدون مشکل 
تغییراتی که در این نسخه نسبت به قبلی بوده، بروز رسانی پکیج ها است. مخصوصا KDE که به 5.13.2 بروز رسانی شده. نسخه Gnome و XFCE همونی بود که قبلا بود. چون نسخه جدیدتری ندارن. LibreOffice بی مصرف هم به نسخه 6.0.5 مثلا ارتقا پیدا کرده. صد ساله هنوز همون شکلیه و هیچ پیشرفتی هم در هماهنگی با داکیومنت های مایکروسافت نمیکنه.
اگر تصمیم دارید سیستم خودتون رو بروز کنید به راحتی میتونید با این دستور در ترمینال آپدیت کنید:
 sudo pacman -Syyu
البته از طریق رابط گرافیکی پکیج ها یعنی pamac هم میتونید آپدیت کنید. ولی من خط فرمان رو ترجیح میدم. 
دم مانجارو و تیمش گرم که الان بیش از ۳ ساله که دارم باهاش زندگی میکنم!

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

نویسنده : امین | تاریخ: 1397/04/6

اگر بخواید فقط از برنامه رسمی تلگرام نسخه دسکتاپ استفاده کنید و سراغ نسخه وب نرید، با یک ترفند ساده میتونیم بیش از یک session از تلگرام دسکتاپ رو در لینوکس اجرا کرد.
کافیه یک working directory جدید بسازیم و تحت اون تلگرام رو اجرا کنیم. مثلا:
mkdir ~/.local/share/TelegramDesktop2
این دایرکتوری میتونه هر جا و هر اسمی که دوست دارین داشته باشه. حالا با دستور زیر، تلگرام رو در این دایرکتوری اجرا میکنیم:
/PATH/TO/TG/Telegram -many -workdir ~/.local/share/TelegramDesktop2

/PATH/TO/TG یعنی جایی که تلگرام رو دانلود کردید و نصب کردید. 

پ.ن: نسخه دسکتاپ در حال حاضر در مخازن مانجارو وجود داره و به راحتی از این طریق هم قابل نصبه. اما ایرادی که به این روش وارده اینه که تلگرام زود به زود آپدیت های جدیدی برای اپ دسکتاپش ارائه میده و شما تا از طریق مخازن اون رو آپدیت نکنین، برنامه به روز نمیشه. و وقتی هم که این کار رو میکنین، مشکل dependency پیش میاد و مجبور میشین چیزای دیگه مثل qt5-base و غیره رو هم به روز کنید. و وقتی هم که اون ها رو بروز میکنین ممکنه برنامه های دیگه اجرا نشن! خلاصه اینکه برای آپدیت یه برنامه مجبورین کل سیستم رو بروزرسانی کنین که منطقی نیست.
اما نسخه تلگرامی که از سایت تلگرام دانلود کنین این مشکل رو نداره و هر بار که نسخه جدیدید ارائه میشه خودش رو آپدیت میکنه و هیچ مشکلی هم پیش نمیاد. بنابراین ترجیح من اینه که از این روش استفاده کنم.

لینک‌های مرتبط

نصب برنامه های ویندوز روی لینوکس، ساده تر از قبل

نویسنده : امین | تاریخ: 1397/03/28

احتمالا wine رو میشناسید! پروژه ای که کمک میکنه تا برنامه های ویندوزی رو روی لینوکس نصب و استفاده کنیم. که البته درد سرهای خودش رو داره. احتمالا Flatpak رو هم میشناسید! پروژه ای که شروع شد تا نرم افزارهای لینوکسی راحت تر نصب بشن و یه جورهایی همه چیزایی که برای اجرا شدن لازم دارن رو با خودشون داشته باشن. این جوری دیگه احتمال مشکلات dependency بسیار کاهش پیدا میکنه و خلاصه اینکه خیلی زندگی راحت تر میشه!



حالا اگر این دو تا رو با هم ترکیب کنیم چی میشه؟! میشه پروژه ای به نام Winepak که تلاش میکنه برنامه های ویندوزی رو به کمک wine و با روش Flatpak به لینوکس بیاره. اینجوری دیگه دردسرهای wine رو نخواهیم داشت.
روش استفاده از winepak در اینجا و همچنین در سایت خودشون شرح داده شده.

نمایش thumbnails برای فایلهای XCF

نویسنده : امین | تاریخ: 1397/03/24

فرمت XCF فرمت پیشفرض ذخیره سازی تصاویری است که در GIMP ساخته میشن. متاسفانه به طور پیشفرض در Nautilus این فایلها تصاویر بندانگشتی یا همون Thumbnail ندارن. اما چاره کار بسیار راحته. کافیه در آرچی ها با نصب یک پکیج از AUR این مورد رو برطرف کنیم (برای اوبونتو به لینک منبع مراجعه کنید)
yaourt -S gnome-xcf-thumbnailer
ممکنه از این طریق نصب نشه و به شما ارور validity بده. اگه این طور شد باید دستی این کار رو انجام بدیم!
اول به سایت AUR برای این پکیج میریم و با کلیک روی Download snapshot فایلش رو دانلود میکنیم. و در یک پوشه ای extract میکنیم. بعد با این دستور بسته نصبی رو میسازیم:
makepkg -g >> PKGBUILD && makepkg
و در پایان عملیات با این دستور کار نصب رو تموم میکنیم:
makepkg --install 
اگر احیانا بسته source دانلود نمیشه، میتونین با مراجعه مستقیم خود سورس رو دانلود کنید و در پوشه ای که فایل PKGBUILD قرار داره بذاریدش.
حالا باید تصاویر بندانگشتی فایلهایی که اصطلاحا fail شدن رو پاک کنیم تا دوباره برای ساختنشون تلاش کنه:
rm -r ~/.cache/thumbnails/fail
از این به بعد فایلهای XCF هم thumbnail خواهند داشت.

لینک‌های مرتبط

رادیو اینترنتی با Lollypop

نویسنده : امین | تاریخ: 1397/03/23

برنامه Lollypop یک موزیک پلیر برای دسکتاپ Gnome است. مهمترین ویژگی ای که این موزیک پلیر داره اینه که باید آرشیو موسیقی بسیار تمیز و مرتبی داشته باشید. چون لالیپاپ آرشیو موسیقی شما رو بر اساس Album, Artis, Gener دسته بندی میکنه و در واقع حکم ویترین فایل های موسیقی شما رو داره. و اگر آرشیو موسیقی شما مرتب نیست بهتره سراغش نرید. یا اینکه از برنامه هایی مثل Puddletag برای مرتب کردنش استفاده کنید. که البته زمان زیادی میبره ولی ارزششو داره.


یکی از امکاناتی که لالیپاپ داره، امکان پخش رادیوهای اینترنتی است. کافیه در سایدبار لالیپاپ رایت کلیک کنید و Radios رو به لیست اضافه کنید و بعد ایستگاه های اینترنتی رادیوها رو با New Radio اضافه کنید و لذت ببرید


ظاهرا مرکزی که لالیپاپ برای جست و جوی ایستگاه های اینترنتی استفاده میکنه یا فیلتره یا ما رو تحریم کردند!‌ و شما مجبورید در اینترنت دنبال آدرس streaming اونها بگردید.

کشیدن Tab در کروم و بوکمارک کردن آن

نویسنده : امین | تاریخ: 1397/03/23

مدت ها بود که از فایرفاکس در لینوکس استفاده میکردم. چند روزی است که دارم از کروم استفاده میکنم و میبینم چقدر خوبه! ولی یک امکانی که در فایرفاکس داریم اینه که وقتی یک Tab رو میگیرید و میکشید (drag & drop) میتونید اون رو روی bookmarks bar بیارید و بوکمارکش کنید. در حالی که اگر در کروم این کار رو بکنید اون Tab جدا میشه و یک New window ایجاد میشه.

اما راه حل خیلی ساده است! بجای کشیدن Tab باید URL اون صفحه رو بکشیم، و به راحتی اون صفحه رو وارد bookmarks bar کنیم. 

لینک‌های مرتبط

لینوکس مانجارو در صدر توزیع های distrowatch

نویسنده : امین | تاریخ: 1397/03/21

سایت distrowatch جامع ترین سایتی است که اخبار دنیای توزیع های لینوکس رو منعکس میکنه. این سایت فهرستی ۱۰۰ تایی از محبوب ترین لینوکس های مورد استفاده بر اساس تعداد کلیک های روزانه ای که روی اونها میشه داره.



مدتها بود که رتبه اول در اختیار linux mint بود و بعد از اون هم ubuntu بالا پایین میشد. امروز سری به این سایت زدم و در کمال تعجب دیدم که بالاخره جایگاه اول از لینوکس مینت گرفته شده، و یک توزیع مبتنی بر Arch یعنی Manjaro جای اون رو گرفته.

همه میدونیم که Arch برای حرفه ای ها مناسبه و یک کاربر تازه کار یا معمولی به راحتی نمیتونه با Arch کار کنه. اما میبینیم که تیم Manjaro چقدر خوب تونست در طی چند سال توزیعی بر اساس Arch بسازه که هر کاربر تازه کار و حرفه ای بتونه به راحتی باهاش کار کنه. و حالا میبینیم که در رتبه اول distrowatch حضور پیدا کرده. 

من تعصبی ندارم روی این موارد. اما شدیدا توصیه میکنم اگر از اهالی Arch و بچه هاش نیستین حتما یه بار Manjro رو امتحان کنین. سبک، سریع، راحت، منطقی، رولینگ ریلیز و همیشه آخرین نسخه از همه چیز.

خریده شدن github توسط مایکروسافت از نگاه طنز

نویسنده : امین | تاریخ: 1397/03/21

حتما خبر دارید سایت github.com که یکی از بزرگترین محفل های به اشتراک گذاشتن کدها برای توسعه دهنده ها است اخیرا توسط مایکروسافت خریداری شده! این اتفاق اینقدر عجیب بود که هر کسی از هر جایی بهش واکنش نشون داد. به چند تا تصویر طنز برخورد کردم که با هم اونها رو ببینیم و کمی بخندیم










و این هم یک نظر سنجی که ۲۰۰۰ نفر در اون شرکت کردند و تا الان نتیجه این بوده.



1 2 3 4 5 6 7 ...