Na przykład:
cat .config/environment.d/00-keepassxc.conf
QT_QPA_PLATFORM=xcb
No i restart oczywiście.
takie tam unixy i nie tylko
Na przykład:
cat .config/environment.d/00-keepassxc.conf
QT_QPA_PLATFORM=xcb
No i restart oczywiście.
Ku pamięci:
grep -i xclip .tmux.conf bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -in -selection clipboard' usage: ctrl+b+[ - vi mode space - start selection y - end and copy ctrl+b+] - paste
Oczywiście trzeba sobie doinstalować xclip, działa elegancko na linuxie i maczku.
Well nie potrzebuję aby mi się wyświetlało konto ansiblowe w gdm więc aby je ukryć:
sudo vi /var/lib/AccountsService/users/ansible
[User]
Language=
XSession=gnome
SystemAccount=true
I tyle.
Od ponad roku zdarza mi się często “pokodzić” coś w pythonie a jako, że wcześniej głównie pisałem skrypty w bashu to vim w zupełności mi wystarczał. Tak więc w tym czasie przekonałem się do vs code, pyenva do zarządzania virtualenvami i różnymi wersjami pythona i od jakiegoś czasu również devcontenera.
Jak ktoś nie wie co to to szybciutko: konterer z predefiniowana konfuguracja dla całego środowiska no i vscode oczywiście. Ku pamięci wrzucam co używam lokalnie ale można to oczywiście mega rozbudować co też testowałem w pracy i działa to bardzo płynnie. Od pewnego czasu nawet na applowych procesorach dzięki dodaniu wsparcia dla rosetty działa to na mac os całkiem zgrabnie.
Potrzebujemy oczywiście vscode (https://code.visualstudio.com/docs/setup/linux) + docker:
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce
sudo usermod -aG docker ${USER}
i dalej w repo w którym chcemy korzystać z devcontenera dodajemy:
vscode ➜ /workspaces/code/devcontainer (master) $ ls -l .devcontainer total 8 -rw-r--r-- 1 vscode vscode 725 Nov 16 10:51 Dockerfile -rw-r--r-- 1 vscode vscode 1166 Nov 16 10:46 devcontainer.json cat .devcontainer/Dockerfile #BASE IMAGE FROM --platform=linux/amd64 mcr.microsoft.com/devcontainers/python:0-3.11 #ENVS ENV SHELL /usr/bin/zsh #additional packages RUN apt update && apt install -y vim USER vscode WORKDIR /home/vscode RUN wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O - | zsh || true RUN sed -i -e 's/plugins=(git)/plugins=(git vi-mode)/' ~/.zshrc RUN curl https://pyenv.run | bash RUN echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc RUN echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc RUN echo 'eval "$(pyenv init -)"' >> ~/.zshrc ENV HOME /home/vscode ENV PYENV_ROOT $HOME/.pyenv ENV PATH $PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH RUN pyenv install 3.12 cat .devcontainer/devcontainer.json { "build": { "dockerfile": "Dockerfile" }, "customizations": { "vscode": { "extensions": [ "ms-python.python", "njpwerner.autodocstring", "eamodio.gitlens", "redhat.vscode-yaml", "ms-python.isort", "ms-python.flake8", "ms-python.black-formatter", "trond-snekvik.simple-rst", "redhat.ansible" ], "settings": { "files.insertFinalNewline": true, "editor.formatOnSave": true, "flake8.args": [ "--ignore=E501,W503,F722" ] }, "terminal.integrated.defaultProfile.linux": "zsh", "terminal.integrated.profiles.linux": { "zsh": { "path": "/usr/bin/zsh" } } } }, "features": {}, "mounts": [ "source=${localEnv:HOME}${localEnv:USERPROFILE}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached" ], "name": "pakos", "postCreateCommand": "" }
Bonus: devcontainer cli
➜ devcontainer git:(master) devcontainer devcontainer <command> Commands: devcontainer open [path] Open a dev container in VS Code devcontainer up Create and run dev container devcontainer set-up Set up an existing container as a dev container devcontainer build [path] Build a dev container image devcontainer run-user-commands Run user commands devcontainer read-configuration Read configuration devcontainer outdated Show current and available versions devcontainer upgrade Upgrade lockfile devcontainer features Features commands devcontainer templates Templates commands devcontainer exec <cmd> [args..] Execute a command on a running dev container Options: --help Show help [boolean] --version Show version number [boolean] devcontainer@0.52.1 /home/pakos/.vscode/extensions/ms-vscode-remote.remote-containers-0.321.0 Not enough non-option arguments: got 0, need at least 1
Ktoś chyba nie przemyślał zależności dla gnome-boxes bo po instalacji brakuje dwóch rzeczy:
• The CPU is capable of virtualization: yes • The KVM module is loaded: yes • Libvirt KVM guest available: no • Boxes storage pool available: no Could not get “gnome-boxes” storage pool information from libvirt. Make sure “virsh -c qemu:///session pool-dumpxml gnome-boxes” is working. • The SELinux context is default: no
Musimy doinstalować i dodać się do grupy:
sudo apt install qemu-system libvirt-daemon-system libvirt-clients sudo adduser pakos libvirt
I wszystko śmiga
• The CPU is capable of virtualization: yes • The KVM module is loaded: yes • Libvirt KVM guest available: yes • Boxes storage pool available: yes • The SELinux context is default: no
Z racji migracji w debianie z pulseaudio na pipewire musiałem ponownie rozwiązać problem “buczenia” głośników opisany już wcześniej.
mkdir -p .config/wireplumber/main.lua.d cp /usr/share/wireplumber/main.lua.d/50-alsa-config.lua ~/.config/wireplumber/main.lua.d/
Odkomentuj session.suspend-timeout-seconds i ustaw na zero:
["session.suspend-timeout-seconds"] = 0,
No i restart:
systemctl --user restart wireplumber
Ps. jedyny minus/różnica w porównaniu do pulseaudio to że głośniki po podłączeniu/włączeniu systemu nadal startują w trybie suspended a nie idle co za tym idzie “buczenie” doskwiera, dopóki nie poleci jakiś dźwięk.
Skoro jeden z dysków zaczął szwankować to przy okazji nadarzyła się okazja na kupno nowych z większą pojemnością, padło na Seagate IronWolf CMR 4 TB 3.5” SATA III (6 Gb/s) (ST4000VN008).
Filozofii tutaj żadnej nie ma, bo w przypadku raida 1,5,6,10 i TS-251+ wszystko robi się online, ot wypinasz i wkładasz nowy dysk, rebuild raida i następny. Na końcu extend capacity i i synchro raida. Wszystko w zasadzie samo się odpala więc tylko czekamy i monitorujemy. Ku pamięci dwie procedury:
https://www.qnap.com/en/how-to/faq/article/how-do-i-replace-a-faulty-disk-in-a-raid-group
https://www.qnap.com/en/how-to/tutorial/article/online-raid-capacity-upgrade
Pewnie każdy w swoim życiu słyszał buczenie w głośnikach gdy podłączał wtyczkę i przypadkiem dotknął ją palcami, czy tam jakiegoś przedmiotu. Otóż od pewnego czasu te same dźwięki raczyły moje uszy gdy tylko nic nie leciało w outpucie.
Co się okazuje powodem, przynajmniej u mnie? Pulseaudio przechodzi w stan suspend gdy nic nie “gra”. Nie bardzo wiedziałem jak to z początku zdebugować więc wpadłem na to przypadkiem, odpaliłem wtedy pavucontrol żeby zobaczyć czy może jakaś opcja za to odpowiada i wtedy problem znikł. Dziwne, porównałem więc co pokazuje pacmd w poszukiwaniu czegoś do poprawy:
pacmd list-sinks pacmd list-sink-inputs pacmd list-sources
Okazuje się, że jedyną różnicą jest tutaj stan
state: IDLE versus: state: SUSPENDED suspend cause: IDLE
tak więc wyłączyłem moduł suspend:
pakos@vostro:~$ cat .config/pulse/default.pa
.include /etc/pulse/default.pa
.nofail
unload-module module-suspend-on-idle
.fail
Nie jest to chyba najbardziej eleganckie rozwiązanie ale działa, a dlaczego tak się stało skoro wcześniej działało (heh) to będę szukał nadal.
Ku pamięci:
pakos@vostro:/media/Public/vbox$ vboxmanage clonehd debianek-disk002.vhd debianek-disk002.vdi --format vdi
0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%
Clone medium created in format 'vdi'. UUID: 99eab7df-57aa-4f3f-a43e-ebbfa3c88898