একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

সম্প্রতি আমি বুঝতে পেরেছি যে আমার ল্যাপটপ যথেষ্ট শক্তিশালী নয়। সবকিছু একসাথে নেওয়ার জন্য এটির পর্যাপ্ত শক্তি নেই: Vim (+ 20 প্লাগইন), VSCode (+ একই সংখ্যক এক্সটেনশন), Google Chrome (+ 20 ট্যাব) এবং আরও অনেক কিছু। 4 গিগাবাইট র‍্যাম সহ ল্যাপটপে এটি একটি সাধারণ সমস্যা বলে মনে হবে, তবে আমি হাল ছাড়িনি। আমি ল্যাপটপ পছন্দ করি কারণ সেগুলি কমপ্যাক্ট এবং এছাড়াও যে কোনও জায়গায় ব্যাটারি পাওয়ারে চলতে পারে৷ অতিরিক্ত র‍্যাম কীভাবে খালি করা যায় এবং শক্তির দক্ষতা বাড়াতে হয় তা আমার শুধু খুঁজে বের করতে হবে।

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

আপনার যদি এখনই কনফিগারেশনের প্রয়োজন হয়, তাহলে "ইনস্টলেশন পার্সিং" বিভাগে স্ক্রোল করুন।

অপারেটিং সিস্টেম

যেহেতু আমার এমন একটি OS দরকার যা ন্যূনতম পরিমাণ RAM এবং ব্যাটারি খরচ করবে, তাই আমি বেছে নিয়েছি আর্কিটেকচার লিনাক্স. ক্লাসিক, নতুন কিছু না। তার সংগ্রহস্থল আমাকে অনেক অপ্রয়োজনীয় কাজ স্বয়ংক্রিয় করতে অনুমতি দেবে, এবং অর আরও বেশি সময় বাঁচাবে।

উইন্ডো ম্যানেজার

আমি একটি পূর্ণাঙ্গ পরিবেশের পরিবর্তে একটি উইন্ডো ম্যানেজার ব্যবহার করার সিদ্ধান্ত নিয়েছি। যদিও আমি sneakers (KDE) পছন্দ করি, তবুও তারা প্রচুর পরিমাণে খায়, কারণ তারা প্রচুর লাইব্রেরি এবং নির্ভরতা বাড়ায়। ঠিক আছে, সমস্ত ধরণের অপ্রয়োজনীয় উইজেটের কারণে DE নিজেই প্রচুর পরিমাণে গ্রাস করে।

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

এর ইনস্টলেশন disassemble করা যাক

প্রথমে আমাদের সমস্ত প্রধান প্যাকেজ ইনস্টল করতে হবে (আমাদের কিছু কনফিগার করতে হবে)

sudo pacman -Sy --noconfirm i3 i3-gaps base-devel rofi okular feh vim code picom kitty ranger git xdotool xautolock i3lock-color scrot imagemagick rxvt-unicode urxvt-perls

এখানে সবকিছু কিভাবে কাজ করবে তার একটি মোটামুটি চিত্র

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

কোন প্যাকেজ কি জন্য প্রয়োজন?

প্যাকেজ
কি প্রয়োজন

xwinwrap
অ্যানিমেটেড ওয়ালপেপার হিসাবে .gif এক্সটেনশনের সাথে ফাইলগুলি ইনস্টল করার প্রয়োজন৷

পলিবার
উইন্ডো ম্যানেজারে প্রদর্শিত টপবারের জন্য প্রয়োজন

i3
উইন্ডো ম্যানেজার নিজেই

i3-ফাঁক
উইন্ডো ম্যানেজার এক্সটেনশন

বেস-ডেভেল
পলিবার ইনস্টল করার জন্য প্রয়োজনীয় উপাদান

rofi
অ্যাপ্লিকেশন লঞ্চার

okular
ডকুমেন্ট ভিউয়ার

zathura
ডকুমেন্ট ভিউয়ার (অনেক এক্সটেনশন সমর্থন করে না, তবে আরও সংক্ষিপ্ত)

feh
ছবি দেখার জন্য এবং ব্যাকগ্রাউন্ড ইমেজ সেট করার জন্য একটি প্রোগ্রাম

তেজ
প্রধান সম্পাদক

কোড
অতিরিক্ত সম্পাদক

পিকম
সুরকার (একটি প্রোগ্রাম যা ছায়া, স্বচ্ছতা, ব্যাকগ্রাউন্ড ব্লার তৈরি করে)

বিড়ালছানা
প্রধান টার্মিনাল

urxvt
অতিরিক্ত টার্মিনাল

পোরা
নথি ব্যবস্থাপক

