حسین شیره جونی
حسین شیره جونی
خواندن ۱۶ دقیقه·۴ سال پیش

بعد از نصب لینوکس ابونتو ۲۰.۰۴

سلام دوستان من یک سالی هست که به صورت جدی در ابونتو فعالیت میکنم منظورم اینه که قبلا کار های اصلیم روی ویندوز بود و هر از گاهی به لینوکس سر میزدم. از سال پیش تصمیم گرفتم به صورت جدی ورود کنم به این قضیه و ابونتو رو یه بار دیگه نصب کردم و گفتم این یه سال باید به صورت جدی توی لینوکس فعالیت کنم اولش برام سنگین بود ولی هرچی بیشتر با لینوکس کار کردم و با محیط ور رفتم و کانفیگ های خودم رو انجام دادم خیلی بیشتر علاقه مند شدم تقریبا الان دیگه به جز کار با فتوشاپ به ویندوزم اصلا سر نمیزنم. خلاصه اینکه بعد از ۱ سال فعالیت جدی، تصمیم گرفتم کلا ویندوز رو بزارم کنار و از لینوکس استفاده کنم(قبلش هم کنار بود در اصل ولی خب روی سیستمم هر دو رو نصب داشتم و کندی سرعت داشتم). هر چند امروز دردسر های عجیبی در نصب ابونتو داشتم و نمی خوام در موردش صحبت کنم ولی در انتها بعد از بالا آمدن لینوکس تصمیم گرفتم لیست کار هایی که انجام میدم رو یه جایی بنویسم که برای دفعه بعدی داشته باشم و بعدش هم تصمیم گرفتم توی ویرگول بزارم شاید علاوه بر من به درد کسی بخوره البته شما هم میتونید پیشنهاد بدید که چه چیز هایی رو بهتره نصب کنم یا تغییر بدم

۱) مشکل لینوکس با cpu skylake و Realtek rtl8723be wireless

مدل لپتاب من ASUS X541U هست که از Realtek rtl8723be wireless استفاده میکنه و حالا به چه علتی نمیدونم ولی لینوکس با وایرلس این لپتاب مشکل داره و باعث میشه خطایی رو تولید کنه که بعد از یکی دوبار بالا اومدن لینوکس فضای خطای گراب پر میشه و باعث میشه سیستم بالا نیاد بعد از گشت و گذار های فراوان فهمیدم می تونم این مشکل به این صورت حل کنم با بروزرسانی فایل گراب درون:

/etc/default/grub

و تغییر خط

GRUB_CMDLINE_LINUX_DEFAULT=&quotquiet splash&quot // to GRUB_CMDLINE_LINUX_DEFAULT=&quotquiet splash pci=noaer&quot

و پس از ذخیره تغییرات دستور زیر را اجرا کنید:

sudo update-grub

۲) اجرای دستورات زیر برای اپدیت و بروزرسانی

sudo apt update; sudo apt upgrade;

۳) افزودن زبان فارس به کیبورد

از اصلی ترین کار هایی که باید انجام بدیم اینه که زبان فارسی رو به کیبورد مون اضافه کنیم. طبق تصاویر می تونید جلو برید اگر ظاهر ابونتو من یکمی فرق میکنه نگران نباشید با من ادامه بدید خودتون دلیلش رو متوجه میشید :

بر روی settings کلیک کنید
بر روی settings کلیک کنید
به قسمت Region & Language بروید و بر روی + کلیک کنید
به قسمت Region & Language بروید و بر روی + کلیک کنید
بر روی سه نقطه(more) کلیک کنید
بر روی سه نقطه(more) کلیک کنید
به احتمال زیاد زبان Persian رو توی این لیستی که نشون میده پیدا نمیکنید و باید بر روی Other کلیک کنید
به احتمال زیاد زبان Persian رو توی این لیستی که نشون میده پیدا نمیکنید و باید بر روی Other کلیک کنید
و حالا دنبال Persian بگردید و بر روی Persian کلیک کنید و دکمه Add رو بزنید
و حالا دنبال Persian بگردید و بر روی Persian کلیک کنید و دکمه Add رو بزنید

و حالا می توانید با دکمه ‍‍‍super + space زبان کیبورد خود رو عوض کنید



۴) نصب کدک و یه سری ابزار های لازم که open-source نیستند

این پکیج شامل یه سری پکیج های تقریبا میشه گفت لازم هست(به خاطر کدک هاش میگم) که به خاطر دلایل copyright به صورت پیش فرض درون توزیع ابونتو نیست برای اطلاعات بیشتر می تونید به این صفحه مراجعه کنید.

sudo apt-get install ubuntu-restricted-extras
sudo apt-get install ubuntu-restricted-extras

۴) نصب پکیج های git و curl و ...

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

نرم افزار Synaptic یک مدیریت برنامه برای لینوکس میباشد که دارای یک محیط گرافیکی کاربر پسند میباشد که کار را برای کابران ساده میکند و با استفاده از آن میتوانند نرم افزار های لینوکس را به راحتی نصب و یا به روز رسانی کنند.

