Skip to main content

gentoo

 setup rootfs

https://www.gentoo.org/downloads/
https://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened-nomultilib-openrc/
https://wiki.gentoo.org/wiki/Handbook:AMD64/Full/Installation
https://www.gentoo.org/downloads/mirrors/


sudo mkfs.fat -F 32 /dev/sda1  
sudo mkfs.ext4 /dev/sda6  
sudo mke2fs -t ext4 -O ^has_journal /dev/sda5  
sudo mount /dev/sda6 /mnt  
sudo mount /dev/sda1 /mnt/efi       #if efi partition isnt mounted  

cd ~/Downloads  
sudo tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner -C /mnt     #use tab after stage3 if many stage3   

 df -h /dev/sda6   
Filesystem      Size  Used Avail Use% Mounted on  
/dev/sda6        40G  1.4G   36G   4% /mnt  

sudo cp --dereference /etc/resolv.conf /mnt/etc/

 

chroot.sh

#!/bin/sh  
mount --rbind /dev /mnt/dev && mount --make-rslave /mnt/dev
mount --rbind /dev/pts /mnt/dev/pts && mount --make-rslave /mnt/dev/pts
mount --rbind /proc /mnt/proc && mount --make-rslave /mnt/proc
mount --rbind /sys /mnt/sys && mount --make-rslave /mnt/sys
chroot  /mnt /bin/bash

 


sudo bash chroot.sh

source /etc/profile
export PS1="(chroot) ${PS1}


nano /etc/portage/make.conf

 COMMON_FLAGS="-O2 -pipe -march=native"
 #ram/2 or nproc, if unset defaults to nproc
MAKEOPTS="-j4 -l5"

USE="-dbus -polkit -introspection -pulseaudio -llvm -X"

ACCEPT_LICENSE="*"
VIDEO_CARDS="intel "
INPUT_DEVICES="libinput"


emerge-webrsync

...

    IMPORTANT: 20 news items need reading for repository 'gentoo'.
    Use eselect news read to view new items.

use binpkg for heavy apps
#run getuto to get keys for binpkg
getuto
emerge --usebinpkgonly --binpkg-respect-use pkgname

#this doesnt respect use and emerge anyway
emerge --usebinpkgonly

emerge --getbinpkg pkgname
emerge --ask --verbose -G  gcc
emerge --ask --verbose -G media-libs/libva-intel-media-driver  #not availabe for hardened / other profile


emerge --ask --oneshot app-portage/cpuid2cpuflags
echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags

eselect profile list
eselect profile set xx  #if update profile required
emerge --ask --verbose --update --deep --newuse @world
emerge --ask --pretend --depclean

setup timezone

echo "Asia/Kathmandu" > /etc/timezone

emerge --config sys-libs/timezone-data or just

ln -s /usr/share/zoneinfo/Asia/Kathmandu /etc/localtime

 

portage tmpdir
to save disk write as it extract and build src code in this dir nano /etc/fstab

tmpfs        /var/tmp/portage        tmpfs    size=2G,uid=portage,gid=portage,mode=775    0 0

mount /var/tmp/portage

/etc/portage/env/notmpfs.conf

PORTAGE_TMPDIR="/var/tmp/notmpfs"

mkdir /var/tmp/notmpfs
chown portage:portage /var/tmp/notmpfs
chmod 775 /var/tmp/notmpfs

/etc/portage/package.env

sys-devel/gcc            notmpfs.conf

 

localization

nano /etc/locale.gen

en_US.UTF-8 UTF-8

locale-gen
 

git sync gentoo

emerge -a gentoolkit eix iwd eselect-repository

emerge eselect-repository dev-vcs/git  
rm -r /var/db/repos/gentoo
eselect repository enable gentoo

emerge --sync

use flags

 
cat /etc/portage/package.use/all


app-admin/doas persist

dev-libs/light udev
sys-apps/util-linux   udev
sys-devel/gcc -zstd
sys-apps/openrc -netifrc
net-wireless/iwd standalone -monitor


media-libs/mesa vaapi
x11-libs/libdrm udev
sys-auth/seatd server builtin
gui-wm/sway -swaynag
x11-misc/i3blocks -contrib
media-video/mpv -xv alsa vaapi drm lcms
media-video/ffmpeg  vaapi alsa  mp3 libdrm lcms vorbis
media-libs/libva-intel-media-driver redistributable
media-libs/freetype  harfbuzz
app-misc/nnn -pcre
app-text/mupdf -javascript
app-text/zathura-pdf-mupdf -javascript