ফালতু বা এলেবেলে লোক
সংস্করণ নিয়ন্ত্রণ ব্যবস্থা

xdotool
একটি ইউটিলিটি যা স্ক্রিপ্ট তৈরি করতে এবং উইন্ডোজের সাথে ইন্টারঅ্যাক্ট করতে সাহায্য করবে

xautolock
একটি ইউটিলিটি যা নিষ্ক্রিয় অবস্থায় কম্পিউটার লক করে এবং i3-লক চালু করে

i3lock-রঙ
i3lock এর উন্নত সংস্করণ। কম্পিউটার লক করতে এবং একটি পাসওয়ার্ড লিখতে প্রোগ্রামটির প্রয়োজন

scrot
স্ক্রিনশট নেওয়ার জন্য মিনিমালিস্ট অ্যাপ

ImageMagick
একটি প্রোগ্রাম যা আপনাকে ছবিগুলির সাথে ইন্টারঅ্যাক্ট করতে সাহায্য করবে (এগুলিকে আগাম ঝাপসা করে, রূপান্তর করে, রেজোলিউশন পরিবর্তন করে)

i3 কনফিগার করা হচ্ছে

i3 - একটি উইন্ডো ম্যানেজার যা প্রচুর সংস্থান ব্যবহার করে না, এইভাবে অন্যান্য নিয়মিত উইন্ডো পরিচালকদের "অনুকরণ" করার জন্য এটি আমাদের জন্য উপযোগী হবে। (উপহার, অবশ্যই, টাইলিংয়ের সাথে আসে - উইন্ডো ম্যানেজারের ক্ষমতা পর্দার সম্পূর্ণ বিনামূল্যে অংশে অ্যাপ্লিকেশন খুলতে)

আমি কনফিগারেশন প্রদান করব i3 অংশে, যাতে এমনকি নতুনরাও সবকিছু বুঝতে পারে। এর সবচেয়ে গুরুত্বপূর্ণ জিনিস দিয়ে শুরু করা যাক - বোতাম $Mod. এটা সঙ্গে যোগাযোগ পরিবেশন করে i3. সমস্ত বড় হটকি এর মধ্য দিয়ে যাবে।

### Tweaks ###
# Set main key (Win)
set $mod Mod4

এরপরে, আমরা আমাদের উইন্ডো ম্যানেজারকে শিখাব যাতে ক্লিক করা হলে মাউস দিয়ে উইন্ডো সরাতে হয় $mod

# Press MOD key and click on mouse to move your window
floating_modifier $mod

# Focus doesn't follow the mouse
focus_follows_mouse no

আমরা আমাদের অ্যাপ্লিকেশনের জন্য ফন্ট ইনস্টল করব, সেইসাথে অ্যাপ্লিকেশনগুলির জন্য যা নির্ভর করে i3

# Fonts
font pango: JetBrains Mono 10

আমার ধারণা ছিল প্রাথমিকভাবে সব জানালা তৈরি করা উড়ন্ত (যা, এটি পরিণত হিসাবে, খুব সুবিধাজনক)। স্পষ্টীকরণের জন্য: ইন i3 অনেক ধরনের আছে ডকিং উইন্ডোজ (টিলিং, ফুলস্ক্রিন, ট্যাবড, ফ্লোট, স্ট্যাকিং), এগুলি সবগুলিই বিভিন্ন পরিস্থিতিতে সুবিধাজনক, তবে আমি এটি করার অর্থ দেখতে পাচ্ছি না সব জানালা পুরো পর্দা ভরাট. চাপলে তাদের এটি পূরণ করা ভাল $mod + f, কিন্তু ডিফল্টরূপে বাতাসে স্তব্ধ, যা আমি নিম্নলিখিত কোডের অংশে করেছি:

# Maximum width for floating windows
floating_minimum_size 400 x 350
floating_maximum_size 1800 x 900

# (1920 - 10)/2 and (1080 - 10)/2
for_window [class=".*"] floating enable
for_window [class=".*"] resize set 955 535
for_window [class=".*"] focus

যাতে আপনি অভিব্যক্তি দ্বারা বিভ্রান্ত না হন (1920 - 10)/2 and (1080 - 10)/2 মানে প্রতিটি উইন্ডো পর্দার এক চতুর্থাংশ দখল করবে, এবং ঠিক 5 পিক্সেলের একটি ইন্ডেন্টেশন (একে অপরের থেকে) থাকবে (সব দিকে 5)।

এর পরে, আসুন সমস্ত প্রধান অ্যাপ্লিকেশনগুলিকে আবদ্ধ করি। সমস্ত হটকি এই স্কিমটি মেলানোর চেষ্টা করে

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

