Install Minecraft in Ubuntu

sudo apt install default-jre
sudo apt install libgdk-pixbuf2.0-0
 
https://github.com/huanghongxun/HMCL
 
java -jar HMCL-2.7.6.25.jar

Commands,

locate structure village_plain

Minecraft.desktop

[Desktop Entry]
Version=1.0
Terminal=false
Type=Application
Name=Minecraft
StartupWMClass=Minecraft
GenericName=Minecraft
Comment=Minecraft
Exec=/path/to/minecraft/run.sh
Icon=/path/to/minecraft/icon.png
Keywords=game;emulator;
Categories=Game;Emulator;

run.sh

#!/bin/bash
 
PWD=`dirname $0`
 
cd $PWD
 
xrandr --size 960x540
 
java -jar ./HMCL-3.5.4.234.jar
 
xrandr --size 1920x1080

refer to:
https://blog.csdn.net/weixin_33757911/article/details/90099582
http://www.mcbbs.net/thread-142335-1-1.html

Gpu Passthrough

sudo apt install qemu-kvm qemu-utils libvirt-daemon-system libvirt-clients bridge-utils virt-manager ovmf

Identify iommu group,

#!/bin/bash
# change the 999 if needed
shopt -s nullglob
for d in /sys/kernel/iommu_groups/{0..999}/devices/*; do
	n=${d#*/iommu_groups/*}; n=${n%%/*}
	printf 'IOMMU Group %s ' "$n"
	lspci -nns "${d##*/}"
done
sudo vi /etc/default/grub
	GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt vfio-pci.ids=10de:24e0,10de:228b"

sudo update-grub

After NVidia driver is installed in guest win10, remember to disable "Red Hat QXL Controller" display adapter before reboot.

Setup up shared folder:

VM Settings -> Memory -> Enable shared memory

Add Hardware -> Filesystem -> virtiofs -> Source path: /host/path/to/share -> Target path: \\share

After boot up gust win10, drop winfsp-2.0.23075.msi in it and install the msi using default package.

Then start service "VirtIO-FS Service (VirtioFsSvc)".

In address bar of Windows Explorer, type z: to access shared folder.

Convert vmdk to qcow2,

qemu-img convert -f vmdk -O qcow2 /mnt/E/vmimg/win10new/win10.vmdk win10.qcow2

refer to:
https://mathiashueber.com/passthrough-windows-11-vm-ubuntu-22-04/
https://mathiashueber.com/pci-passthrough-ubuntu-2004-virtual-machine/
https://askubuntu.com/questions/1406888/ubuntu-22-04-gpu-passthrough-qemu
https://blog.hwaryong.com/kvm-gpu-passthrough-on-ubuntu-2004
https://www.debugpoint.com/kvm-share-folder-windows-guest/
https://docs.openstack.org/image-guide/convert-images.html

https://github.com/winfsp/winfsp/releases/
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/

Use Physical Drive Partition in VirtualBox

sudo VBoxManage internalcommands createrawvmdk -filename /path/to/d.vmdk -rawdisk /dev/nvme0n1 -partitions 5 -relative

But, non-root user will be blocked as VERR_ACCESS_DENIED, resolve it like link below,

sudo usermod -a -G disk $USER

we must reboot to make it into effect.

Well, we need to know it is very unsafe.

refer to:
https://superuser.com/questions/451573/use-virtualbox-to-boot-a-physical-drive-partition
ILMostro_7 at https://unix.stackexchange.com/questions/284704/verr-access-denied-when-trying-to-add-a-raw-disk-to-virtual-box

Weekday of Date

import datetime
datetime.datetime.strptime("20230101", "%Y%m%d").weekday()

Make WinSxS Fit

Firstly, ensure service 'Windows Modules Installer' not disabled.

dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
dism.exe /online /Cleanup-Image /StartComponentCleanup

refer to:
https://zhuanlan.zhihu.com/p/394593795

May not Delete in Task Scheduler

\Microsoft\Windows\TextServicesFramework		// or else ChsIME.exe will not start up.
\Microsoft\Windows\WCM
\Microsoft\Windows\WlanSvc
\Microsoft\Windows\WwanSvc

Install Nvidia Driver Manually

Reboot to Ubuntu Recovery,

sudo apt install build-essential linux-headers-generic gcc make
sudo apt install pkg-config libglvnd-dev
./NVIDIA-Linux-x86_64-535.54.03.run

sudo vi /etc/modprobe.d/blacklist.conf

blacklist vga16fb 
blacklist nouveau 
blacklist rivafb 
blacklist nvidiafb 
blacklist rivatv

refer to:
https://www.jianshu.com/p/e562752cdbee