emerge media-libs/mesa

 
avoiding rust for now

cat /etc/portage/profile/package.provided

gnome-base/librsvg-2.57.3


 

   

 cat /var/lib/portage/world

app-admin/doas
app-eselect/eselect-repository
app-misc/neofetch
app-misc/nnn
app-portage/eix
app-portage/gentoolkit
app-shells/bash-completion
app-text/zathura-pdf-mupdf
dev-libs/light
dev-vcs/git
gui-apps/foot
gui-apps/wl-clipboard
gui-apps/wmenu
gui-apps/wofi
gui-wm/sway
media-libs/alsa-lib
media-libs/libva-intel-media-driver
media-libs/mesa
media-sound/alsa-utils
media-sound/apulse
media-video/mpv
net-wireless/iwd
net-wireless/wireless-regdb
sys-apps/pciutils
sys-fs/dosfstools
sys-fs/ntfs3g
sys-kernel/gentoo-sources
sys-process/htop
#for firefox
x11-libs/gtk+
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXi
x11-libs/libXrandr

https://github.com/kzwkt/gentoo-dell-inspiron-3501
https://wiki.gentoo.org/wiki/Dell_Inspiron_3501


 

 
x11-libs/libXcomposite x11-libs/libXcursor x11-libs/libXdamage  x11-libs/libXi x11-libs/libXrandr  x11-libs/libXi


 

Comments

Popular posts from this blog

xdm linux merge incomplete download parts

 some download stuck at 99.99% , merge them regardless got to ~/.xdm-app-data/Data/*.state cat dec.py import os import re # Define the pattern to extract the segment number pattern = re.compile(r'seg-(\d+)-v1-a1\.ts') # Get the current working directory current_directory = os.getcwd() # List to hold tuples of (segment_number, filename) files_with_segments = [] # Iterate through files in the current directory for filename in os.listdir(current_directory): match = pattern.search(filename) if match: # Extract the segment number as an integer segment_number = int(match.group(1)) # Add the tuple (segment_number, filename) to the list files_with_segments.append((segment_number, filename)) # Sort the list by the segment number (numerical sort) files_with_segments.sort(key=lambda x: x[0]) # Open the filelist.txt for writing with open('filelist.txt', 'w') as filelist: for _, filename in files_with_segments: file...

kde on debian

https://wiki.debian.org/KDE sudo apt install   xserver-xorg-input-libinput xserver-xorg-video-intel  sudo apt install plasma-desktop plasma-workspace-wayland  sddm  issue  file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/Kickoff.qml:157:34: Type FullRepresentat ion unavailable file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/FullRepresentation.qml:80:22: Type Norma lPage unavailable file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/NormalPage.qml:43:13: Type Footer unavai lable file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/Footer.qml:155:5: Type LeaveButtons unav ailable file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/LeaveButtons.qml:14:1: module "org.kde.k itemmodels" is not installed # upower , it is installed by powerdevil though sudo apt install kde-config-gtk-style  kde-config-gtk-style-preview   breeze-gtk-theme  sudo apt i...

rsa encryption

 choose two large  prime number p (prime 1) and q (prime 2)   n = p x q , where n is called the modulus for encryption and decryption   φ = ( p - 1) x ( q -1) is called Euler's totient function for n= pq For a given positive integer n, Euler's totient function ϕ(n) is defined as the number of positive integers less than or equal to n that are coprime (i.e., share no common factors) with n. ϕ( n ) = n ∏ p ∣ n ( 1 − 1 p )     \phi(n) = n \prod_{p \mid n} \left(1 - \frac{1}{p}\right)   p ∣ n means that p p divides n , and is a prime factor greater than 1  i  n    example , n=2*3=6 with factors f=1 , 2 , 3 , 4 , 5,6 factors Two numbers are coprime if their greatest common divisor (GCD) is 1 here find gcd(f,n)=1  only 1 and 5 are coprime with 6  φ =1*2 =2   choose e less  than φ , such that  e is co prime with φ , ie  e has no common factor with φ except 1 mathematically : gcd ( e , φ ...