من بعضی موقع ها تو این محیط گرافیکی راحت تر یه پکیج رو پیدا میکنم برای حذف البته کم پیش میاد ولی پیش میاد?

 sudo apt install curl make git build-essential synaptic
sudo apt install curl make git build-essential synaptic

۵) نصب zsh

اصلا بدون zsh نمیشه زندگی کرد?. zsh (زی شل z shell) یه شل سبک تر از bash هست و بهتون توصیه میکنم به همراه oh-my-zsh نصب کنید. oh-my-zsh این قابلیت رو فراهم میکنه که تم و اسکریپت و پلاگین های زیادی را رو zsh بالا بیارید و کار خودتون هنگام توسعه راحت کنید من نحوه نصب و پلاگین هایی رو که خودم نصب کردم را اینجا بهتون میگم.

می تونید برای اطلاعات بیشتر و نحوه نصب و انواع روش های نصبش به این ریپازیتوری مراجعه کنید
اگه git و curl رو تو مرحله ۴ نصب نکردید لازمه اینجا نصب کنید(اصلا این ترتیبا بی حکمت نیست).

sudo apt install zsh && sh -c
sudo apt install zsh && sh -c

ممکنه همون اول که یه عکس از ترمینال من دیدید تعجب کنید که چرا دستوراتم رنگی هست باید بگم به خاطر نصب یکی از پلاگین های oh-my-zsh هست برای دیدن لیست کامل پلاگین های zsh می تونید به این لینک مراجعه کنید با کلیک کردن بر روی هر پلاگین اطلاعات اون پلاگین رو بخونید و اگه نیاز داشتید به oh-my-zsh اضافه کنید.

من اینجا پلاگین هایی که خودم نصب کردم رو میزارم و یه توضیحاتی میدم درموردشون ولی شما می توانید تو اینترنت در مورد oh-my-zsh و zsh به فارسی و انگلیسی جستجو کنید و اطلاعات بیشتری بدست بیارید توی یوتیوب هم زیاد از این دست فیلم ها ریخته شده که اومدن zsh شون را کانفیگ کردند و پیشنهاد میکنم برید ببینید. نصب اکثر پلاگین ها راحت هست و باید فایل زیر را تغییر بدید و در قسمت پلاگین ها اسم پلاگینتون رو بنویسید و بعدش source کنید.

~/.zshrc

الف) پلاگین z:

پلاگین کاربردی هست این پلاگین میاد لیست دایرکتوری هایی که رفتید رو تو حافظه اش نگهداری میکنه و مثلا دفعه بعد که ترمینال بازشد کافیه قسمتی از اسم اون دایرکتوری رو بنویسید و بعد از زدن تب ادرس کاملش رو قرار بده به عنوان نمونه:

اسم یکی از پوشه های من هست که قسمتیش رو من نوشتم
اسم یکی از پوشه های من هست که قسمتیش رو من نوشتم
که بعد از زدن تب آدرس کاملش رو به من نشون داد و بعد از enter به اون دایرکتوری منتقل شدم که میتونه توی سرعت جابه جایی تون در لینوکس کمک کنه
که بعد از زدن تب آدرس کاملش رو به من نشون داد و بعد از enter به اون دایرکتوری منتقل شدم که میتونه توی سرعت جابه جایی تون در لینوکس کمک کنه

ب) پلاگین zsh-autosuggestions:

این پلاگین میاد یه تاریخچه ای از دستوراتی که انجام دادید رو قرار میده و چون معمولا شما یه سری دستورات را زیاد میزنید می تونه بدردتون بخوره مثلا در تصویر زیر میبینید من یه قسمت از دستورم رو زدم و ادامه اش رو پیشنهاد داد که می تونید با زدن علامت جهت نما(به سمت راست <-) کاملش کنید

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

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions // put in your ~/.zshrc plugins=(zsh-autosuggestions)

ج) پلاگین sudo:

بعضی موقع ها شما یه دستوری رو مینویسید و یادتون میاد که باید sudo قبلش قرار بدهید با اضافه کردن این پلاگین بعد از زدن دوبار esc خودش اول دستورتون تو ترمینال قرار میده به همین راحتی?.

د) پلاگین docker:

این پلاگین کمک میکنه موقع استفاده از docker یه autocomplete تمیزتر و بهتری را داشته باشید مانند شکل زیر:

و) پلاگین zsh-syntax-highlighting:

این پلاگین کمک میکنه دستوراتی که در ترمینال میزنید به صورت رنگی نمایش دهد و همچنین یه کمک فوق العاده ای که این قضیه داره اگه دستوری رو نشناسه قرمز نشون میده که سریعتر متوجه اون دستوری میشوید تا اینکه یه پیغام بعد از اجرای دستور تو لینوکس بنویسه که not recognized

دمو این هم می تونید توی تصاویر های قبلی که فرستادم مشاهده کنید. جهت اطلاعات بیشتر و نحوه ی نصب به این لینک مراجعه کنید. در ادامه فایل کانفیگ خودم رو قرار میدم که هم یه reference باشه برای خودم و همچنین شما مشاهده کنید البته یه سری تغییرات نسبت به فایل پیش فرض وجود دارد که در ادامه این مقاله بعضی هاشون رو گفتم مثلا من اومدم alias برای zshconfig و zshsource نوشتم که راحت تر باشم.