## Keyboard Settings ##
# Apps
bindsym $mod+Return exec kitty
bindsym $mod+Mod1+r exec "kitty sh -c 'ranger'"
bindsym $mod+Mod1+g exec google-chrome-stable
bindsym $mod+Mod1+c exec code
bindsym $mod+Mod1+v exec dolphin
bindsym Print exec spectacle

এছাড়াও, আমরা সমস্ত প্রধান ফাংশনগুলিকে আবদ্ধ করব যা আমরা চিন্তা ছাড়াই সম্পাদন করি এবং যা হতে হবে

# System / Volume
bindsym XF86AudioMute "exec amixer -D pulse sset Master toggle && notify-send "Volume" "Sound is (un)muted" --urgency low"
bindsym XF86AudioRaiseVolume "exec amixer -D pulse sset Master 5%+ && notify-send "Volume" "Volume added +5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"
bindsym XF86AudioLowerVolume "exec amixer -D pulse sset Master 5%- && notify-send "Volume" "Volume added -5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"

# System / Brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 5
bindsym XF86MonBrightnessUp exec xbacklight -inc 5

# Moving from one window to another
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right

# Choose one of your workspaces
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4

# Move window to the workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4

## Floating manipulation ##
# Make window floating
bindsym $mod+f floating toggle
# Change focus
bindsym $mod+Shift+f focus mode_toggle

# Move windows
bindsym $mod+Shift+h move left 20px
bindsym $mod+Shift+j move down 20px
bindsym $mod+Shift+k move up 20px
bindsym $mod+Shift+l move right 20px

# Resizing Windows
bindsym $mod+Ctrl+l resize shrink width 10 px or 10 ppt
bindsym $mod+Ctrl+k resize grow height 10 px or 10 ppt
bindsym $mod+Ctrl+j resize shrink height 10 px or 10 ppt
bindsym $mod+Ctrl+h resize grow width 10 px or 10 ppt

# Make window fullscreen
bindcode 95 fullscreen toggle

# Reload Configuration
bindsym $mod+p reload

# Kill a window
bindsym $mod+x exec xdotool getwindowfocus windowkill

আসুন একটি অটোস্টার্ট বিভাগ তৈরি করি

### Autostart ###
# Lockscreen after 10min delay
exec --no-startup-id "$HOME/.config/i3/lockscreen"
# Convert background gif to jpg
exec --no-startup-id convert -verbose $HOME/.config/i3/{gif.gif,gif.jpg}
# Generate Colorscheme
exec_always --no-startup-id wal -i $HOME/.config/i3/gif-0.jpg
# Compositor
exec_always --no-startup-id "killall -q picom; picom --config $HOME/.config/picom.conf"
# Language
exec --no-startup-id setxkbmap -model pc105 -layout us,ru -option grp:win_space_toggle
# Dunst
exec --no-startup-id dunst
# Kitty
exec kitty
# Dropbox
exec --no-startup-id dropbox &
# Polybar
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# Cursor
exec_always --no-startup-id xsetroot -cursor_name left_ptr

i3-ফাঁক একটি i3 বিল্ড যা অনেক নতুন বৈশিষ্ট্য যোগ করে। তাদের মধ্যে একটি ইন্ডেন্ট (ফাঁক) যোগ করছে, যা দৃশ্যত খুব ভাল দেখায়।

### i3-gaps ###
# Borders for windows
for_window [class=".*"] border pixel 5

# Gaps for i3bar
for_window [class="i3bar"] gaps outer current set 10

# Gaps
gaps inner 10
gaps outer 4

### Topbar and color theme ###
# Color theme of borders
client.focused              #bf616a #2f343f #d8dee8 #bf616a #d8dee8
client.focused_inactive     #2f343f #kf343f #d8dee8 #2f343f #2f343f
client.unfocused            #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.urgent               #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.placeholder          #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.background           #2f343f

কি হলো?

এবং ফলাফল হল i3 তে একটি ন্যূনতম সমাবেশ, যা ল্যাপটপে খুব দ্রুত কাজ করে এবং ভাল পারফরম্যান্স দেয়

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

যেহেতু আমি অনেকগুলি কনফিগারেশন লিখেছি (যা স্ক্রিনশটে স্পষ্টভাবে দৃশ্যমান), সেগুলি সংগ্রহস্থলে পাওয়া যেতে পারে দারুণ i3.

আরও কয়েকটি স্ক্রিনশট

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

একটি ল্যাপটপের জন্য i3 কনফিগারেশন: কিভাবে কর্মক্ষমতা 100% কমানো যায়?

উত্স: www.habr.com

একটি মন্তব্য জুড়ুন