Thursday, 6 June 2024

gentoo existing backup/reinstall your system quickly

 There is a good tool for Linux that simplifies the archiving process:

"Mkstage4 - Stage 4 Tarballs Made Easy"

This blog post was made for me. I understand the risks, so keep them in mind while reading the following. Partitioning can cause data loss, so make sure you have backups of everything. It's best to work on a new and empty machine without dual-boot or any data that hasn't been backed up.

Using it is simple:

$ sudo mkstage4 -l -e "/home/*"  -C zst -s genci

After this step finishes, you'll get a "genci.tar.zst".

Here's a copy-paste from the help:
-l: excludes lost+found directory.
-e: an additional excludes directory (one dir one -e, do not use it with *).
-s: makes tarball of current system.
-C: specify tar compression (default: bz2, available: lz4 xz bz2 zst gz).

The last parameter is the archive name without extension. You can safely use the home folder because it will be excluded. I prefer zst because it is super fast, although not the most efficient compressor.

Now we have an archive of the system without the home folder.

Boot a new machine (I also prefer gentoo livecd, because it set up wifi/net easily, and has GUI partition editor) or the same one:

Create the required partitions and mount the root to /mnt/gentoo.

$ mkdir -p /mnt/gentoo/boot

Mount boot EFI partition (a partition with fat32, about 0.5Gib or 1Gib) into /mnt/gentoo/boot

cp genci.tar.zst /mnt/gentoo
tar xvpf genci.tar.zst

mount --types proc /proc /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
mount --bind /run /mnt/gentoo/run
mount --make-rslave /mnt/gentoo/sys
mount --make-rslave /mnt/gentoo/dev
mount --make-rslave /mnt/gentoo/run

chroot /mnt/gentoo
grub-install --efi-directory=/boot
grub-mkconfig -o /boot/grub/grub.cfgblkid
! Update your UDID in vim /etc/fstab...
exit
umount /mnt/gentoo
sync
reboot

Now you are done. But without the home folder, there may be issues. You can copy the entire home folder if you want, or you can add a new user.

ref.:
https://www.tutorials.chymera.eu/blog/2014/05/18/mkstage4-stage4-tarballs-made-easy

Sunday, 19 May 2024

Midnight Commander and Fedora 40

I've been trying to get Midnight Commander (mc) to work properly with the CTRL+SHIFT+ENTER key combination in KDE Plasma, and I'm running into a strange issue.

I've tested this on various distributions, including Gentoo and Debian, and it works flawlessly everywhere.

However, on Fedora 40, CTRL+SHIFT+ENTER doesn't seem to function as expected within mc.

Has anyone else encountered this problem with Fedora 40 and Midnight Commander? Any suggestions or workarounds would be greatly appreciated.

Minimal OpenSUSE Tumbleweed Setup

This guide outlines a minimal setup for OpenSUSE Tumbleweed, focusing on essential applications and addressing common issues like H.264 codec support.

Install Core Applications

$ sudo zypper install smplayer git remmina keepassxc cmake-gui

Fix H.264 Codec Support

Add the Packman repository:

$ sudo zypper ar -cfp 90 https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/packman

Update your system, pulling packages from Packman:

$ sudo zypper dup --from packman --allow-vendor-change

Install Transgui

For additional functionality, consider installing Transgui. You can find instructions and builds here: https://build.opensuse.org/project/show/home:biserov

Remove Unwanted Applications

If you don't need VLC, remove the following packages:

$ sudo zypper remove vlc-noX vlc-qt

Sunday, 12 March 2023

kvm, virtio

$ sudo vim /etc/libvirt/qemu.conf user = "root" group = "libvirt"

$ sudo systemctl restart libvirtd

$ sudo usermod -a -G libvirt $(whoami) KVM:

$ mount -t 9p -o trans=virtio /tagname /tmp/guestname

Wednesday, 30 November 2022

Removing Unwanted Xiaomi Apps

This guide will show you how to remove pre-installed Xiaomi apps on your Android device using ADB commands.

Identifying Package Names

First, connect your device to your computer and enable USB debugging. Open a terminal window and execute the following commands.

$ adb shell

$ pm list packages | grep ‘xiaomi’
$ pm list packages | grep ‘miui'

These commands will list all installed packages and filter for those containing "xiaomi" or "miui" in their names.

Note down the package names of the apps you want to remove.

Uninstalling Apps

Use the following command to uninstall an app, replacing `<PackageName>` with the actual package name:

$ pm uninstall -k —user 0 <PackageName>


The `-k` flag preserves the app's data, allowing you to reinstall it later. The `--user 0` flag specifies the primary user.

Restoring Apps

$ cmd package install-existing <PackageName>


Removed:

com.xiaomi.micloud.sdk # sdk for developer

com.google.android.projection.gearhead #android auto

com.android.egg # eastern egg

com.miui.yellowpage

com.aura.oobe.bouygues

com.orange.update

com.orange.aura.oobe

com.sfr.android.sfrjeux



Strange list of unwanted apps:

com.altice.android.myapps
com.android.camera
com.android.cameraextensions
com.android.musicfx
com.android.wallpaperbackup
com.android.wallpapercropper
com.android.wallpaper.livepicker

com.google.android.apps.turbo
com.google.android.apps.wellbeing
com.android.egg
com.android.hotwordenrollment.okgoogle
com.android.hotwordenrollment.xgoogle

com.bsp.catchlog
com.fido.asm
com.google.android.apps.googleassistant
com.google.android.marvin.talkback
com.google.mainline.adservices
com.google.mainline.telemetry
com.ironsource.appcloud.oobe.hutchison
com.lbe.security.miui

com.tencent.soter.soterserver
com.wdstechnology.android.kryten

com.miuix.editor
com.miui.miwallpaper
com.miui.miwallpaper.overlay
com.miui.miwallpaper.overlay.customize
com.miui.miwallpaper.wallpaperoverlay.config.overlay
com.miui.player
com.miui.videoplayer
com.miui.wallpaper.overlay
com.miui.wallpaper.overlay.customize
com.aura.oobe.vodafone
de.telekom.tsc

com.sfr.android.sfrjeux
com.orange.aura.oobe
com.orange.update
com.aura.oobe.bouygues
com.miui.yellowpage

Saturday, 12 November 2022

debian + NetworkManager generate resolve.conf at every reboot

Sadly the NetworkManager overwrite my resolv.conf. To fix I found followings:

$ vim /etc/NetworkManager/conf.d/90-dns-none.conf

[main]

dns=none

$ systemctl reload NetworkManager

Above section disable update NetworkManager overwrite your custom dns resolver.

Now you can add you favorite dns provider like me with Cloudflare:

$ sudo tee /etc/resolv.conf << END
nameserver 2606:4700:4700::1111
nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 2606:4700:4700::1001
END

Have nice day...

Thursday, 10 November 2022

Set up tc_malloc to default on the whole system on Linux

You can use a faster memory allocator for multi-core CPU if you use Google's tcmalloc (https://github.com/google/tcmalloc).

At first install tcmalloc from your repository:

$ apt install libtcmalloc-minimal4

 Now ready for testing with Firefox:

$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4 firefox

If you like it, now you're ready to apply system wide:

$ cat /etc/ld.so.preload
/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4


This is tested on Debian Bookworm and Linux Mint.

Do at your own risk! On this site I give the quick step without detailed description, benchmark and other things.

 

Have a nice day!