export ZSH=&quot/home/shirejoni/.oh-my-zsh&quot ZSH_THEME=&quotrobbyrussell&quot plugins=( git z zsh-autosuggestions sudo docker ) source $ZSH/oh-my-zsh.sh alias zshconfig=&quotvim ~/.zshrc&quot alias zshsource=&quotsource ~/.zshrc&quot export PATH=$PATH:/usr/local/go/bin alias ls='lsd' alias l='ls -l' alias la='ls -a' alias lla='ls -la' alias lt='ls --tree' # fzf Configuration source /usr/share/doc/fzf/examples/key-bindings.zsh source /usr/share/doc/fzf/examples/completion.zsh export FZF_DEFAULT_OPTS='--height 40% --layout=reverse --border' source /home/shirejoni/Programs/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

که مشاهده میکنید من برای نصب پلاگین هایی که بالا معرفی کردم همه رو درون plugin قرار دادم البته auto-suggestions یکمی فرق میکرد که اون بالا دستوراتش رو گفتم میزنید و درون plugins هم قرار میدید برای zsh-syntax-highlighting هم میتونید این دستورات زیر را انجام بدید:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting echo &quotsource ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh&quot >> ${ZDOTDIR:-$HOME}/.zshrc

۶) نصب vim

اگه با ویم آشنایی ندارید به احتمال زیاد یه نگاه ما قبل تاریخ به این ادیتور دارید در حالی که اینجوری نیست و باید بگم همین الان اگه به ریپازیتوری vim یا neovim نگاه بندازید می فهمید که همین چند ساعت پیش یا نهایتا یک روز گذشته بروزرسانی شده و باید بگم ویم فوق العاده قوی هست و اون چیزی که فکر میکنید فرق میکنه و از اونجایی که من رو ابزار هایی که استفاده میکنم خیلی حساس هستم مطمئن باشید با دقت و بررسی کامل دارم این نظر رو میگم در ادامه متوجه میشید من حتی درون IDEA های Jetbrains هم از vimidea استفاده میکنم چرا که ویم در نوشتن فوق العاده سریعتر هست به خاطر شورت کات ها و امکاناتی که معرفی میکنه خلاصه سرتون رو درد نیارم یکمی در مورد ویم جستجو کنید یاد بگیرید تو یوتیوب ویدئو درموردش زیاد هست و من اگه بخوام به جز نصب ویم، کانفیگ های ویم رو اینجا قرار بدم طول مقاله ۲ ۳ برابر میشه ترجیح میدم یه سری لینک بگم که ازشون برای کانفیگ استفاده کنید البته قبلش باید خود ویم رو یاد بگیرید، ویم نهایتا یه هفته طول میکشه ولی ارزشش رو داره.

این دو تا چنل یوتیوب رو هم من پیشنهاد میکنم که هم آموزش vim میدهند و همچنین کانفیگ vim را انجام میدهند:

۱ - کانال ChrisAtMachine

۲- کانال ThePrimeagen

برای نصب ویم می تونید دستور زیر رو توی ترمینال بزنید البته من neovim رو ترجیح میدم که از همون اینترنت یا کانال هایی که بالا معرفی شد می تونید متوجه بشید چرا و چه تفاوت هایی دارند

sudo apt install vim
sudo apt install vim

۶) نصب دیسکورد

دیسکورد یه برنامه کاربردی برای من هست و من تقریبا اکثر تماس هایی که میشه یا نیاز به screen share هست از این برنامه استفاده میکنم هر چند که چنل های خوب برنامه نویسی هم زیاد داره.
می تونید از سایت دیسکورد فایل deb رو دانلود کنید و به این صورت نصب کنید. البته اسم فایل شما به احتمالا فرق میکنه.

sudo dpkg -i discord-0.0.13.deb
sudo dpkg -i discord-0.0.13.deb


۷) نصب نرم افزار های فشرده سازی و extract کردن zip و rar

دیگه لزوم این ابزار ها رو میدونیم و می تونید با استفاده از این دستور آنها رو نصب کنید:

sudo apt install zip unzip rar unrar
sudo apt install zip unzip rar unrar


۸) نصب مدیا پلیر VLC

مدیا پلیر vlc پر استفاده ترین مدیا پلیر لینوکس هست و اونم به نظر من خاطر پشتیبانی کاملی که از انواع فرمت های ویدیویی و صوتی دارد البته یه ویدیو پلیر خوب دیگه هم هست، به اسم Celluloid و برای کار باهاش بیشتر باید شورت کات هاش رو یاد بگیرید. چه خوب میشد گزینه های خوبی مثل PotPlayer یا KMPlayer برای لینوکس بودند. دلیلم هم به خاطر UI/UX بهتری که این ابزار ها دارند.

sudo apt install vlc
sudo apt install vlc

۹) نصب فونت شبنم | Shabnam


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

- فونت وزیر

لینک صفحه فونت | لینک ریپازیتوری

- فونت شبنم

لینک صفحه فونت | لینک ریپازیتوری

- فونت ساحل

لینک صفحه فونت | لینک ریپازیتوری


- فونت صمیم

لینک صفحه فونت | لینک ریپازیتوری

- فونت گندم

لینک صفحه فونت | لینک ریپازیتوری

- فونت پرستو

لینک صفحه فونت | لینک ریپازیتوری

- فونت وزیر کد

لینک صفحه فونت | لینک ریپازیتوری

- فونت تنها

لینک صفحه فونت | لینک ریپازیتوری




برای نصب فونت شبنم می تونید فایل زیپش را از صفحه فونت، دریافت کنید و درون home تون در پوشه .fonts قرار بدید البته فراموش نکنید درون فایل منیجر پیش فرض ابونتو برای نمایش فایل های hidden باید ctrl + h رو زد و فایل ها و دایرکتوری هایی که . اولشون هستند hidden هستند.

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

mkdir shabnam-font
unzip shabnam-font-v5.0.1.zip -d shabnam-font

و حالا فونت های ttf رو درون یه پوشه جدا میریزیم که راحت باشیم برای انتقالشون:

cd shabnam-font mkdir ttf-shabnam mv Shabnam-*.ttf ttf-shabnam mv Shabnam.ttf ttf-shabnam

و حالا در اصل داریم فونت ها رو نصب میکنیم:

mv ttf-shabnam/* ~/.fonts
mv ttf-shabnam/* ~/.fonts

می تونید برای cleanup هم این درستورات رو بزنید البته اگه درون پوشه shabnam-font هستید:

cd ../ sudo rm -r shabnam-font sudo rm shabnam-font-v5.0.1.zip


۱۰) نصب tlp; برای افزایش طول عمر باطری

میگن طول عمر باطری رو افزایش میده ما که ندیدیم ولی نصب کردیم?:

sudo add-apt-repository ppa:linrunner/tlp sudo apt install tlp tlp-rdw sudo tlp start

۱۱) نصب دانلود منیجر XDM

هیچی که از نظر من IDM نمیشه ولی خب اینم عملش خوبه ولی فقط UI خوبی نداره همین. می تونید از این لینک دانلود کنید و نحوه extract و نصبش هم به این گونه هست:

tar -xvf xdm-setup-7.2.11.tar.xz sudo ./install.sh

برای استفاده بهتر از xdm، افزونه مرورگرش رو نصب کنید

افزونه xdm برای فایرفاکس

افزونه xdm برای کروم

۲ دانلود منیجر دیگه هم اینجا اضافه میکنم دانلود منیجر های uGet و Persepolis که توسط آقایان navid shaghozahi و ALi rh معرفی شده اند و پیشنهاد میکنم حتما یه نگاهی به این ها بندازید و گزینه مطلوبتان را نصب کنید.

- دانلود منیجر Persepolis:

پرسپولیس یک دانلود منیجر و رابط کاربری گرافیکی برای Aria2 میباشد که با پایتون نوشته شده است. که opern source هست و قابلیت های خیلی خوبی دارد و برای اطلاعات بیشتر و نصب آن به این لینک مراجعه کنید

- دانلود منیجر uGet:

یک دانلود منیجر open source دیگر هست که از سال ۲۰۰۳ تا الان در حال توسعه هست و با c نوشته شده است. برای نصب و اطلاعات بیشتر میتونید به این لینک مراجعه کنید.


۱۲) نصب Golang

از اون جایی که من به زبان golang علاقه مند هستم و قرار زبان اصلی من برای توسعه بشود اون رو نصب میکنم و خب نحوه نصبش رو نوشتم بهتون پیشنهاد میکنم به نگاهی به این زبان بندازید که واقعا Efficient و Productive هست. برای نصبش هم میتونید از این لینک استفاده کنید.

بعد از دانلود از سایت golang می توانید دستورات زیر رو اجرا کنید.

sudo tar -C /usr/local -xzf go1.15.6.linux-amd64.tar.gz export PATH=$PATH:/usr/local/go/bin go version

البته من خط دوم رو همیشه درون .zshrc قرار میدهم که هنگام سورس شدن بتونم به go دسترسی داشته باشم.

درون zshrc
درون zshrc


۱۳) نصب PHP و Apache و MySQL

خب PHP اولین زبان سمت سروری هست که من کار کردم و هنوز هم ازش استفاده میکنم و زبانی هست که دوستش دارم و میدونم حالا حالا هست و کاربرد داره. من برای نصبش آپاچی رو نصب میکنم و مواقعی هم که nginx نیاز دارم اون رو با داکر میارم بالا اینجوری راحت هستم.

sudo apt install apache2
sudo apt install apache2

و mysql رو نصب میکنم از اونجایی که من قبلا نصب کردم و الان فرصت نصب دوباره رو ندارم که اسکرین بگیرم ترجیح میدم از این لینک به نصبش بپردازید بعد از نصب همونجور که در لینک هم هست دستور زیر رو اجرا کنید و پاسخ های مناسب رو بهش بدید البته من چون رو دسکتاپ هستم سعی کردم کار خودم راحت تر باشه و validation password رو غیر فعال کردم و موارد دیگه هم درون لینک توضیح داده شده است

sudo mysql_secure_installation

من بعد از نصب از طریق sudo وارد mysql شدم و یه پسورد برای کاربر روت قرار دادم ببینید چون نسخه دسکتاپ هستیم این کار رو کردم تا راحت تر باشم در mysql-8 به صورت پیشفرض نمی تونید با پسورد وارد کاربر روت mysql بشد.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

خب بعد از نصب MYSQL میریم سراغ نصب PHP، از اونجایی که PHP8 تازه release شده هنوز ریپازیتوری PHP7.4 رو نشون میده ولی توصیه مکنم PHP8 رو نصب کنید. دستورات زیر ابتدا ریپازیتوری PHP رو به ابونتو اضافه میکنه و بعد نصب میکنه نیاز به sudo apt update نیست چون در ابونتو ۱۹ به بعد خودش صداش میزنه

sudo add-apt-repository ppa:ondrej/php sudo apt install php8.0 php8.0-common php8.0-cli libapache2-mod-php8.0 -y php -v # Show PHP version. php -m # Show PHP modules loaded.
? php8
? php8

یه سری module هم نیاز هست نصب کنید به صورت زیر

sudo apt install php8.0-{bz2,curl,intl,mysql,gd,readline,xml} sudo apt install php8.0-xdebug

من بعد از نصب php معمولا یه پوشه به اسم PHPProjects دارم که اونو رو دامین مجازی projects.test بالا میارم کارم رو راحت تر میکنه که نحوه انجامش هم به این صورت هست. که شما یه فایل درون ادرس زیر ایجاد میکنید و با ادیتور دلخواهتون باز کنید

و به صورت زیر کانفیگ کنید

<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName projects.test ServerAlias www.projects.test DocumentRoot /home/shirejoni/Projects/PHPProjects <Directory /home/shirejoni/Projects/PHPProjects> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

و حالا باید یکی از دستورات زیر رو به دلخواه بزنید بزنید تا یه نسخه لینک شده از فایلتون رو درون site-enabled قرار بدهد

sudo a2ensite your_domain یا ln -s /etc/apache2/sites-available/projects.test.conf /etc/apache2/sites-enabled/projects.test.conf

و بعد اش درون فایل /etc/hosts ادرس دامین مجازی رو قرار بدید

و دستور زیر رو انجام دهید تا تغییرات اعمال شود

sudo systemctl restart apache2.service

در دستورتی که مراحل رو به درستی انجام داده باشید و خطای syntax نداشته باشید باید به راحتی درون مرورگر بازکنید البته من لیستی از پروژه ها اینجا دارم ولی شما میتونید رو یه پروژه خاص دامین مجازی ایجاد کنید.

این تغییر رو هم اعمال کنید درون آپاچی که فایل index.php رو به صورت پیش فرض قرار دهد. اون رو اول قرار بدید تا اولویت بیشتری داشته باشد.

نصب phpmyadmin هم خیلی راحت هست کافی هست از این لینک دانلود کنید و درون پوشه ای که می خواد قرار بدید من درون همون پوشه PHPProjects قرار میدم که از طریق projects.test دسترسی داشته باشم.

و طبق این لینک میتونید کانفیگ کنید البته از اون جایی که نسخه دسکتاپ هست و زیاد امنیتش مهم نیست من ترجیح دادم پسورد روت دیتابیسم رو مستقیم درون فایل بنویسم که راحت تر باشم به این صورت که شما فایل config.sample.inc.php به config.inc.php تغییر میدهید یا کپی میکنید. و به این صورت می نویسید:

۱۴) نصب Jetbrains IDEA

بریم سراغ محبوب ترین IDEA من، یعنی Jetbrains تقریبا من هر چیزی رو میخوام شروع میکنم میریم میبینم براش jetbrains کد ادیتور(اینجا منظورم همون IDEA) نوشته یا نه

نصب و کرک کردنشون یکیه و میتونید از سایت های پی سی دانلود (البته برای لینوکس نداره ولی کرکش رو من قبلا استفاده میکردم یکمی معمولا تاخیر داره تو انتشار ولی کرکش معتبر هست) و سافت 98 (برای لینوکس گذاشته و معمولا کرکاش کار میکنند) و دانلودلی
در ابتدا دانلود کنید و اکسترکت کنید حالا که XDM رو نصب دارید راحت تر هستید و میتونید سریعتر دانلود کنید. میتونید از محیط گرافیکی فایل منیجر برای این کار استفاده کنید ولی خب منم دستوراتش رو اینجا نشون دادم

mkdir jetbrains-goland-idea unzip JetBrains.GoLand.2020.3.0.Linux.zip -d jetbrains-goland-idea
بعد از extract کردن فایل های زیر خواهید دید که میتونید فایل goland-2020.3.tar.gz رو در محلی دلخواه extract کنید من بعدش انتقال دادم به پوشه ~/Programs
بعد از extract کردن فایل های زیر خواهید دید که میتونید فایل goland-2020.3.tar.gz رو در محلی دلخواه extract کنید من بعدش انتقال دادم به پوشه ~/Programs

که اگه بقیه فایل هایی که درون این پوشه هست رو نادیده بگیرید به این صورت هست


و حالا میتونید طبق ویديو و راهنمای این سایت های دانلود کرک کنید معمولا همه شون از کرک zhile استفاده میکنند و روش یکسانی دارند پس اگر توضیحات یکیشون رو متوجه نشدید به اون یکی سایت برید مثلا الان ویدیو تصویری براش درون soft98 هست

حواستون باشه که کرک ها رو جدا دانلود کنید معمولا بروز می شوند البته اگر کرک تون کارنکرد از Terial Reset استفاده کنید که اونم میتونید یه تیک هست بزنید خودکار reset میکنه براتون و به همون راحتی کرک عمل میکنه(هرچند کرک کردن کار خوبی نیست ? ولی خودشون حق پرداخت رو من بستند منم کرک میکنم)

می تونید PHPStorm رو هم به این صورت نصب کنید البته من این دو چون ابزار کارم هستند نصب میکنم شما میتونید به سایت Jetbrains برید ببینید چه محصولاتی رو برای چه زبان داره.

من تقریبا IDEA رو کاستومایز میکنم بر اساس نیاز خودم و سعی کردم شورت کات های این IDEA یادبگیر ولی خب کاستومایز کردن و یادگیری اش با خودتون چون مبحث کاملا جدایی هست ولی خب تو اینترنت آموزش براش زیاد هست پلاگین هایی که نصب کردم رو اینجا میگم

من از تم Gruvbox استفاده میکنم قبلش از Material Theme UI استفاده میکردم الان با gruv بیشتر حال میکنم. که هر دو اینها برای کد ادیتور های معروف افزونه دارند و می تونید استفاده کنید.

خو شبختانه jetbrains تقریبا اکثر پلاگین ها و ابزار های مورد نیاز رو داره ولی خب من این سه پلاگین هم در کنارش نصب میکنم

اولی برای ایکون فولدر ها هست و دومی تم Grubbox Theme هست و در نهایت ideaVim که کمک می کنه ویم رو توی Jetbrains بیارید شما تا ویم رو نصب نکنید و کار نکنید باهاش نمیفهیمد چرا من این کار رو کردم وگرنه دلیلش رو متوجه میشید.

اینم یه نمای کالی از PHPStorm که ظاهرش بعد از customize کردن به این شکل خواهد بود

البته من یه سری کانفیگ هم برای ~/.ideavimrc نوشتم برای پلاگین ideavim هست برای راحتی خودم هست هم اینجا مینویسم که برای خودم مرجع باشه و هم دوستانی که تجربه کار با ویم داشتند ممکنه بخواند تو جت برین ازش استفاده کنند ممکنه بدردشون بخوره.


let mapleader=&quot,&quot vnoremap < <gv vnoremap > >gv inoremap jk <Esc> nnoremap <silent> <C-s> :w<CR> nnoremap <silent> <C-Q> :wq!<CR> nnoremap <leader>v :vsplit<CR> nnoremap <leader>h :split<CR> nnoremap <leader>q :close<CR> nnoremap <C-h> <C-w>h nnoremap <C-j> <C-w>j nnoremap <C-k> <C-w>k nnoremap <C-l> <C-w>l nnoremap <leader>v <C-W>v nnoremap <leader>h <C-W>h vnoremap <Tab> >gv vnoremap <S-Tab> <gv


۱۵) نصب OBS Studio

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

sudo apt install ffmpeg # install obs studio sudo add-apt-repository ppa:obsproject/obs-studio sudo apt install obs-studio

و در نهایت نصب شد:

 obs studio
obs studio


۱۶) نصب Anki

نرم افزار Anki، یه نرم افزار عالی برای تثبیت اطلاعات در حافظه هست. من اگه جایی از کتابی، مقاله چیز جدیدی یاد بگیرم به انکی میفرستم تا حتما یادم بمونه اون مطلب. انکی یه نرم افزار که به صورت فلش کارت کار میکنه و از همون روش های معروف لایتنر استفاده میکنم. در وصفش همین بگم که خیلی از دانشجو های پزشکی برای حفظ مطالبشون از این نرم افزار استفاده میکنند و اینکه به ظاهر نرم افزار کاری نداشته باشید بر خلاف ظاهرش کاملا کاربردی هست و customizable و اینکه باید تو اینترنت سرچ کنید یه آموزشی در موردش ببینید تا راحت تر بتونید کار کنید باهاش برای نصبش از این لینک دانلود کنید.

tar xjf Downloads/anki-2.1.37-linux.tar.bz2 cd anki-2.1.37-linux sudo ./install.sh

و پلاگین های که من در anki استفاده میکنم زیاد نیست این دو تا هستند:

۱۷) نصب foxitreader یا okular

متاسفانه برای linux یه pdf reader با امکانات کامل و خوب نیست بلکه هر چی هست فقط نشون میدند امکانات درست حسابی که adobe یا foxitreader ویندوز ارائه میدهند، اینجا نیست و توی تحقیقات من شما می تونید از این دو نسخه استفاده کنید و خب حداقل بهتر از بقیه هستند.

نصب Okular:

sudo apt install okular
sudo apt install okular

نصب foxitreader:

از سایتش نسخه لینوکس را دانلود میکنید و extract کنید و چون فایل run هست اجراش کنید مراحل نصب رو در پنجره باز شده ادامه بدید.

tar xvf Downloads/FoxitReader.enu.setup.2.4.4.0911.x64.run.tar.gz
tar xvf Downloads/FoxitReader.enu.setup.2.4.4.0911.x64.run.tar.gz

و اجراش کنید.

۱۸) نصب نرم افزار foliate

برخلاف PDF، یه نرم افزار باحال برای فرمت epub هست و امکانات خوبی داره پیشنهاد میکنم بهش یه نگاه بندازید، منی که فقط PDF می خوندم بعد از این نرم افزار و امکاناتش الان ترجیحم فرمت epub هست در صورتی که نبود PDF ?.

sudo add-apt-repository ppa:apandada1/foliate sudo apt install foliate

۱۹) نصب Node و Yarn

من علاوه بر برنامه نویسی بکند، برنامه نویسی فرانت اند هم با React انجام میدم و نیاز دارم Node رو نصب داشته باشم البته شما ممکنه بک اند و فرانت روبا نود انجام بدید که فرقی نمیکنه.

برای نصب نود می تونید بری توی این ریپازیتوری و نصب کنید و راهنمای کاملا واضحی داره:

Node.js LTS:

curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs

Node.js Current:

curl -sL https://deb.nodesource.com/setup_current.x | sudo -E bash - sudo apt-get install -y nodejs

یارن هم مانند npm یه پکیج منیجر هست که نسبت به npm سریعتر و خروجی با پیغام های واضح تر و بهتری دارد.

npm install -g yarn


۲۰) نصب ترمینال Alacritty

ترمینال Alacritty، سریعترین ترمینال موجود هست که تمرکزش بر روی سادگی و بهینه بودن هست ولی در عین حال Feature های خوبی داره و کانفیگ کردنش هم از طریق یه فایل yml هست.

sudo apt install alacritty
sudo apt install alacritty

و من یه کانفیگ ساده ای انجام دادم و یکمی تمش رو تغییر دادید و تم gruvbox را قرار دادم. که فایل کامنفیگ رو میتونید به صورت پیش فرض در این مسیر قرار بدید:

~/.config/alacritty/alacritty.yml

کانفیگ نمونه که Alacritty قرار داده در این لینک هست و میتونید تغییر بدید. تغییرات من توی این لینک هست و بخاطر اینکه yml به space حساس هست و ویرگول درست نشون نمیداد توی یه gist قرار دادم. و خب ظاهر ترمینال رو که بالا دیدید نیاز به نمایش دوباره نیست.

فقط من فونت Fira code رو نصب کردم به همراه icon های nerd font که میتونید از این لینک دریافت کنید. که مثل شبنم دانلود کنیدو درون پوشه .fonts قرار بدید چون تکراری هست انجام نمیدم اینجا.

۲۱) نصب VMWare

همونجور که اون بالا گفتم من از ویندوز فقط فتوشاپش رو استفاده میکنم به خاطر همین تصمیم گرفتم از مجازی ساز استفاده کنم و با VMWare بالا بیاریم هر چند قبلش virtualbox رو امتحان کردم فایده نداشت vmware یه چیز دیگه است.

برای نصب میتونید از این لینک دانلود کنید و extract کنید و درون terminal اجرش کنید و مثل مراحل نصب معمولی نرم افزار ها ادامه بدید.

تصویری از VMWare
تصویری از VMWare



۲۲) تنظیم فونت ایتا

از جمله کار هایی که کردم این بود که فونت ایتا در لینوکس رو تغییر بدم برای تغییر این فونت باید به این آدرس بروید و اسم فونت تون رو بنویسید من شبنم رو نوشتم. به این آدرس بروید

.local/share/EitaaDesktop/edata/fc-custom-1.conf

و این فایل رو به این صورت قرار بدهید:

<?xml version='1.0'?> <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> <fontconfig> <match target=&quotpattern&quot> <test qual=&quotany&quot name=&quotfamily&quot> <string>Shabnam</string> </test> <edit name=&quotfamily&quot mode=&quotassign&quot binding=&quotsame&quot> <string>Shabnam</string> </edit> </match> <dir>~/.fonts</dir> </fontconfig>

و اینم تصویری از ایتا با فونت شبنم فقط جهت حفظ حریم شخصی دوستانم مجبور بودم پروفایل و اسمشون رو خط بکشم


۲۳) تنظیم Theme:

در مورد تم چون کمی طولانی میشد تصمیم گرفتم همون ویدیویی که دیدم رو بهتون معرفی کنم تا اگه شما هم خوشتون اومد انجام بدید این محیط ابونتو من هست:

برای ایجاد همچین محیط هایی میتونید از این لینک هاکمک بگیرید:

How To Make Ubuntu Look Like macOS Big Sur

How to Make GNOME Desktop Look Like MacOS Big Sur

البته من اون قدر هم کشته مرده مک نیستم? فقط چون این تم از نظر نسبت به بقیه تم ها قشنگ تر بود نصب کردم سلیقه ها فرق میکنه.

۲۴) نصب VSCode:

من قبلا برای ادیت یه فایل تکی از sublime استفاده میکردم ولی خب دیدم vscode هم بد نیست تصمیم گرفتم از vscode استفاده کنم ولی هنوز برای پروژه از Jetbrains استفاده میکنم و خب تجربه زیادی با vscode ندارم ترجیح میدم فقط نصبش رو بگم و دوستانی که تو این زمینه تخصص دارند کانفیگش رو بگند.

می تونید از این لینک vscode را دانلود کنید و دستور زیر رو ترمینال بزنید تا نصب بشه

sudo dpkg -i code_1.52.0-1607640828_amd64.deb
sudo dpkg -i code_1.52.0-1607640828_amd64.deb

و اینم محیط VS Code من ولی میگم کانفیگ خاصی انجام ندادم و ترجیح میدم چیزی در این باره نگم تا کسی که بهتر با این ادیتور کار کرده توضیح بده اینجا یا تحت مقاله ای جداکه انشالله باب بشه و بقیه دوستان هم تجربیاتشون رو به اشتراک بگذارند.

۲۵) نصب HTOP:

برنامه خیلی خوبیه که تحت ترمینال بالا میاد که اطلاعات کلی در مورد پرسس ها و سیستم مانیتورینگ میده. یه جورایی نسخه ارتقا یافته top هست.

اینم محیط htop:

۲۶) افزونه های مرورگر فایرفاکس من:

  • افزونه ی SaveFrom.net helper all-in-1: برای دانلود از یوتیوب هست البته از youtube-dl هم استفاده میکنم
  • افزونه BuiltWith: افزونه جامعی که اطلاعات کاملی از تکنولوژی صفحات میده
  • افزونه React Developer Tools: اگر توسعه دهنده React باشید این افزونه حتما بدردتون میخوره
  • افزونه Speedup: این افزونه باعث افزایش سرعت ویدیو های صفحات وب می شود مثلا در یوتیوب محدودیت تا ۲ برابر هست ولی بعضی موقع ها بیشتر از این نیاز هست
  • افزونه Abadis Persian: دیکشنری Abadis که از اون دیکشنری هاست که من قبولش دارم مخصوصا تو کلمات تخصصی بهتر از خیلی از دیکشنری ها عمل میکنه. این افزونه کمک میکنه یه جستجو معمولی داشته باشید برای اطلاعات بیشتر هم به سایت خودش میفرسته
  • افزونه Simple Tab Groups: از اون افزونه های کاربردی هست من معمولا خیلی تب باز دارم و این کمک میکنه دسته بندی برای تب ها داشته باشم.
  • افزونه NoScript Security Suite: معمولا اسکریپتی نباید اجرا بشه مگر اینکه خودم بخوام این رو معمولا دوست ندارید ولی من استفاده میکنم

۲۷) Clean up

الان خوبه یه clearn up هم انجام بدید?

sudo apt autoremove
sudo apt autoremove


یه نکته ای هم که هست من برای اسکرین شات ها از اسکرین شات های خود ابونتو و همچنین از shutter استفاده میکنم:

Ubuntu screenshots:

shift + printscreen // بعد از اسکرین گرفتند درون فایل ذخیره میکنه
ctrl + shift + print screen // بعد از اسکرین گرفتند درون کلیپ بورد ذخیره میکنه

shutter:

محیط shutter
محیط shutter
sudo add-apt-repository -y ppa:linuxuprising/shutter sudo apt install shutter


به پایان رسید این مقاله و هنوز ما اول راهیم?
امیدوارم براتون مفید باشه من خودم تو دوران اولیه لینوکس خیلی به اینجور مقالات نیاز داشتم ولی خیلی پراکنده بود و اینجوری کامل و تحت یه مفهوم هیچ جا ندیدم خودم رو میگم و خب قرار بود یه جا یادداشت کنم reference باشه برام ولی تصمیم گرفتم به صورت مقاله در بیارم که اگه کسی هم خواست استفاده کنه بتونه. حتما نظراتتون رو اعلام کنید و دوستانی که تجربه دارند تو این زمینه در حدا امکان یه مقاله ای تو این زمینه بنویسند یا حداقل در نظرات بگند یا حداقل بگند من این مقاله رو کامل کنم ولی در کل تجربیاتتون رو به اشتراک بزارید ترجیحا یه مقاله کامل بنویسید خیلی خوب میشه لینکتون رو هم اینجا بزارید.
خسته نباشید.

ubuntuنصب zshنصب jetbrains ideaلینوکس من
Software Engineer | مثل اینکه کد میزنم!
شاید از این پست‌ها خوشتان بیاید