From c61066eb443c3854aa41b65f4a3fc9ffa8258fca Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Mon, 28 Jul 2025 18:04:37 +0200 Subject: [PATCH 1/7] pin mason v1 due to breaking changes with lazy.nvim --- nvim/lazy-lock.json | 64 +++++++++++++-------------- nvim/lua/config/plugins/lsp/mason.lua | 8 ++-- 2 files changed, 35 insertions(+), 37 deletions(-) diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index b44e8b0..9509ca9 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -1,41 +1,41 @@ { - "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, - "alpha-nvim": { "branch": "main", "commit": "de72250e054e5e691b9736ee30db72c65d560771" }, - "auto-session": { "branch": "main", "commit": "021b64ed7d4ac68a37be3ad28d8e1cba5bec582c" }, + "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" }, + "alpha-nvim": { "branch": "main", "commit": "2b3cbcdd980cae1e022409289245053f62fb50f6" }, + "auto-session": { "branch": "main", "commit": "ee320d7a59c1dfe83df7c9d58150d9f194690d53" }, "bufdelete.nvim": { "branch": "master", "commit": "f6bcea78afb3060b198125256f897040538bcb81" }, - "bufferline.nvim": { "branch": "main", "commit": "5726c4e291224181903e960119a11e20ac677a0a" }, - "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, - "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, + "cmp-path": { "branch": "main", "commit": "e52e640b7befd8113b3350f46e8cfcfe98fcf730" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, - "dressing.nvim": { "branch": "master", "commit": "3a45525bb182730fe462325c99395529308f431e" }, - "flutter-tools.nvim": { "branch": "main", "commit": "234a9d4022d0a17301e85a08660d489bffb7383f" }, - "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, - "lazygit.nvim": { "branch": "main", "commit": "77a0d42943d8265271e6e6beaed72da54eeb17e7" }, + "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, + "flutter-tools.nvim": { "branch": "main", "commit": "65b7399804315a1160933b64292d3c5330aa4e9f" }, + "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, + "lazygit.nvim": { "branch": "main", "commit": "cdd3527e251f96eb0527162b156ad839286fcd97" }, "lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" }, - "lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "97d9f1d3ad205dece6bcafd1d71cf1507608f3c7" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "c5e07b8ff54187716334d585db34282e46fa2932" }, - "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, - "monokai-nightasty.nvim": { "branch": "main", "commit": "78137f1ab7b42fc41a1ace10674889bc0aa9a28a" }, + "lualine.nvim": { "branch": "master", "commit": "a94fc68960665e54408fe37dcf573193c4ce82c9" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, + "mason.nvim": { "branch": "main", "commit": "4da89f3ab04783da990f9bd40aaa36c22e59375b" }, + "monokai-nightasty.nvim": { "branch": "main", "commit": "8182c45dcaf82e7316cfda6d439ee8ad783ae594" }, "neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" }, - "none-ls-extras.nvim": { "branch": "main", "commit": "6557f20e631d2e9b2a9fd27a5c045d701a3a292c" }, - "none-ls.nvim": { "branch": "main", "commit": "cc810f70852bd37334fad658372a8cfedd1da4e8" }, - "nvim-autopairs": { "branch": "master", "commit": "b464658e9b880f463b9f7e6ccddd93fb0013f559" }, - "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, + "none-ls-extras.nvim": { "branch": "main", "commit": "924fe88a9983c7d90dbb31fc4e3129a583ea0a90" }, + "none-ls.nvim": { "branch": "main", "commit": "3ce66bc62eb363f19cceeb1fae2e71ea2bede56d" }, + "nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" }, + "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, "nvim-lsp-file-operations": { "branch": "master", "commit": "9744b738183a5adca0f916527922078a965515ed" }, - "nvim-lspconfig": { "branch": "master", "commit": "8121483b8132b7053120fafd83728178fb3febf6" }, - "nvim-surround": { "branch": "main", "commit": "9f0cb495f25bff32c936062d85046fbda0c43517" }, - "nvim-tree.lua": { "branch": "master", "commit": "68fc4c20f5803444277022c681785c5edd11916d" }, - "nvim-treesitter": { "branch": "master", "commit": "622a4a6ba76d1de52b72a965159213ae655b4ac7" }, - "nvim-ts-autotag": { "branch": "main", "commit": "1cca23c9da708047922d3895a71032bc0449c52d" }, - "nvim-web-devicons": { "branch": "master", "commit": "5740b7382429d20b6ed0bbdb0694185af9507d44" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, + "nvim-lspconfig": { "branch": "master", "commit": "4d3b3bb8815fbe37bcaf3dbdb12a22382bc11ebe" }, + "nvim-surround": { "branch": "main", "commit": "7a7a78a52219a3312c1fcabf880cea07a7956a5f" }, + "nvim-tree.lua": { "branch": "master", "commit": "a9156c013916d3c8a2905ab2e26e9dd74beb642e" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, + "nvim-web-devicons": { "branch": "master", "commit": "4a8369f4c78ef6f6f895f0cec349e48f74330574" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, - "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, - "venv-selector.nvim": { "branch": "regexp", "commit": "e82594274bf7b54387f9a2abe65f74909ac66e97" }, - "vim-floaterm": { "branch": "master", "commit": "4e28c8dd0271e10a5f55142fb6fe9b1599ee6160" }, - "which-key.nvim": { "branch": "main", "commit": "1f8d414f61e0b05958c342df9b6a4c89ce268766" } + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "venv-selector.nvim": { "branch": "regexp", "commit": "c677caa1030808a9f90092e522de7cc20c1390dd" }, + "vim-floaterm": { "branch": "master", "commit": "fd4bdd66eca56c6cc59f2119e4447496d8cde2ea" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } } diff --git a/nvim/lua/config/plugins/lsp/mason.lua b/nvim/lua/config/plugins/lsp/mason.lua index dd83121..7696e7e 100644 --- a/nvim/lua/config/plugins/lsp/mason.lua +++ b/nvim/lua/config/plugins/lsp/mason.lua @@ -1,9 +1,7 @@ return { - 'williamboman/mason.nvim', - dependencies = { - 'williamboman/mason-lspconfig.nvim', - 'WhoIsSethDaniel/mason-tool-installer.nvim', - }, + { 'williamboman/mason.nvim', commit = '4da89f3' }, + { 'williamboman/mason-lspconfig.nvim', commit = '1a31f82' }, + { 'WhoIsSethDaniel/mason-tool-installer.nvim' }, config = function() local mason = require('mason') local mason_lspconfig = require('mason-lspconfig') From 7770c4b5e4380404cd27413d903a4616b942a44a Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Mon, 11 Aug 2025 21:47:44 +0200 Subject: [PATCH 2/7] implement basic ansible config --- .gitignore | 1 + README.md | 12 +-- ansible.cfg | 4 + group_vars/all.yml | 102 +++++++++++++++++++ install.sh | 70 ++++++------- inventory | 2 + playbook.yml | 127 ++++++++++++++++++++++++ requirements.yml | 4 + todo_ansible.md | 238 +++++++++++++++++++++++++++++++++++++++++++++ zsh/.zshrc | 4 + 10 files changed, 518 insertions(+), 46 deletions(-) create mode 100644 ansible.cfg create mode 100644 group_vars/all.yml create mode 100644 inventory create mode 100644 playbook.yml create mode 100644 requirements.yml create mode 100644 todo_ansible.md diff --git a/.gitignore b/.gitignore index e69de29..9f11b75 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +.idea/ diff --git a/README.md b/README.md index cb91c5d..e5923c5 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,13 @@ ## Installation -Run the `install.sh` script to install neovim, zsh (via oh-my-zsh) and all of the omz plugins. +```bash +pacman -S ansible-tools +ansible-galaxy install -r requirements.yml +ansible-playbook playbook.yml --ask-become-pass +``` -## nvim - --- TODO -- - -- Install nerdfont +- Install nerdfont -- TODO ## zsh diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..bf7b4a3 --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,4 @@ +[default] +inventory = inventory +stdout_callback = yaml +host_key_checking = False diff --git a/group_vars/all.yml b/group_vars/all.yml new file mode 100644 index 0000000..1d46a73 --- /dev/null +++ b/group_vars/all.yml @@ -0,0 +1,102 @@ +default_roles: + # === Core System Tools (Recommended) === + - system # Essential system configurations and tools + - fonts # Developer-friendly fonts (Nerd Fonts) + + # === Development Core === + - git # Version control system + - neovim # Modern text editor (or use 'vim') + - tmux # Terminal multiplexer for session management + + # === Shell Environment === + - zsh # Modern shell with oh-my-zsh + + # === Development Languages === + - nvm # Node Version Manager + - npm # Node Package Manager + - go # Go programming language + # - rust # Rust programming language + # - ruby # Ruby programming language + # - lua # Lua programming language + # === DevOps & Cloud Tools === + - docker # Container platform + + # === System Monitoring === + - btop # Modern system monitor (better than htop) + # - neofetch # System information display + # - nerdfetch # Alternative system info with ASCII art + # - ncdu # Disk usage analyzer + + # === Terminal Emulators === + # - kitty # GPU-accelerated terminal + # - warp # Modern terminal with AI features + + # === Productivity Tools === + # - obsidian # Knowledge management and note-taking + # - raycast # macOS launcher and productivity tool + # - hammerspoon # macOS automation and window management + # - taskfile # Modern task runner (alternative to make) + # - tldr # Simplified command documentation + # - slides # Terminal-based presentation tool + + # === Communication & Media === + # - discord # Team communication + # - spotify # Music streaming + + # === Network & Remote Access === + # - ssh # SSH client configuration + # - sshfs # Mount remote filesystems via SSH + # - tmate # Terminal sharing for pair programming + + # === macOS Specific === + # - aldente # Battery charge limiter for macOS + + # === Linux Specific === + # - flatpak # Universal Linux package manager + # - nala # Better apt frontend for Ubuntu/Debian + + # === Browser Tools === + # - brave # Privacy-focused web browser + + # === Cloud & Infrastructure CLIs === + # - aws # Amazon Web Services CLI + # - azure # Microsoft Azure CLI + # - nomad # HashiCorp Nomad (alternative to Kubernetes) + + # === Container Alternatives === + # - orbstack # Docker Desktop alternative for macOS + + # === Additional Terminal Emulators === + # - alacritty # Cross-platform GPU-accelerated terminal + # - ghostty # Fast, feature-rich terminal emulator + + # === Development Tools === + # - just # Command runner (modern alternative to make) + # - goreleaser # Go application release automation + + # === Kubernetes Ecosystem === + # - kind # Kubernetes in Docker for local testing + # - kwctl # Kubernetes policy engine management + + # === Network & VPN Tools === + # - wireguard # Modern VPN solution + + # === Alternative Shells === + # - bash # Traditional bash shell configuration + # - pwsh # PowerShell for cross-platform scripting + # - zellij # Terminal workspace manager (alternative to tmux) + + # === Package Managers === + # - whalebrew # Homebrew but with Docker images + + # === Windows Specific === + # - winget # Windows package manager (Windows only) + + # === Fun Stuff === + # - asciiquarium # Animated ASCII aquarium for your terminal + + # === Security & Authentication === + # - 1password # 1Password CLI integration + + # === Network Analysis === + # - tshark # Command-line network protocol analyzer diff --git a/install.sh b/install.sh index 643332d..f48f7e2 100755 --- a/install.sh +++ b/install.sh @@ -1,48 +1,38 @@ #!/bin/bash -command_exists() { - command -v "$1" >/dev/null 2>&1 +set -e + +DOTFILES_DIR="$HOME/dotfiles" + + +function arch_setup() { + if ! [ -x "$(which ansible)" ]; then + echo "Installing ansible" + sudo pacman -S ansible + fi } -create_symlink() { - local source=$1 - local target=$2 - - if [ ! -e "$target" ]; then - ln -s "$source" "$target" - echo "Added symlink $source -> $target" - fi + +function detect_os() { + source /etc/os-release + echo "$ID" } -install_package() { - local package=$1 - if ! command_exists "$package"; then - # sudo dnf update && sudo dnf install "$package" - sudo pacman -S "$package" - fi -} +local_os=$(detect_os) -install_package "neovim" -create_symlink "$HOME/dotfiles/nvim" "$HOME/.config/nvim" +case $local_os in + cachyos|arch) + arch_setup + ;; + debian) + debian_setup + ;; + fedora) + fedora_setup + ;; + *) + echo "OS $local_os not supported" + exit 1 +esac -install_package "zsh" -create_symlink "$HOME/dotfiles/zsh/.zshrc" "$HOME/.zshrc" - -if [ ! -d "$HOME/.oh-my-zsh" ]; then - sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" -fi - -ZSH_CUSTOM=${ZSH_CUSTOM:-~/.oh-my-zsh/custom} - -# Install zsh-syntax-highlighting -if [ ! -d "${ZSH_CUSTOM}/plugins/zsh-syntax-highlighting" ]; then - git clone --depth 1 https://github.com/zsh-users/zsh-syntax-highlighting.git \ - ${ZSH_CUSTOM}/plugins/zsh-syntax-highlighting -fi - - -# Install zsh-syntax-highlighting -if [ ! -d "${ZSH_CUSTOM}/plugins/fzf-zsh-plugin" ]; then - git clone --depth 1 https://github.com/unixorn/fzf-zsh-plugin.git \ - ${ZSH_CUSTOM}/plugins/fzf-zsh-plugin -fi +ansible-playbook "$DOTFILES_DIR/playbook.yml" "$@" \ No newline at end of file diff --git a/inventory b/inventory new file mode 100644 index 0000000..13cfabe --- /dev/null +++ b/inventory @@ -0,0 +1,2 @@ +[local] +localhost ansible_connection=local diff --git a/playbook.yml b/playbook.yml new file mode 100644 index 0000000..a5c3ad3 --- /dev/null +++ b/playbook.yml @@ -0,0 +1,127 @@ +--- +- name: Setup dotfiles configuration + hosts: localhost + connection: local + become: false + vars: + dotfiles_dir: "{{ ansible_env.HOME }}/dotfiles" + + tasks: + - name: Install packages with pacman + become: true + pacman: + name: + - neovim + - zsh + - git + - openssh + state: present + + - name: Install oh-my-zsh from AUR + kewlfft.aur.aur: + name: oh-my-zsh-git + state: present + + - name: Create necessary directories + file: + path: "{{ item }}" + state: directory + mode: '0755' + loop: + - "{{ ansible_env.HOME }}/.config" + - "{{ ansible_env.HOME }}/.ssh" + + - name: Check if neovim config exists + stat: + path: "{{ dotfiles_dir }}/nvim" + register: nvim_config + + - name: Symlink neovim config + file: + src: "{{ dotfiles_dir }}/nvim" + dest: "{{ ansible_env.HOME }}/.config/nvim" + state: link + force: true + when: nvim_config.stat.exists + + - name: Check if zsh config exists + stat: + path: "{{ dotfiles_dir }}/zsh/.zshrc" + register: zsh_config + + - name: Symlink zsh config + file: + src: "{{ dotfiles_dir }}/zsh/.zshrc" + dest: "{{ ansible_env.HOME }}/.zshrc" + state: link + force: true + when: zsh_config.stat.exists + + - name: Change default shell to zsh + become: true + user: + name: "{{ ansible_env.USER }}" + shell: /usr/bin/zsh + + - name: Symlink SSH askpass config + file: + src: "{{ dotfiles_dir }}/ssh_askpass.conf" + dest: "{{ ansible_env.HOME }}/.ssh/askpass.conf" + state: link + force: true + when: zsh_config.stat.exists + + - name: Check if git config exists + stat: + path: "{{ dotfiles_dir }}/git/.gitconfig" + register: git_config + + - name: Symlink global git config + file: + src: "{{ dotfiles_dir }}/git/.gitconfig" + dest: "{{ ansible_env.HOME }}/.gitconfig" + state: link + force: true + when: git_config.stat.exists + + - name: Check if kde config exists + stat: + path: "{{ dotfiles_dir }}/kde" + register: kde_config + + - name: Find KDE config files in dotfiles + find: + paths: "{{ dotfiles_dir }}/kde" + patterns: "*" + file_type: file + register: kde_configs + when: kde_config.stat.exists + + - name: Symlink KDE config files + file: + src: "{{ item.path }}" + dest: "{{ ansible_env.HOME }}/.config/{{ item.path | basename }}" + state: link + force: true + loop: "{{ kde_configs.files }}" + when: kde_configs.files is defined + + - name: Install yay if not present (for AUR packages) + block: + - name: Check if yay is installed + command: which yay + register: yay_check + failed_when: false + changed_when: false + + - name: Install yay from AUR + become: true + shell: | + cd /tmp + git clone https://aur.archlinux.org/yay.git + cd yay + makepkg -si --noconfirm + cd .. + rm -rf yay + when: yay_check.rc != 0 + diff --git a/requirements.yml b/requirements.yml new file mode 100644 index 0000000..a937e53 --- /dev/null +++ b/requirements.yml @@ -0,0 +1,4 @@ +--- +collections: + - community.general + - kewlfft.aur diff --git a/todo_ansible.md b/todo_ansible.md new file mode 100644 index 0000000..ec1e301 --- /dev/null +++ b/todo_ansible.md @@ -0,0 +1,238 @@ +Here's how such a role-based Ansible dotfiles configuration would work: + +## Directory Structure +``` +dotfiles/ +├── playbook.yml # Main playbook +├── group_vars/ +│ └── all.yml # Your config with default_roles +├── roles/ +│ ├── system/ +│ │ ├── tasks/main.yml +│ │ ├── vars/main.yml +│ │ └── files/ +│ ├── git/ +│ │ ├── tasks/main.yml +│ │ ├── templates/ +│ │ │ └── .gitconfig.j2 +│ │ └── vars/main.yml +│ ├── neovim/ +│ │ ├── tasks/main.yml +│ │ └── files/ +│ └── zsh/ +│ ├── tasks/main.yml +│ ├── files/ +│ │ └── .zshrc +│ └── vars/main.yml +└── inventory +``` + +## Main Configuration (`group_vars/all.yml`) +```yaml +# Your system configuration +default_roles: + - system + - git + - neovim + - zsh + - docker + +# Global variables +dotfiles_dir: "{{ ansible_env.HOME }}/dotfiles" +config_dir: "{{ ansible_env.HOME }}/.config" + +# Git configuration +git_user_name: "Johannes" +git_user_email: "johannes@example.com" +git_editor: "nvim" + +# System packages to install +system_packages: + - curl + - wget + - unzip + - tree +``` + +## Main Playbook (`playbook.yml`) +```yaml +--- +- name: Setup development environment + hosts: localhost + connection: local + become: yes + become_method: sudo + + pre_tasks: + - name: Create btrfs snapshot before changes + shell: | + sudo btrfs subvolume snapshot / /.snapshots/before-dotfiles-$(date +%Y%m%d-%H%M%S) + ignore_errors: yes + tags: [snapshot] + + roles: "{{ default_roles }}" + + post_tasks: + - name: Summary of installed roles + debug: + msg: "Completed setup for: {{ default_roles | join(', ') }}" +``` + +## Example Roles + +### System Role (`roles/system/tasks/main.yml`) +```yaml +--- +- name: Install system packages + package: + name: "{{ system_packages }}" + state: present + +- name: Ensure .config directory exists + file: + path: "{{ config_dir }}" + state: directory + mode: '0755' + +- name: Set up shell as default + user: + name: "{{ ansible_env.USER }}" + shell: /usr/bin/zsh + when: "'zsh' in default_roles" +``` + +### Git Role (`roles/git/tasks/main.yml`) +```yaml +--- +- name: Install git + package: + name: git + state: present + +- name: Check if custom gitconfig exists + stat: + path: "{{ dotfiles_dir }}/git/.gitconfig" + register: custom_gitconfig + +- name: Use custom gitconfig if available + file: + src: "{{ dotfiles_dir }}/git/.gitconfig" + dest: "{{ ansible_env.HOME }}/.gitconfig" + state: link + force: yes + when: custom_gitconfig.stat.exists + +- name: Generate gitconfig from template if no custom config + template: + src: .gitconfig.j2 + dest: "{{ ansible_env.HOME }}/.gitconfig" + mode: '0644' + when: not custom_gitconfig.stat.exists +``` + +### Git Template (`roles/git/templates/.gitconfig.j2`) +```ini +[user] + name = {{ git_user_name }} + email = {{ git_user_email }} + +[core] + editor = {{ git_editor }} + autocrlf = input + +[init] + defaultBranch = main + +[push] + default = simple +``` + +### Neovim Role (`roles/neovim/tasks/main.yml`) +```yaml +--- +- name: Install neovim + package: + name: neovim + state: present + +- name: Check for custom neovim config + stat: + path: "{{ dotfiles_dir }}/nvim" + register: nvim_config + +- name: Symlink neovim config + file: + src: "{{ dotfiles_dir }}/nvim" + dest: "{{ config_dir }}/nvim" + state: link + force: yes + when: nvim_config.stat.exists + +- name: Create basic neovim config if none exists + copy: + content: | + -- Basic Neovim configuration + vim.opt.number = true + vim.opt.expandtab = true + vim.opt.tabstop = 2 + vim.opt.shiftwidth = 2 + dest: "{{ config_dir }}/nvim/init.lua" + mode: '0644' + when: not nvim_config.stat.exists +``` + +### ZSH Role (`roles/zsh/tasks/main.yml`) +```yaml +--- +- name: Install zsh + package: + name: zsh + state: present + +- name: Install oh-my-zsh + shell: | + sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" --unattended + args: + creates: "{{ ansible_env.HOME }}/.oh-my-zsh" + +- name: Check for custom zshrc + stat: + path: "{{ dotfiles_dir }}/zsh/.zshrc" + register: custom_zshrc + +- name: Symlink custom zshrc + file: + src: "{{ dotfiles_dir }}/zsh/.zshrc" + dest: "{{ ansible_env.HOME }}/.zshrc" + state: link + force: yes + when: custom_zshrc.stat.exists +``` + +## Usage + +**To install everything:** +```bash +ansible-playbook -i inventory playbook.yml --ask-become-pass +``` + +**To install only specific roles:** +```bash +ansible-playbook -i inventory playbook.yml --ask-become-pass --tags "git,neovim" +``` + +**To override roles temporarily:** +```bash +ansible-playbook -i inventory playbook.yml --ask-become-pass -e "default_roles=['system','git']" +``` + +## Benefits of This Approach + +1. **Modular**: Each tool is a separate role +2. **Configurable**: Easy to enable/disable tools in `all.yml` +3. **Reusable**: Roles can be shared across different machines +4. **Flexible**: Can override variables per host/group +5. **Fallback configs**: Generates basic configs when custom ones don't exist +6. **Scalable**: Easy to add new tools without touching existing code + +This approach lets you manage your entire development environment as code while keeping it organized and maintainable! diff --git a/zsh/.zshrc b/zsh/.zshrc index a620ac0..667427a 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -124,3 +124,7 @@ export NVM_DIR="$HOME/.nvm" if [[ -n "$MACHINE_TYPE" && -f "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" ]]; then source "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" fi + + +alias drun='docker run -it --network=host --device=/dev/kfd --device=/dev/dri --group-add=video --ipc=host --cap-add=SYS_PTRACE --security-opt seccomp=unconfined' + From 14e4d4fe3e3726dbb800535eb80a56b979186313 Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Sat, 6 Sep 2025 15:44:39 +0200 Subject: [PATCH 3/7] move most important config to ansible --- group_vars/all.yml | 129 +++++++---------- inventory | 2 +- playbook.yml | 135 +++--------------- .../nvim/files}/after/ftplugin/markdown.lua | 0 .../nvim/files}/after/ftplugin/scss.lua | 0 .../nvim/files}/after/ftplugin/typescript.lua | 0 .../nvim/files}/after/ftplugin/vim.lua | 0 {nvim => roles/nvim/files}/init.lua | 0 {nvim => roles/nvim/files}/lazy-lock.json | 0 .../nvim/files}/lua/config/core/init.lua | 0 .../nvim/files}/lua/config/core/keymaps.lua | 2 +- .../nvim/files}/lua/config/core/options.lua | 0 .../nvim/files}/lua/config/lazy.lua | 0 .../files}/lua/config/plugins/airline.lua# | 0 .../nvim/files}/lua/config/plugins/alpha.lua | 0 .../lua/config/plugins/auto-session.lua | 0 .../files}/lua/config/plugins/autopairs.lua | 0 .../files}/lua/config/plugins/bufdelete.lua | 0 .../files}/lua/config/plugins/bufferline.lua | 0 .../nvim/files}/lua/config/plugins/cmp.lua | 0 .../files}/lua/config/plugins/colorscheme.lua | 0 .../files}/lua/config/plugins/diffview.lua | 0 .../files}/lua/config/plugins/dressing.lua | 0 .../files}/lua/config/plugins/floaterm.lua | 0 .../files}/lua/config/plugins/flutter.lua | 0 .../nvim/files}/lua/config/plugins/init.lua | 0 .../files}/lua/config/plugins/lazygit.lua | 0 .../lua/config/plugins/lsp/lspconfig.lua | 0 .../files}/lua/config/plugins/lsp/mason.lua | 0 .../files}/lua/config/plugins/lsp/null-ls.lua | 0 .../lua/config/plugins/lsp/pyrightconfig.json | 0 .../files}/lua/config/plugins/lualine.lua | 0 .../files}/lua/config/plugins/nvim-tree.lua | 0 .../files}/lua/config/plugins/surround.lua | 0 .../files}/lua/config/plugins/telescope.lua | 0 .../lua/config/plugins/todo-comments.lua | 0 .../files}/lua/config/plugins/treesitter.lua | 0 .../lua/config/plugins/venv-selector.lua | 0 .../files}/lua/config/plugins/which-key.lua | 0 roles/nvim/tasks/main.yml | 12 ++ roles/system/tasks/main.yml | 20 +++ roles/zsh/files/.zshrc | 52 +++++++ {zsh => roles/zsh/files}/aliases.zsh | 0 {zsh => roles/zsh/files}/dev_env.zsh | 0 {zsh => roles/zsh/files}/hosts/personal.zsh | 0 {zsh => roles/zsh/files}/hosts/work.zsh | 0 {zsh => roles/zsh/files}/tools.zsh | 0 roles/zsh/tasks/main.yaml | 24 ++++ zsh/.zshrc | 130 ----------------- 49 files changed, 179 insertions(+), 327 deletions(-) rename {nvim => roles/nvim/files}/after/ftplugin/markdown.lua (100%) rename {nvim => roles/nvim/files}/after/ftplugin/scss.lua (100%) rename {nvim => roles/nvim/files}/after/ftplugin/typescript.lua (100%) rename {nvim => roles/nvim/files}/after/ftplugin/vim.lua (100%) rename {nvim => roles/nvim/files}/init.lua (100%) rename {nvim => roles/nvim/files}/lazy-lock.json (100%) rename {nvim => roles/nvim/files}/lua/config/core/init.lua (100%) rename {nvim => roles/nvim/files}/lua/config/core/keymaps.lua (93%) rename {nvim => roles/nvim/files}/lua/config/core/options.lua (100%) rename {nvim => roles/nvim/files}/lua/config/lazy.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/airline.lua# (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/alpha.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/auto-session.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/autopairs.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/bufdelete.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/bufferline.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/cmp.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/colorscheme.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/diffview.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/dressing.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/floaterm.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/flutter.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/init.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lazygit.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lsp/lspconfig.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lsp/mason.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lsp/null-ls.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lsp/pyrightconfig.json (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/lualine.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/nvim-tree.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/surround.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/telescope.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/todo-comments.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/treesitter.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/venv-selector.lua (100%) rename {nvim => roles/nvim/files}/lua/config/plugins/which-key.lua (100%) create mode 100644 roles/nvim/tasks/main.yml create mode 100644 roles/system/tasks/main.yml create mode 100644 roles/zsh/files/.zshrc rename {zsh => roles/zsh/files}/aliases.zsh (100%) rename {zsh => roles/zsh/files}/dev_env.zsh (100%) rename {zsh => roles/zsh/files}/hosts/personal.zsh (100%) rename {zsh => roles/zsh/files}/hosts/work.zsh (100%) rename {zsh => roles/zsh/files}/tools.zsh (100%) create mode 100644 roles/zsh/tasks/main.yaml delete mode 100644 zsh/.zshrc diff --git a/group_vars/all.yml b/group_vars/all.yml index 1d46a73..427cc28 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -1,20 +1,19 @@ default_roles: # === Core System Tools (Recommended) === - system # Essential system configurations and tools - - fonts # Developer-friendly fonts (Nerd Fonts) + # - fonts # Developer-friendly fonts (Nerd Fonts) # === Development Core === - - git # Version control system - - neovim # Modern text editor (or use 'vim') - - tmux # Terminal multiplexer for session management - + # - git # Version control system + - nvim # Modern text editor (or use 'vim') + # - tmux # Terminal multiplexer for session management + # # === Shell Environment === - zsh # Modern shell with oh-my-zsh + # - ssh +temp: # === Development Languages === - - nvm # Node Version Manager - - npm # Node Package Manager - - go # Go programming language # - rust # Rust programming language # - ruby # Ruby programming language # - lua # Lua programming language @@ -22,81 +21,55 @@ default_roles: - docker # Container platform # === System Monitoring === - - btop # Modern system monitor (better than htop) - # - neofetch # System information display - # - nerdfetch # Alternative system info with ASCII art - # - ncdu # Disk usage analyzer # === Terminal Emulators === + - ghostty # - kitty # GPU-accelerated terminal # - warp # Modern terminal with AI features # === Productivity Tools === # - obsidian # Knowledge management and note-taking - # - raycast # macOS launcher and productivity tool - # - hammerspoon # macOS automation and window management - # - taskfile # Modern task runner (alternative to make) - # - tldr # Simplified command documentation - # - slides # Terminal-based presentation tool + +system_packages: + # Network + - curl + - wget + - rsync + - nmap + # - nslookup + # - dig - # === Communication & Media === - # - discord # Team communication - # - spotify # Music streaming - - # === Network & Remote Access === - # - ssh # SSH client configuration - # - sshfs # Mount remote filesystems via SSH - # - tmate # Terminal sharing for pair programming - - # === macOS Specific === - # - aldente # Battery charge limiter for macOS - - # === Linux Specific === - # - flatpak # Universal Linux package manager - # - nala # Better apt frontend for Ubuntu/Debian - - # === Browser Tools === - # - brave # Privacy-focused web browser - - # === Cloud & Infrastructure CLIs === - # - aws # Amazon Web Services CLI - # - azure # Microsoft Azure CLI - # - nomad # HashiCorp Nomad (alternative to Kubernetes) - - # === Container Alternatives === - # - orbstack # Docker Desktop alternative for macOS - - # === Additional Terminal Emulators === - # - alacritty # Cross-platform GPU-accelerated terminal - # - ghostty # Fast, feature-rich terminal emulator - - # === Development Tools === - # - just # Command runner (modern alternative to make) - # - goreleaser # Go application release automation - - # === Kubernetes Ecosystem === - # - kind # Kubernetes in Docker for local testing - # - kwctl # Kubernetes policy engine management - - # === Network & VPN Tools === - # - wireguard # Modern VPN solution - - # === Alternative Shells === - # - bash # Traditional bash shell configuration - # - pwsh # PowerShell for cross-platform scripting - # - zellij # Terminal workspace manager (alternative to tmux) - - # === Package Managers === - # - whalebrew # Homebrew but with Docker images - - # === Windows Specific === - # - winget # Windows package manager (Windows only) - - # === Fun Stuff === - # - asciiquarium # Animated ASCII aquarium for your terminal - - # === Security & Authentication === - # - 1password # 1Password CLI integration - - # === Network Analysis === - # - tshark # Command-line network protocol analyzer + # archive/compression + - unzip + - tar + + # text processing + - jq + - ripgrep + - fd + + # utilities + - btop + - which + # - fzf + - bat + - eza + - tealdeer + - neofetch + + # dev + - nvm + - go + - discord # Team communication + + +# TODO +aur_packages: + - autojump + - spotify + - qownnotes + - stripe-cli + - pgformatter-git + # - jetbrains-toolbox + +config_dir: "{{ ansible_facts.env.HOME }}/.config" diff --git a/inventory b/inventory index 13cfabe..fe31dc2 100644 --- a/inventory +++ b/inventory @@ -1,2 +1,2 @@ [local] -localhost ansible_connection=local +localhost ansible_connection=local ansible_user=johannes diff --git a/playbook.yml b/playbook.yml index a5c3ad3..da49a69 100644 --- a/playbook.yml +++ b/playbook.yml @@ -5,123 +5,24 @@ become: false vars: dotfiles_dir: "{{ ansible_env.HOME }}/dotfiles" - - tasks: - - name: Install packages with pacman + # roles: + # - zsh + + pre_tasks: + - name: Create btrfs snapshot before changes + shell: | + sudo btrfs subvolume snapsho / /.snapshots/before-dotfiles-$(date +%Y%m%d-%H%M%S) + tags: [snapshot] become: true - pacman: - name: - - neovim - - zsh - - git - - openssh - state: present + become_method: sudo - - name: Install oh-my-zsh from AUR - kewlfft.aur.aur: - name: oh-my-zsh-git - state: present - - - name: Create necessary directories - file: - path: "{{ item }}" - state: directory - mode: '0755' + tasks: + - name: Install enabled roles + ansible.builtin.include_role: + name: "{{ item }}" + apply: + tags: + - install loop: - - "{{ ansible_env.HOME }}/.config" - - "{{ ansible_env.HOME }}/.ssh" - - - name: Check if neovim config exists - stat: - path: "{{ dotfiles_dir }}/nvim" - register: nvim_config - - - name: Symlink neovim config - file: - src: "{{ dotfiles_dir }}/nvim" - dest: "{{ ansible_env.HOME }}/.config/nvim" - state: link - force: true - when: nvim_config.stat.exists - - - name: Check if zsh config exists - stat: - path: "{{ dotfiles_dir }}/zsh/.zshrc" - register: zsh_config - - - name: Symlink zsh config - file: - src: "{{ dotfiles_dir }}/zsh/.zshrc" - dest: "{{ ansible_env.HOME }}/.zshrc" - state: link - force: true - when: zsh_config.stat.exists - - - name: Change default shell to zsh - become: true - user: - name: "{{ ansible_env.USER }}" - shell: /usr/bin/zsh - - - name: Symlink SSH askpass config - file: - src: "{{ dotfiles_dir }}/ssh_askpass.conf" - dest: "{{ ansible_env.HOME }}/.ssh/askpass.conf" - state: link - force: true - when: zsh_config.stat.exists - - - name: Check if git config exists - stat: - path: "{{ dotfiles_dir }}/git/.gitconfig" - register: git_config - - - name: Symlink global git config - file: - src: "{{ dotfiles_dir }}/git/.gitconfig" - dest: "{{ ansible_env.HOME }}/.gitconfig" - state: link - force: true - when: git_config.stat.exists - - - name: Check if kde config exists - stat: - path: "{{ dotfiles_dir }}/kde" - register: kde_config - - - name: Find KDE config files in dotfiles - find: - paths: "{{ dotfiles_dir }}/kde" - patterns: "*" - file_type: file - register: kde_configs - when: kde_config.stat.exists - - - name: Symlink KDE config files - file: - src: "{{ item.path }}" - dest: "{{ ansible_env.HOME }}/.config/{{ item.path | basename }}" - state: link - force: true - loop: "{{ kde_configs.files }}" - when: kde_configs.files is defined - - - name: Install yay if not present (for AUR packages) - block: - - name: Check if yay is installed - command: which yay - register: yay_check - failed_when: false - changed_when: false - - - name: Install yay from AUR - become: true - shell: | - cd /tmp - git clone https://aur.archlinux.org/yay.git - cd yay - makepkg -si --noconfirm - cd .. - rm -rf yay - when: yay_check.rc != 0 - + "{{ default_roles }}" + # when: default_roles is defined diff --git a/nvim/after/ftplugin/markdown.lua b/roles/nvim/files/after/ftplugin/markdown.lua similarity index 100% rename from nvim/after/ftplugin/markdown.lua rename to roles/nvim/files/after/ftplugin/markdown.lua diff --git a/nvim/after/ftplugin/scss.lua b/roles/nvim/files/after/ftplugin/scss.lua similarity index 100% rename from nvim/after/ftplugin/scss.lua rename to roles/nvim/files/after/ftplugin/scss.lua diff --git a/nvim/after/ftplugin/typescript.lua b/roles/nvim/files/after/ftplugin/typescript.lua similarity index 100% rename from nvim/after/ftplugin/typescript.lua rename to roles/nvim/files/after/ftplugin/typescript.lua diff --git a/nvim/after/ftplugin/vim.lua b/roles/nvim/files/after/ftplugin/vim.lua similarity index 100% rename from nvim/after/ftplugin/vim.lua rename to roles/nvim/files/after/ftplugin/vim.lua diff --git a/nvim/init.lua b/roles/nvim/files/init.lua similarity index 100% rename from nvim/init.lua rename to roles/nvim/files/init.lua diff --git a/nvim/lazy-lock.json b/roles/nvim/files/lazy-lock.json similarity index 100% rename from nvim/lazy-lock.json rename to roles/nvim/files/lazy-lock.json diff --git a/nvim/lua/config/core/init.lua b/roles/nvim/files/lua/config/core/init.lua similarity index 100% rename from nvim/lua/config/core/init.lua rename to roles/nvim/files/lua/config/core/init.lua diff --git a/nvim/lua/config/core/keymaps.lua b/roles/nvim/files/lua/config/core/keymaps.lua similarity index 93% rename from nvim/lua/config/core/keymaps.lua rename to roles/nvim/files/lua/config/core/keymaps.lua index f739e66..c2c5ba3 100644 --- a/nvim/lua/config/core/keymaps.lua +++ b/roles/nvim/files/lua/config/core/keymaps.lua @@ -6,7 +6,7 @@ local opts = { noremap = true, silent = true } -- INSERT MODE -- map `ctrl + backspace` to delete previous word in insert mode -keymap.set('i', '', '', opts) +keymap.set('i', '', '', opts) -- map `ctrl + delete` to delete next word in insert mode keymap.set('i', '', 'dw', opts) diff --git a/nvim/lua/config/core/options.lua b/roles/nvim/files/lua/config/core/options.lua similarity index 100% rename from nvim/lua/config/core/options.lua rename to roles/nvim/files/lua/config/core/options.lua diff --git a/nvim/lua/config/lazy.lua b/roles/nvim/files/lua/config/lazy.lua similarity index 100% rename from nvim/lua/config/lazy.lua rename to roles/nvim/files/lua/config/lazy.lua diff --git a/nvim/lua/config/plugins/airline.lua# b/roles/nvim/files/lua/config/plugins/airline.lua# similarity index 100% rename from nvim/lua/config/plugins/airline.lua# rename to roles/nvim/files/lua/config/plugins/airline.lua# diff --git a/nvim/lua/config/plugins/alpha.lua b/roles/nvim/files/lua/config/plugins/alpha.lua similarity index 100% rename from nvim/lua/config/plugins/alpha.lua rename to roles/nvim/files/lua/config/plugins/alpha.lua diff --git a/nvim/lua/config/plugins/auto-session.lua b/roles/nvim/files/lua/config/plugins/auto-session.lua similarity index 100% rename from nvim/lua/config/plugins/auto-session.lua rename to roles/nvim/files/lua/config/plugins/auto-session.lua diff --git a/nvim/lua/config/plugins/autopairs.lua b/roles/nvim/files/lua/config/plugins/autopairs.lua similarity index 100% rename from nvim/lua/config/plugins/autopairs.lua rename to roles/nvim/files/lua/config/plugins/autopairs.lua diff --git a/nvim/lua/config/plugins/bufdelete.lua b/roles/nvim/files/lua/config/plugins/bufdelete.lua similarity index 100% rename from nvim/lua/config/plugins/bufdelete.lua rename to roles/nvim/files/lua/config/plugins/bufdelete.lua diff --git a/nvim/lua/config/plugins/bufferline.lua b/roles/nvim/files/lua/config/plugins/bufferline.lua similarity index 100% rename from nvim/lua/config/plugins/bufferline.lua rename to roles/nvim/files/lua/config/plugins/bufferline.lua diff --git a/nvim/lua/config/plugins/cmp.lua b/roles/nvim/files/lua/config/plugins/cmp.lua similarity index 100% rename from nvim/lua/config/plugins/cmp.lua rename to roles/nvim/files/lua/config/plugins/cmp.lua diff --git a/nvim/lua/config/plugins/colorscheme.lua b/roles/nvim/files/lua/config/plugins/colorscheme.lua similarity index 100% rename from nvim/lua/config/plugins/colorscheme.lua rename to roles/nvim/files/lua/config/plugins/colorscheme.lua diff --git a/nvim/lua/config/plugins/diffview.lua b/roles/nvim/files/lua/config/plugins/diffview.lua similarity index 100% rename from nvim/lua/config/plugins/diffview.lua rename to roles/nvim/files/lua/config/plugins/diffview.lua diff --git a/nvim/lua/config/plugins/dressing.lua b/roles/nvim/files/lua/config/plugins/dressing.lua similarity index 100% rename from nvim/lua/config/plugins/dressing.lua rename to roles/nvim/files/lua/config/plugins/dressing.lua diff --git a/nvim/lua/config/plugins/floaterm.lua b/roles/nvim/files/lua/config/plugins/floaterm.lua similarity index 100% rename from nvim/lua/config/plugins/floaterm.lua rename to roles/nvim/files/lua/config/plugins/floaterm.lua diff --git a/nvim/lua/config/plugins/flutter.lua b/roles/nvim/files/lua/config/plugins/flutter.lua similarity index 100% rename from nvim/lua/config/plugins/flutter.lua rename to roles/nvim/files/lua/config/plugins/flutter.lua diff --git a/nvim/lua/config/plugins/init.lua b/roles/nvim/files/lua/config/plugins/init.lua similarity index 100% rename from nvim/lua/config/plugins/init.lua rename to roles/nvim/files/lua/config/plugins/init.lua diff --git a/nvim/lua/config/plugins/lazygit.lua b/roles/nvim/files/lua/config/plugins/lazygit.lua similarity index 100% rename from nvim/lua/config/plugins/lazygit.lua rename to roles/nvim/files/lua/config/plugins/lazygit.lua diff --git a/nvim/lua/config/plugins/lsp/lspconfig.lua b/roles/nvim/files/lua/config/plugins/lsp/lspconfig.lua similarity index 100% rename from nvim/lua/config/plugins/lsp/lspconfig.lua rename to roles/nvim/files/lua/config/plugins/lsp/lspconfig.lua diff --git a/nvim/lua/config/plugins/lsp/mason.lua b/roles/nvim/files/lua/config/plugins/lsp/mason.lua similarity index 100% rename from nvim/lua/config/plugins/lsp/mason.lua rename to roles/nvim/files/lua/config/plugins/lsp/mason.lua diff --git a/nvim/lua/config/plugins/lsp/null-ls.lua b/roles/nvim/files/lua/config/plugins/lsp/null-ls.lua similarity index 100% rename from nvim/lua/config/plugins/lsp/null-ls.lua rename to roles/nvim/files/lua/config/plugins/lsp/null-ls.lua diff --git a/nvim/lua/config/plugins/lsp/pyrightconfig.json b/roles/nvim/files/lua/config/plugins/lsp/pyrightconfig.json similarity index 100% rename from nvim/lua/config/plugins/lsp/pyrightconfig.json rename to roles/nvim/files/lua/config/plugins/lsp/pyrightconfig.json diff --git a/nvim/lua/config/plugins/lualine.lua b/roles/nvim/files/lua/config/plugins/lualine.lua similarity index 100% rename from nvim/lua/config/plugins/lualine.lua rename to roles/nvim/files/lua/config/plugins/lualine.lua diff --git a/nvim/lua/config/plugins/nvim-tree.lua b/roles/nvim/files/lua/config/plugins/nvim-tree.lua similarity index 100% rename from nvim/lua/config/plugins/nvim-tree.lua rename to roles/nvim/files/lua/config/plugins/nvim-tree.lua diff --git a/nvim/lua/config/plugins/surround.lua b/roles/nvim/files/lua/config/plugins/surround.lua similarity index 100% rename from nvim/lua/config/plugins/surround.lua rename to roles/nvim/files/lua/config/plugins/surround.lua diff --git a/nvim/lua/config/plugins/telescope.lua b/roles/nvim/files/lua/config/plugins/telescope.lua similarity index 100% rename from nvim/lua/config/plugins/telescope.lua rename to roles/nvim/files/lua/config/plugins/telescope.lua diff --git a/nvim/lua/config/plugins/todo-comments.lua b/roles/nvim/files/lua/config/plugins/todo-comments.lua similarity index 100% rename from nvim/lua/config/plugins/todo-comments.lua rename to roles/nvim/files/lua/config/plugins/todo-comments.lua diff --git a/nvim/lua/config/plugins/treesitter.lua b/roles/nvim/files/lua/config/plugins/treesitter.lua similarity index 100% rename from nvim/lua/config/plugins/treesitter.lua rename to roles/nvim/files/lua/config/plugins/treesitter.lua diff --git a/nvim/lua/config/plugins/venv-selector.lua b/roles/nvim/files/lua/config/plugins/venv-selector.lua similarity index 100% rename from nvim/lua/config/plugins/venv-selector.lua rename to roles/nvim/files/lua/config/plugins/venv-selector.lua diff --git a/nvim/lua/config/plugins/which-key.lua b/roles/nvim/files/lua/config/plugins/which-key.lua similarity index 100% rename from nvim/lua/config/plugins/which-key.lua rename to roles/nvim/files/lua/config/plugins/which-key.lua diff --git a/roles/nvim/tasks/main.yml b/roles/nvim/tasks/main.yml new file mode 100644 index 0000000..bad1f3b --- /dev/null +++ b/roles/nvim/tasks/main.yml @@ -0,0 +1,12 @@ +--- +- name: Install neovim + package: + name: neovim + state: present + +- name: Symlink neovim + file: + src: "{{ role_path }}/files" + dest: "{{ config_dir }}/nvim" + state: link + force: true diff --git a/roles/system/tasks/main.yml b/roles/system/tasks/main.yml new file mode 100644 index 0000000..67fc787 --- /dev/null +++ b/roles/system/tasks/main.yml @@ -0,0 +1,20 @@ +--- +- name: Update package cache (Arch-based systems) + pacman: + update_cache: yes + when: ansible_os_family == "Archlinux" + become: yes + +- name: Install system packages + package: + name: "{{ system_packages }}" + state: present + become: yes + +- name: Ensure .config directory exists + file: + path: "{{ config_dir }}" + state: directory + mode: '0755' + owner: "{{ ansible_user }}" + group: "{{ ansible_user }}" diff --git a/roles/zsh/files/.zshrc b/roles/zsh/files/.zshrc new file mode 100644 index 0000000..b1cc416 --- /dev/null +++ b/roles/zsh/files/.zshrc @@ -0,0 +1,52 @@ +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH + +# Path to your Oh My Zsh installation. +export ZSH="$HOME/.oh-my-zsh" + +ZSH_THEME="bira" +zstyle ':omz:update' mode reminder # just remind me to update when it's time +COMPLETION_WAITING_DOTS="true" + +plugins=( + git + zsh-syntax-highlighting + zsh-autosuggestions + fzf-zsh-plugin +) + +source $ZSH/oh-my-zsh.sh + + +# Preferred editor for local and remote sessions +if [[ -n $SSH_CONNECTION ]]; then + export EDITOR='vim' +else + export EDITOR='nvim' +fi + +# TODO prettier solution? +DOTFILES_ZSH_DIR="${0:A:h}" + +for zsh_file in "$DOTFILES_ZSH_DIR"/*.zsh; do + [[ -r "$zsh_file" ]] && source "$zsh_file" +done + + +# TODO source all files with .zsh suffix +# source ./aliases.zsh +# source ./dev_env.zsh +# source ./tools.zsh + +# TODO +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion + +if [[ -n "$MACHINE_TYPE" && -f "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" ]]; then + source "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" +fi + + +alias drun='docker run -it --network=host --device=/dev/kfd --device=/dev/dri --group-add=video --ipc=host --cap-add=SYS_PTRACE --security-opt seccomp=unconfined' + diff --git a/zsh/aliases.zsh b/roles/zsh/files/aliases.zsh similarity index 100% rename from zsh/aliases.zsh rename to roles/zsh/files/aliases.zsh diff --git a/zsh/dev_env.zsh b/roles/zsh/files/dev_env.zsh similarity index 100% rename from zsh/dev_env.zsh rename to roles/zsh/files/dev_env.zsh diff --git a/zsh/hosts/personal.zsh b/roles/zsh/files/hosts/personal.zsh similarity index 100% rename from zsh/hosts/personal.zsh rename to roles/zsh/files/hosts/personal.zsh diff --git a/zsh/hosts/work.zsh b/roles/zsh/files/hosts/work.zsh similarity index 100% rename from zsh/hosts/work.zsh rename to roles/zsh/files/hosts/work.zsh diff --git a/zsh/tools.zsh b/roles/zsh/files/tools.zsh similarity index 100% rename from zsh/tools.zsh rename to roles/zsh/files/tools.zsh diff --git a/roles/zsh/tasks/main.yaml b/roles/zsh/tasks/main.yaml new file mode 100644 index 0000000..8cd5ac0 --- /dev/null +++ b/roles/zsh/tasks/main.yaml @@ -0,0 +1,24 @@ +--- +- name: Install zsh + package: + name: zsh + state: present + +- name: Install oh-my-zsh + shell: | + sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" --unattended + args: + creates: "{{ ansible_env.HOME }}/.oh-my-zsh" + +- name: Check for custom zshrc + stat: + path: "{{ role_path }}/files/.zshrc" + register: custom_zshrc + +- name: Symlink custom zshrc + file: + src: "{{ role_path }}/files/.zshrc" + dest: "{{ ansible_env.HOME }}/.zshrc" + state: link + force: yes + when: custom_zshrc.stat.exists diff --git a/zsh/.zshrc b/zsh/.zshrc deleted file mode 100644 index 667427a..0000000 --- a/zsh/.zshrc +++ /dev/null @@ -1,130 +0,0 @@ -# If you come from bash you might have to change your $PATH. -# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH - -# Path to your Oh My Zsh installation. -export ZSH="$HOME/.oh-my-zsh" - -# Set name of the theme to load --- if set to "random", it will -# load a random theme each time Oh My Zsh is loaded, in which case, -# to know which specific one was loaded, run: echo $RANDOM_THEME -# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes -ZSH_THEME="bira" - -# Set list of themes to pick from when loading at random -# Setting this variable when ZSH_THEME=random will cause zsh to load -# a theme from this variable instead of looking in $ZSH/themes/ -# If set to an empty array, this variable will have no effect. -# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) - -# Uncomment the following line to use case-sensitive completion. -# CASE_SENSITIVE="true" - -# Uncomment the following line to use hyphen-insensitive completion. -# Case-sensitive completion must be off. _ and - will be interchangeable. -# HYPHEN_INSENSITIVE="true" - -# Uncomment one of the following lines to change the auto-update behavior -# zstyle ':omz:update' mode disabled # disable automatic updates -# zstyle ':omz:update' mode auto # update automatically without asking -zstyle ':omz:update' mode reminder # just remind me to update when it's time - -# Uncomment the following line to change how often to auto-update (in days). -# zstyle ':omz:update' frequency 13 - -# Uncomment the following line if pasting URLs and other text is messed up. -# DISABLE_MAGIC_FUNCTIONS="true" - -# Uncomment the following line to disable colors in ls. -# DISABLE_LS_COLORS="true" - -# Uncomment the following line to disable auto-setting terminal title. -# DISABLE_AUTO_TITLE="true" - -# Uncomment the following line to enable command auto-correction. -# ENABLE_CORRECTION="true" - -# Uncomment the following line to display red dots whilst waiting for completion. -# You can also set it to another string to have that shown instead of the default red dots. -# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f" -# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765) -COMPLETION_WAITING_DOTS="true" - -# Uncomment the following line if you want to disable marking untracked files -# under VCS as dirty. This makes repository status check for large repositories -# much, much faster. -# DISABLE_UNTRACKED_FILES_DIRTY="true" - -# Uncomment the following line if you want to change the command execution time -# stamp shown in the history command output. -# You can set one of the optional three formats: -# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" -# or set a custom format using the strftime function format specifications, -# see 'man strftime' for details. -# HIST_STAMPS="mm/dd/yyyy" - -# Would you like to use another custom folder than $ZSH/custom? -# ZSH_CUSTOM=/path/to/new-custom-folder - -# Which plugins would you like to load? -# Standard plugins can be found in $ZSH/plugins/ -# Custom plugins may be added to $ZSH_CUSTOM/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -# Add wisely, as too many plugins slow down shell startup. -plugins=( - git - zsh-syntax-highlighting - zsh-autosuggestions - fzf-zsh-plugin -) - -source $ZSH/oh-my-zsh.sh - -# User configuration - -# export MANPATH="/usr/local/man:$MANPATH" - -# You may need to manually set your language environment -# export LANG=en_US.UTF-8 - -# Preferred editor for local and remote sessions -if [[ -n $SSH_CONNECTION ]]; then - export EDITOR='vim' -else - export EDITOR='nvim' -fi - -# Compilation flags -# export ARCHFLAGS="-arch $(uname -m)" - -# Set personal aliases, overriding those provided by Oh My Zsh libs, -# plugins, and themes. Aliases can be placed here, though Oh My Zsh -# users are encouraged to define aliases within a top-level file in -# the $ZSH_CUSTOM folder, with .zsh extension. Examples: -# - $ZSH_CUSTOM/aliases.zsh -# - $ZSH_CUSTOM/macos.zsh -# For a full list of active aliases, run `alias`. -# -# Example aliases -# alias zshconfig="mate ~/.zshrc" -# alias ohmyzsh="mate ~/.oh-my-zsh" -# bindkey '^R' history-incremental-search-backward - -# TODO source all files with .zsh suffix -source ~/dotfiles/zsh/aliases.zsh -source ~/dotfiles/zsh/dev_env.zsh -source ~/dotfiles/zsh/tools.zsh - - - - -export NVM_DIR="$HOME/.nvm" -[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm -[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion - -if [[ -n "$MACHINE_TYPE" && -f "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" ]]; then - source "$HOME/dotfiles/zsh/hosts/$MACHINE_TYPE.zsh" -fi - - -alias drun='docker run -it --network=host --device=/dev/kfd --device=/dev/dri --group-add=video --ipc=host --cap-add=SYS_PTRACE --security-opt seccomp=unconfined' - From 465634d8bfdfe8916618278dbbdb409f9ed80408 Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Sat, 6 Sep 2025 16:23:15 +0200 Subject: [PATCH 4/7] move ghostty and hyprland to dotfiles --- group_vars/all.yml | 11 +- roles/ghostty/files/config | 29 + roles/ghostty/tasks/main.yml | 7 + roles/hyprland/files/dunst/dunstrc | 76 + roles/hyprland/files/hypr/hyprland.conf | 455 ++++ roles/hyprland/files/hypr/hyprlock.conf | 37 + roles/hyprland/files/hypr/hyprpaper.conf | 7 + roles/hyprland/files/waybar/config.jsonc | 142 ++ roles/hyprland/files/waybar/nohup.out | 2264 +++++++++++++++++++ roles/hyprland/files/waybar/scripts/page.sh | 76 + roles/hyprland/files/waybar/style.css | 91 + roles/hyprland/files/wofi/config | 11 + roles/hyprland/files/wofi/style.css | 52 + roles/hyprland/tasks/main.yml | 29 + roles/zsh/files/.zshrc | 2 +- roles/zsh/files/aliases.zsh | 3 + 16 files changed, 3290 insertions(+), 2 deletions(-) create mode 100644 roles/ghostty/files/config create mode 100644 roles/ghostty/tasks/main.yml create mode 100644 roles/hyprland/files/dunst/dunstrc create mode 100644 roles/hyprland/files/hypr/hyprland.conf create mode 100644 roles/hyprland/files/hypr/hyprlock.conf create mode 100644 roles/hyprland/files/hypr/hyprpaper.conf create mode 100644 roles/hyprland/files/waybar/config.jsonc create mode 100644 roles/hyprland/files/waybar/nohup.out create mode 100755 roles/hyprland/files/waybar/scripts/page.sh create mode 100644 roles/hyprland/files/waybar/style.css create mode 100644 roles/hyprland/files/wofi/config create mode 100644 roles/hyprland/files/wofi/style.css create mode 100644 roles/hyprland/tasks/main.yml diff --git a/group_vars/all.yml b/group_vars/all.yml index 427cc28..53bcd75 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -11,6 +11,8 @@ default_roles: # === Shell Environment === - zsh # Modern shell with oh-my-zsh # - ssh + - hyprland + - ghostty temp: # === Development Languages === @@ -23,7 +25,6 @@ temp: # === System Monitoring === # === Terminal Emulators === - - ghostty # - kitty # GPU-accelerated terminal # - warp # Modern terminal with AI features @@ -62,6 +63,14 @@ system_packages: - go - discord # Team communication + # Window manager + - hyprland + - waybar + - wofi + - hyprshot + - dunst + - hyprpaper + # TODO aur_packages: diff --git a/roles/ghostty/files/config b/roles/ghostty/files/config new file mode 100644 index 0000000..c26140e --- /dev/null +++ b/roles/ghostty/files/config @@ -0,0 +1,29 @@ +shell-integration = zsh +shell-integration-features = cursor,sudo,title + +font-family = "RobotoMono Nerd Font Mono" + +# Monokai Pro +# Based on Monokai Pro color scheme, made by Monokai. https://monokai.pro/ +window-colorspace = srgb +palette = 0=2d2a2e +palette = 1=ff6188 +palette = 2=a9dc76 +palette = 3=ffd866 +palette = 4=fc9867 +palette = 5=ab9df2 +palette = 6=78dce8 +palette = 7=fcfcfa +palette = 8=727072 +palette = 9=ff6188 +palette = 10=a9dc76 +palette = 11=ffd866 +palette = 12=fc9867 +palette = 13=ab9df2 +palette = 14=78dce8 +palette = 15=fcfcfa +background = 2d2a2e +foreground = fcfcfa +cursor-color = c1c0c0 +selection-background = 5b595c +selection-foreground = fcfcfa diff --git a/roles/ghostty/tasks/main.yml b/roles/ghostty/tasks/main.yml new file mode 100644 index 0000000..1654e7e --- /dev/null +++ b/roles/ghostty/tasks/main.yml @@ -0,0 +1,7 @@ +--- +- name: Symlink ghostty config + file: + src: "{{ role_path }}/files" + dest: "{{ config_dir }}/ghostty" + state: link + force: true diff --git a/roles/hyprland/files/dunst/dunstrc b/roles/hyprland/files/dunst/dunstrc new file mode 100644 index 0000000..fcfb2f4 --- /dev/null +++ b/roles/hyprland/files/dunst/dunstrc @@ -0,0 +1,76 @@ +[global] + monitor = 0 + follow = mouse + width = 300 + height = 300 + origin = top-right + offset = 10x50 + scale = 0 + notification_limit = 0 + + progress_bar = true + progress_bar_height = 10 + progress_bar_frame_width = 1 + progress_bar_min_width = 150 + progress_bar_max_width = 300 + + indicate_hidden = yes + transparency = 0 + separator_height = 2 + padding = 8 + horizontal_padding = 8 + text_icon_padding = 0 + frame_width = 2 + frame_color = "#89b4fa" + separator_color = frame + sort = yes + + font = JetBrains Mono 10 + line_height = 0 + markup = full + format = "%s\n%b" + alignment = left + vertical_alignment = center + show_age_threshold = 60 + ellipsize = middle + ignore_newline = no + stack_duplicates = true + hide_duplicate_count = false + show_indicators = yes + + icon_position = left + min_icon_size = 0 + max_icon_size = 32 + + dmenu = /usr/bin/dmenu -p dunst: + browser = /usr/bin/xdg-open + always_run_script = true + title = Dunst + class = Dunst + corner_radius = 8 + ignore_dbusclose = false + force_xwayland = false + force_xinerama = false + mouse_left_click = close_current + mouse_middle_click = do_action, close_current + mouse_right_click = close_all + +[experimental] + per_monitor_dpi = false + +[urgency_low] + background = "#1e1e2e" + foreground = "#cdd6f4" + timeout = 10 + +[urgency_normal] + background = "#1e1e2e" + foreground = "#cdd6f4" + timeout = 10 + +[urgency_critical] + background = "#1e1e2e" + foreground = "#f38ba8" + frame_color = "#f38ba8" + timeout = 0 + diff --git a/roles/hyprland/files/hypr/hyprland.conf b/roles/hyprland/files/hypr/hyprland.conf new file mode 100644 index 0000000..59309f0 --- /dev/null +++ b/roles/hyprland/files/hypr/hyprland.conf @@ -0,0 +1,455 @@ +################ +### MONITORS ### +################ + +# See https://wiki.hypr.land/Configuring/Monitors/ +monitor=,preferred,auto,auto +monitor = DP-2, 2560x1440@165, 0x0, 1 +monitor = DP-1, 2560x1440@165, 2560x0, 1 +monitor = HDMI-A-2, 1920x1080@60, 5120x-360, 1, transform, 3 + +workspace = 1, monitor:DP-1, persistent:true, default:true +workspace = 4, monitor:DP-1, persistent:true +workspace = 7, monitor:DP-1, persistent:true +workspace = 10, monitor:DP-1, persistent:true +workspace = 13, monitor:DP-1, persistent:true +workspace = 16, monitor:DP-1, persistent:true +workspace = 19, monitor:DP-1, persistent:true +workspace = 22, monitor:DP-1, persistent:true +workspace = 25, monitor:DP-1, persistent:true +workspace = 28, monitor:DP-1, persistent:true + +workspace = 2, monitor:HDMI-A-2, persistent:true, default:true +workspace = 5, monitor:HDMI-A-2, persistent:true +workspace = 8, monitor:HDMI-A-2, persistent:true +workspace = 11, monitor:HDMI-A-2, persistent:true +workspace = 14, monitor:HDMI-A-2, persistent:true +workspace = 17, monitor:HDMI-A-2, persistent:true +workspace = 20, monitor:HDMI-A-2, persistent:true +workspace = 23, monitor:HDMI-A-2, persistent:true +workspace = 26, monitor:HDMI-A-2, persistent:true +workspace = 29, monitor:HDMI-A-2, persistent:true + +workspace = 3, monitor:DP-2, persistent:true, default:true +workspace = 6, monitor:DP-2, persistent:true +workspace = 9, monitor:DP-2, persistent:true +workspace = 12, monitor:DP-2, persistent:true +workspace = 15, monitor:DP-2, persistent:true +workspace = 18, monitor:DP-2, persistent:true +workspace = 21, monitor:DP-2, persistent:true +workspace = 24, monitor:DP-2, persistent:true +workspace = 27, monitor:DP-2, persistent:true +workspace = 30, monitor:DP-2, persistent:true + + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hypr.land/Configuring/Keywords/ + +# Set programs that you use +$terminal = ghostty +$fileManager = dolphin +$menu = wofi --show drun + +################# +### AUTOSTART ### +################# + +# Autostart necessary processes (like notifications daemons, status bars, etc.) +# Or execute your favorite apps at launch like this: +exec-once = waybar +exec-once = dunst +exec-once = firefox +exec-once = hyprpaper +exec-once = spotify + +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hypr.land/Configuring/Environment-variables/ +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_SIZE,24 +env = QT_QPA_PLATFORM,waylandl;xcb +env = QT_QPA_PLATFORMTHEME,qt5ct + +env = XDG_CURRENT_DESKTOP,Hyprland +env = XDG_SESSION_TYPE,wayland +env = WLR_NO_HARDWARE_CURSORS,1 +env = CLUTTER_BACKEND,wayland +env = SDL_VIDEODRIVER,wayland,x11 +env = GDK_BACKEND,wayland,x11 + +################### +### PERMISSIONS ### +################### + +# See https://wiki.hypr.land/Configuring/Permissions/ +# Please note permission changes here require a Hyprland restart and are not applied on-the-fly +# for security reasons + +# ecosystem { +# enforce_permissions = 1 +# } + +# permission = /usr/(bin|local/bin)/grim, screencopy, allow +# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow +# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow + + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hypr.land/Configuring/Variables/ + +# https://wiki.hypr.land/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 20 + + border_size = 2 + + # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors + col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.inactive_border = rgba(595959aa) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hypr.land/Configuring/Variables/#decoration +decoration { + rounding = 10 + rounding_power = 2 + + # Change transparency of focused and unfocused windows + active_opacity = 1.0 + inactive_opacity = 1.0 + + shadow { + enabled = true + range = 4 + render_power = 3 + color = rgba(1a1a1aee) + } + + # https://wiki.hypr.land/Configuring/Variables/#blur + blur { + enabled = true + size = 3 + passes = 1 + + vibrancy = 0.1696 + } +} + +# https://wiki.hypr.land/Configuring/Variables/#animations +animations { + enabled = yes, please :) + + # Default animations, see https://wiki.hypr.land/Configuring/Animations/ for more + + bezier = easeOutQuint,0.23,1,0.32,1 + bezier = easeInOutCubic,0.65,0.05,0.36,1 + bezier = linear,0,0,1,1 + bezier = almostLinear,0.5,0.5,0.75,1.0 + bezier = quick,0.15,0,0.1,1 + + animation = global, 1, 10, default + animation = border, 1, 5.39, easeOutQuint + animation = windows, 1, 4.79, easeOutQuint + animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% + animation = windowsOut, 1, 1.49, linear, popin 87% + animation = fadeIn, 1, 1.73, almostLinear + animation = fadeOut, 1, 1.46, almostLinear + animation = fade, 1, 3.03, quick + animation = layers, 1, 3.81, easeOutQuint + animation = layersIn, 1, 4, easeOutQuint, fade + animation = layersOut, 1, 1.5, linear, fade + animation = fadeLayersIn, 1, 1.79, almostLinear + animation = fadeLayersOut, 1, 1.39, almostLinear + animation = workspaces, 1, 1.94, almostLinear, fade + animation = workspacesIn, 1, 1.21, almostLinear, fade + animation = workspacesOut, 1, 1.94, almostLinear, fade +} + +# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/ +# "Smart gaps" / "No gaps when only" +# uncomment all if you wish to use that. +# workspace = w[tv1], gapsout:0, gapsin:0 +# workspace = f[1], gapsout:0, gapsin:0 +# windowrule = bordersize 0, floating:0, onworkspace:w[tv1] +# windowrule = rounding 0, floating:0, onworkspace:w[tv1] +# windowrule = bordersize 0, floating:0, onworkspace:f[1] +# windowrule = rounding 0, floating:0, onworkspace:f[1] + +# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more +dwindle { + pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # You probably want this +} + +# See https://wiki.hypr.land/Configuring/Master-Layout/ for more +master { + new_status = master +} + +# https://wiki.hypr.land/Configuring/Variables/#misc +misc { + force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers + disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :( + middle_click_paste = false +} + + +############# +### INPUT ### +############# + +# https://wiki.hypr.land/Configuring/Variables/#input +input { + kb_layout = us + kb_variant = altgr-intl + kb_model = + kb_options = + kb_rules = + + follow_mouse = 2 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + scroll_method = on_button_down + scroll_button = 274 +} + +# Example per-device config +# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more +device { + name = benq-zowie-benq-zowie-gaming-mouse + sensitivity = 0 +} + + +################### +### KEYBINDINGS ### +################### + +# See https://wiki.hypr.land/Configuring/Keywords/ +$mainMod = SUPER # Sets "Super" key as main modifier +bind = $mainMod, T, exec, $terminal +bind = $mainMod, Q, killactive, +bind = $mainMod, N, exec, $fileManager +bind = $mainMod, V, togglefloating, +bind = $mainMod, D, exec, $menu +bind = $mainMod, G, togglesplit, # dwindle +bind = $mainMod, F, fullscreen +bind = $mainMod, B, exec, firefox +bind = $mainMod, M, exec, thunderbird +bind = $mainMod, L, exec, hyprlock + +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Switch workspaces with mainMod + [0-9] +# -------- PAGE 1 → 1-2-3 +bind = SUPER, 1, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 1; \ + dispatch focusmonitor DP-2; dispatch workspace 2; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 2, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 4; \ + dispatch focusmonitor DP-2; dispatch workspace 5; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 3, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 7; \ + dispatch focusmonitor DP-2; dispatch workspace 8; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 4, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 10; \ + dispatch focusmonitor DP-2; dispatch workspace 11; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 5, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 13; \ + dispatch focusmonitor DP-2; dispatch workspace 14; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 6, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 16; \ + dispatch focusmonitor DP-2; dispatch workspace 17; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 7, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 19; \ + dispatch focusmonitor DP-2; dispatch workspace 20; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 8, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 22; \ + dispatch focusmonitor DP-2; dispatch workspace 23; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 9, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 25; \ + dispatch focusmonitor DP-2; dispatch workspace 26; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ + dispatch focusmonitor DP-1" + +bind = SUPER, 0, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 28; \ + dispatch focusmonitor DP-2; dispatch workspace 29; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ + dispatch focusmonitor DP-1" + + + + +bind = SUPER SHIFT, 1, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 1; \ + dispatch focusmonitor DP-2; dispatch workspace 2; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 2, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 4; \ + dispatch focusmonitor DP-2; dispatch workspace 5; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 3, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 7; \ + dispatch focusmonitor DP-2; dispatch workspace 8; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 4, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 10; \ + dispatch focusmonitor DP-2; dispatch workspace 11; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 5, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 13; \ + dispatch focusmonitor DP-2; dispatch workspace 14; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 6, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 16; \ + dispatch focusmonitor DP-2; dispatch workspace 17; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 7, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 19; \ + dispatch focusmonitor DP-2; dispatch workspace 20; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 8, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 22; \ + dispatch focusmonitor DP-2; dispatch workspace 23; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 9, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 25; \ + dispatch focusmonitor DP-2; dispatch workspace 26; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ + dispatch focusmonitor DP-1" + +bind = SUPER SHIFT, 0, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 28; \ + dispatch focusmonitor DP-2; dispatch workspace 29; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ + dispatch focusmonitor DP-1" + +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 4 +bind = $mainMod SHIFT, 3, movetoworkspace, 7 +bind = $mainMod SHIFT, 4, movetoworkspace, 10 +bind = $mainMod SHIFT, 5, movetoworkspace, 13 +bind = $mainMod SHIFT, 6, movetoworkspace, 16 +bind = $mainMod SHIFT, 7, movetoworkspace, 19 +bind = $mainMod SHIFT, 8, movetoworkspace, 22 +bind = $mainMod SHIFT, 9, movetoworkspace, 25 +bind = $mainMod SHIFT, 0, movetoworkspace, 28 + +bind = $mainMod SHIFT, left, movewindow, l +bind = $mainMod SHIFT, right, movewindow, r +bind = $mainMod SHIFT, up, movewindow, u +bind = $mainMod SHIFT, down, movewindow, d + +# Example special workspace (scratchpad) +bind = $mainMod, S, togglespecialworkspace, magic +bind = $mainMod SHIFT, S, movetoworkspace, special:magic + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +# Laptop multimedia keys for volume and LCD brightness +bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ +bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+ +bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%- + +# Requires playerctl +# Spotify controls +bind = CTRL ALT, K, exec, playerctl --player=spotify play-pause +bind = CTRL ALT, Left, exec, playerctl --player=spotify previous +bind = CTRL ALT, Right, exec, playerctl --player=spotify next +bind = CTRL ALT, Up, exec, playerctl --player=spotify volume 0.05+ +bind = CTRL ALT, Down, exec, playerctl --player=spotify volume 0.05- + +bind = ,F7,pass,class:^(discord)$ + +# Printscreen +# Screenshot a selected region (interactive) +# bind = , Print, exec, hyprshot -m region +bind = , Print, exec, hyprshot -zm region + +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hypr.land/Configuring/Window-Rules/ for more +# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules + +# Example windowrule +# windowrule = float,class:^(kitty)$,title:^(kitty)$ + +# Ignore maximize requests from apps. You'll probably like this. +windowrule = suppressevent maximize, class:.* + +# Fix some dragging issues with XWayland +windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 + diff --git a/roles/hyprland/files/hypr/hyprlock.conf b/roles/hyprland/files/hypr/hyprlock.conf new file mode 100644 index 0000000..067b450 --- /dev/null +++ b/roles/hyprland/files/hypr/hyprlock.conf @@ -0,0 +1,37 @@ +general { + disable_loading_bar = true + grace = 2 + hide_cursor = true + no_fade_in = false +} + +background { + monitor = + path = screenshot + blur_passes = 3 + blur_size = 8 +} + +input-field { + monitor = + size = 200, 50 + position = 0, -80 + dots_center = true + fade_on_empty = false + font_color = rgb(202, 211, 245) + inner_color = rgb(91, 96, 120) + outer_color = rgb(24, 25, 38) + outline_thickness = 5 + placeholder_text = Password... + shadow_passes = 2 +} + +label { + monitor = + text = Hi there, $USER + font_size = 20 + font_family = RobotoMono Nerd Font Mono + position = 0, 160 + halign = center + valign = center +} diff --git a/roles/hyprland/files/hypr/hyprpaper.conf b/roles/hyprland/files/hypr/hyprpaper.conf new file mode 100644 index 0000000..0e236c6 --- /dev/null +++ b/roles/hyprland/files/hypr/hyprpaper.conf @@ -0,0 +1,7 @@ +preload = /home/johannes/Pictures/Wallpapers/wallhaven-5g22q5.png + +wallpaper = DP-1,/home/johannes/Pictures/Wallpapers/wallhaven-5g22q5.png +wallpaper = DP-2,/home/johannes/Pictures/Wallpapers/wallhaven-5g22q5.png +wallpaper = HDMI-A-2,/home/johannes/Pictures/Wallpapers/wallhaven-5g22q5.png + +splash = false diff --git a/roles/hyprland/files/waybar/config.jsonc b/roles/hyprland/files/waybar/config.jsonc new file mode 100644 index 0000000..93afbc5 --- /dev/null +++ b/roles/hyprland/files/waybar/config.jsonc @@ -0,0 +1,142 @@ +{ + "layer": "top", + "position": "top", + + /* order: 1-2-3 | window-title | tray + clock */ + "modules-left": [ "custom/page1", "custom/page2", "custom/page3", "custom/page4","custom/page5","custom/page6","custom/page7","custom/page8","custom/page9","custom/page10"], + "modules-center": [ "hyprland/window" ], + "modules-right": [ "tray", "custom/separator", "network", "bluetooth", "custom/separator", "disk", "cpu", "memory", "pulseaudio", "custom/separator", "clock"], + + + /* three persistent “page” buttons */ + "custom/page1": { + "exec": "~/.config/waybar/scripts/page.sh 1", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page2": { + "exec": "~/.config/waybar/scripts/page.sh 2", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page3": { + "exec": "~/.config/waybar/scripts/page.sh 3", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page4": { + "exec": "~/.config/waybar/scripts/page.sh 4", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page5": { + "exec": "~/.config/waybar/scripts/page.sh 5", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page6": { + "exec": "~/.config/waybar/scripts/page.sh 6", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page7": { + "exec": "~/.config/waybar/scripts/page.sh 7", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page8": { + "exec": "~/.config/waybar/scripts/page.sh 8", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page9": { + "exec": "~/.config/waybar/scripts/page.sh 9", + "exec-persistent": true, + "return-type": "json" + }, + "custom/page10": { + "exec": "~/.config/waybar/scripts/page.sh 10", + "exec-persistent": true, + "return-type": "json" + }, + + "hyprland/window": { "format": "{title}", "max-length": 60 }, + // "tray": { "icon-size": 16, "spacing": 6 }, + "tray": { "icon-size": 16, "spacing": 10 }, + + "pulseaudio": { + // ——— behaviour ——— + "scroll-step": 5, // ± 5 % per wheel-step + "max-volume": 150, // allow 0 – 150 % + "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle", + "on-click-right": "pavucontrol", + + // ——— appearance ——— + "markup": "pango", // enable coloured markup + "format": "{icon} {volume}%", + "format-muted": " muted", + + // choose the glyphs you like (Nerd Font / Font Awesome) + "format-icons": { + "default": "", // speaker + "muted": "", // muted speaker + "headphones": "" + } + }, + + "custom/separator": { + // emit a JSON object with field "text" + "exec": "echo '{\"text\":\"|\"}'", + // treat stdout as JSON + "return-type": "json", + // wrap the text in a colored Pango span + "format": "{text}", + "markup": "pango", + // refresh only hourly + "interval": 3600 + }, + + "cpu": { + "interval": 1, // update every second + "markup": "pango", + "format": " {usage}%" + }, + + "memory": { + "interval": 2, // fast enough, still light + "markup": "pango", + "format": " {percentage}%" + }, + + "disk": { + "interval": 30, // disks change slowly + "path": "/", + "markup": "pango", + "format": "󰋊 {percentage_used}%" + }, + + /* ─── CLOCK (add date) ──────────────────────────────────── */ + + "clock": { + "interval": 1, + "format": "{:%Y-%m-%d %H:%M:%S}", + "format-alt": "{:%Y-%m-%d %H:%M}" + }, + +/* ─── NETWORK ─────────────────────────────────────────────── */ +"network": { + "interface": ["enp.*", "eth.*"], // wired NICs (regex—adjust if needed) + "interval": 3, + "markup": "pango", + + "format-ethernet": "󰈀 up", + "format-wifi": " {essid}", + // "format-linked": " link", + "format-unknown": "󰈂 up", + "format-disconnected":" down", + + "on-click": "nm-connection-editor" +}, + +} + diff --git a/roles/hyprland/files/waybar/nohup.out b/roles/hyprland/files/waybar/nohup.out new file mode 100644 index 0000000..ca2f56d --- /dev/null +++ b/roles/hyprland/files/waybar/nohup.out @@ -0,0 +1,2264 @@ +[2025-09-06 00:39:59.737] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc +[2025-09-06 00:39:59.737] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop +[2025-09-06 00:39:59.737] [info] Using CSS file /home/johannes/.config/waybar/style.css + +(waybar:99210): Gtk-WARNING **: 00:39:59.737: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. +[2025-09-06 00:39:59.747] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:39:59.747] [info] Hyprland IPC starting +[2025-09-06 00:39:59.766] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:39:59.801] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:39:59.840] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:40:00.277] [info] Bar configured (width: 2560, height: 28) for output: DP-1 +[2025-09-06 00:40:00.277] [info] Bar configured (width: 2560, height: 28) for output: DP-2 +[2025-09-06 00:40:00.277] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 +[2025-09-06 00:40:00.277] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 +[2025-09-06 00:40:00.962] [info] Quitting. +2025/09/06 00:40:00 socat[100109] W exiting on signal 15 +2025/09/06 00:40:00 socat[100232] W exiting on signal 15 +2025/09/06 00:40:00 socat[100069] W exiting on signal 15 +2025/09/06 00:40:00 socat[100197] W exiting on signal 15 +2025/09/06 00:40:00 socat[100168] W exiting on signal 15 +2025/09/06 00:40:00 socat[100199] W exiting on signal 15 +2025/09/06 00:40:00 socat[100221] W exiting on signal 15 +2025/09/06 00:40:00 socat[100213] W exiting on signal 15 +2025/09/06 00:40:00 socat[100226] W exiting on signal 15 +2025/09/06 00:40:00 socat[100224] W exiting on signal 15 +2025/09/06 00:40:00 socat[99601] W exiting on signal 15 +2025/09/06 00:40:00 socat[100175] W exiting on signal 15 +2025/09/06 00:40:00 socat[99997] W exiting on signal 15 +2025/09/06 00:40:00 socat[100165] W exiting on signal 15 +2025/09/06 00:40:00 socat[99987] W exiting on signal 15 +2025/09/06 00:40:00 socat[100135] W exiting on signal 15 +2025/09/06 00:40:00 socat[100075] W exiting on signal 15 +2025/09/06 00:40:00 socat[100101] W exiting on signal 15 +2025/09/06 00:40:00 socat[100096] W exiting on signal 15 +2025/09/06 00:40:00 socat[100018] W exiting on signal 15 +2025/09/06 00:40:00 socat[99570] W exiting on signal 15 +2025/09/06 00:40:00 socat[99927] W exiting on signal 15 +2025/09/06 00:40:00 socat[100066] W exiting on signal 15 +2025/09/06 00:40:00 socat[99790] W exiting on signal 15 +2025/09/06 00:40:00 socat[99918] W exiting on signal 15 +2025/09/06 00:40:00 socat[99793] W exiting on signal 15 +2025/09/06 00:40:00 socat[99715] W exiting on signal 15 +2025/09/06 00:40:00 socat[99693] W exiting on signal 15 +2025/09/06 00:40:00 socat[99901] W exiting on signal 15 +2025/09/06 00:40:00 socat[99961] W exiting on signal 15 +2025/09/06 00:40:00 socat[99327] W exiting on signal 15 +2025/09/06 00:40:00 socat[99497] W exiting on signal 15 +2025/09/06 00:40:00 socat[99569] W exiting on signal 15 +2025/09/06 00:40:00 socat[99529] W exiting on signal 15 +2025/09/06 00:40:00 socat[99560] W exiting on signal 15 +2025/09/06 00:40:00 socat[99574] W exiting on signal 15 +2025/09/06 00:40:00 socat[99592] W exiting on signal 15 +2025/09/06 00:40:00 socat[99782] W exiting on signal 15 +2025/09/06 00:40:00 socat[99607] W exiting on signal 15 +2025/09/06 00:40:00 socat[99964] W exiting on signal 15 +[2025-09-06 00:40:00.973] [info] Hyprland IPC stopping... +[2025-09-06 00:40:04.293] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc +[2025-09-06 00:40:04.294] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop +[2025-09-06 00:40:04.294] [info] Using CSS file /home/johannes/.config/waybar/style.css + +(waybar:100375): Gtk-WARNING **: 00:40:04.294: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. +[2025-09-06 00:40:04.304] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:40:04.304] [info] Hyprland IPC starting +[2025-09-06 00:40:04.331] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:40:04.357] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:40:04.405] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:40:04.839] [info] Bar configured (width: 2560, height: 28) for output: DP-1 +[2025-09-06 00:40:04.839] [info] Bar configured (width: 2560, height: 28) for output: DP-2 +[2025-09-06 00:40:04.839] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 +[2025-09-06 00:40:04.839] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 +[2025-09-06 00:44:13.690] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc +[2025-09-06 00:44:13.691] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop +[2025-09-06 00:44:13.691] [info] Using CSS file /home/johannes/.config/waybar/style.css + +(waybar:106676): Gtk-WARNING **: 00:44:13.691: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. +[2025-09-06 00:44:13.699] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:44:13.699] [info] Hyprland IPC starting +[2025-09-06 00:44:13.728] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:44:13.755] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:44:13.817] [warning] 'swap-icon-label' must be a bool. +[2025-09-06 00:44:14.243] [info] Bar configured (width: 2560, height: 28) for output: DP-1 +[2025-09-06 00:44:14.243] [info] Bar configured (width: 2560, height: 28) for output: DP-2 +[2025-09-06 00:44:14.243] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 +[2025-09-06 00:44:14.243] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered + +** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered + +** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered + +** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered + +** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered + +** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered + +** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered + +** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered + +** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered + +** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered + +** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered + +** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered + +** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered + +** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered + +** (waybar:106676): WARNING **: 02:16:11.322: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered + +** (waybar:106676): WARNING **: 02:16:11.323: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered + +** (waybar:106676): WARNING **: 02:16:11.323: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered + +** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered + +** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered + +** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered + +** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered + +** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered + +** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered + +** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered + +** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered + +** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered + +** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered + +** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +sh: line 1: blueman-manager: command not found +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:40:22.218: Status Notifier Item with bus name ':1.310' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:42:22.640: Status Notifier Item with bus name ':1.341' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:44:43.707: Status Notifier Item with bus name ':1.410' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:46:10.727: Status Notifier Item with bus name ':1.462' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:47:32.592: Status Notifier Item with bus name ':1.500' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:51:06.283: Status Notifier Item with bus name ':1.518' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 02:55:38.797: Status Notifier Item with bus name ':1.560' and object path '/org/ayatana/NotificationItem/steam' is already registered + +** (waybar:106676): WARNING **: 02:58:49.347: Status Notifier Item with bus name ':1.660' and object path '/org/ayatana/NotificationItem/steam' is already registered + +** (waybar:106676): WARNING **: 03:00:52.893: Status Notifier Item with bus name ':1.725' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 03:04:36.363: Status Notifier Item with bus name ':1.741' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe + +** (waybar:106676): WARNING **: 03:09:49.490: Status Notifier Item with bus name ':1.741' and object path '/org/ayatana/NotificationItem/steam' is already registered +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe +2025/09/06 03:10:26 socat[100513] W exiting on signal 15 +2025/09/06 03:10:26 socat[100565] W exiting on signal 15 +2025/09/06 03:10:26 socat[107196] W exiting on signal 15 +2025/09/06 03:10:26 socat[107230] W exiting on signal 15 +2025/09/06 03:10:26 socat[107234] W exiting on signal 15 +2025/09/06 03:10:26 socat[107368] W exiting on signal 15 +2025/09/06 03:10:26 socat[107472] W exiting on signal 15 +2025/09/06 03:10:26 socat[100595] W exiting on signal 15 +2025/09/06 03:10:26 socat[107540] W exiting on signal 15 +2025/09/06 03:10:26 socat[107055] W exiting on signal 15 +2025/09/06 03:10:26 socat[107602] W exiting on signal 15 +2025/09/06 03:10:26 socat[107687] W exiting on signal 15 +2025/09/06 03:10:26 socat[107567] W exiting on signal 15 +2025/09/06 03:10:26 socat[107757] W exiting on signal 15 +2025/09/06 03:10:26 socat[107586] W exiting on signal 15 +2025/09/06 03:10:26 socat[107692] W exiting on signal 15 +2025/09/06 03:10:26 socat[107712] W exiting on signal 15 +2025/09/06 03:10:26 socat[107728] W exiting on signal 15 +2025/09/06 03:10:26 socat[107733] W exiting on signal 15 +2025/09/06 03:10:26 socat[107736] W exiting on signal 15 +2025/09/06 03:10:26 socat[106907] W exiting on signal 15 +2025/09/06 03:10:26 socat[107008] W exiting on signal 15 +2025/09/06 03:10:26 socat[107016] W exiting on signal 15 +2025/09/06 03:10:26 socat[106929] W exiting on signal 15 +2025/09/06 03:10:26 socat[107284] W exiting on signal 15 +2025/09/06 03:10:26 socat[107600] W exiting on signal 15 +2025/09/06 03:10:26 socat[107689] W exiting on signal 15 +2025/09/06 03:10:26 socat[107198] W exiting on signal 15 +2025/09/06 03:10:26 socat[107508] W exiting on signal 15 +2025/09/06 03:10:26 socat[107327] W exiting on signal 15 +2025/09/06 03:10:26 socat[107200] W exiting on signal 15 +2025/09/06 03:10:26 socat[107036] W exiting on signal 15 +2025/09/06 03:10:26 socat[107441] W exiting on signal 15 +2025/09/06 03:10:26 socat[107406] W exiting on signal 15 +2025/09/06 03:10:26 socat[107582] W exiting on signal 15 +2025/09/06 03:10:26 socat[107590] W exiting on signal 15 +2025/09/06 03:10:26 socat[107765] W exiting on signal 15 +2025/09/06 03:10:26 socat[107759] W exiting on signal 15 +2025/09/06 03:10:26 socat[107768] W exiting on signal 15 +2025/09/06 03:10:26 socat[100599] W exiting on signal 15 +2025/09/06 03:10:26 socat[100644] W exiting on signal 15 +2025/09/06 03:10:26 socat[100698] W exiting on signal 15 +2025/09/06 03:10:26 socat[100722] W exiting on signal 15 +2025/09/06 03:10:26 socat[107002] W exiting on signal 15 +2025/09/06 03:10:26 socat[100689] W exiting on signal 15 +2025/09/06 03:10:26 socat[100717] W exiting on signal 15 +2025/09/06 03:10:26 socat[100730] W exiting on signal 15 +2025/09/06 03:10:26 socat[100760] W exiting on signal 15 +2025/09/06 03:10:26 socat[100885] W exiting on signal 15 +2025/09/06 03:10:26 socat[100959] W exiting on signal 15 +2025/09/06 03:10:26 socat[101004] W exiting on signal 15 +2025/09/06 03:10:26 socat[101020] W exiting on signal 15 +2025/09/06 03:10:26 socat[101036] W exiting on signal 15 +2025/09/06 03:10:26 socat[101068] W exiting on signal 15 +2025/09/06 03:10:26 socat[101095] W exiting on signal 15 +2025/09/06 03:10:26 socat[101110] W exiting on signal 15 +2025/09/06 03:10:26 socat[101169] W exiting on signal 15 +2025/09/06 03:10:26 socat[101171] W exiting on signal 15 +2025/09/06 03:10:26 socat[101186] W exiting on signal 15 +2025/09/06 03:10:26 socat[101204] W exiting on signal 15 +2025/09/06 03:10:26 socat[101243] W exiting on signal 15 +2025/09/06 03:10:26 socat[101246] W exiting on signal 15 +2025/09/06 03:10:26 socat[101291] W exiting on signal 15 +2025/09/06 03:10:26 socat[101294] W exiting on signal 15 +2025/09/06 03:10:26 socat[101300] W exiting on signal 15 +2025/09/06 03:10:26 socat[101388] W exiting on signal 15 +2025/09/06 03:10:26 socat[101355] W exiting on signal 15 +2025/09/06 03:10:26 socat[101393] W exiting on signal 15 +2025/09/06 03:10:26 socat[101413] W exiting on signal 15 diff --git a/roles/hyprland/files/waybar/scripts/page.sh b/roles/hyprland/files/waybar/scripts/page.sh new file mode 100755 index 0000000..c40995a --- /dev/null +++ b/roles/hyprland/files/waybar/scripts/page.sh @@ -0,0 +1,76 @@ +#!/usr/bin/env bash +# page.sh 1‒10 – Waybar “page” indicator +# deps: socat, awk • (still no jq) + +page=$1 # this script instance’s page (1‒10) + +# ── icon lookup table ──────────────────────────────────────────── +icons=( "" "" "" "" "" "" "" "" "" "" "󰝚" ) + +# map numeric workspace → page (1‒10) +to_page() { + (( $1 <= 3 )) && echo 1 && return + (( $1 <= 6 )) && echo 2 && return + (( $1 <= 9 )) && echo 3 && return + (( $1 <= 12 )) && echo 4 && return + (( $1 <= 15 )) && echo 5 && return + (( $1 <= 18 )) && echo 6 && return + (( $1 <= 21 )) && echo 7 && return + (( $1 <= 24 )) && echo 8 && return + (( $1 <= 27 )) && echo 9 && return + echo 10 +} + +# does THIS page contain at least one window? +is_occupied() { + while read -r ws_id; do + (( $(to_page "$ws_id") == page )) && return 0 + done < <(hyprctl clients | awk '/workspace:/ {print $2}') + return 1 +} + +emit() { + local classes=() + + if (( $1 == page )); then # ← is THIS instance the active page? + classes+=(active) # yes → mark it only “active” + else + is_occupied && classes+=(occupied) # no → maybe “occupied” + fi + + if ((${#classes[@]})); then + printf '{"text":"%s","class":"%s"}\n' \ + "${icons[page]}" "$(IFS=' '; echo "${classes[*]}")" + else + printf '{"text":"%s"}\n' "${icons[page]}" + fi +} + +# ── initial state ──────────────────────────────────────────────── +active_ws=$(hyprctl activeworkspace | awk '/^ID /{print $2}') +current_page=$(to_page "${active_ws:-1}") +emit "$current_page" +current_occ=$(is_occupied && echo 1 || echo 0) + +# ── live updates via Hyprland socket2 ─────────────────────────── +socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" +socat -U - UNIX-CONNECT:"$socket" | while read -r line; do + [[ $line =~ ^(workspace|openwindow|closewindow) ]] || continue + + # recompute state if anything relevant changed + if [[ $line == workspace* ]]; then + ws=${line#*>>}; ws=${ws%% *} + new_page=$(to_page "$ws") + else + new_page=$current_page + fi + new_occ=$(is_occupied && echo 1 || echo 0) + + # update Waybar only when something actually changed + if (( new_page != current_page || new_occ != current_occ )); then + emit "$new_page" + current_page=$new_page + current_occ=$new_occ + fi +done + diff --git a/roles/hyprland/files/waybar/style.css b/roles/hyprland/files/waybar/style.css new file mode 100644 index 0000000..3456d98 --- /dev/null +++ b/roles/hyprland/files/waybar/style.css @@ -0,0 +1,91 @@ +/* --- GENERAL BAR STYLE (unchanged) --- */ +* { + border: none; + /* padding: 0 6px; */ + padding: 0 6px; + margin-top: 2px; + font-family: "JetBrains Mono", monospace; + font-size: 14px; +} +window#waybar { background: transparent; color: #ffffff; } + +/* --- PAGE BUTTONS --- */ +/* IDs are #custom-page1, #custom-page2, #custom-page3 */ +#custom-page1, #custom-page2, #custom-page3, #custom-page4, #custom-page5, #custom-page6, #custom-page7, #custom-page8, #custom-page9, #custom-page10 { + background: transparent; + min-width: 18px; /* keeps them evenly spaced */ + padding-left: 2px; + color: #fff; + /* text-align: center; */ +} +#custom-page1.active, +#custom-page2.active, +#custom-page3.active, +#custom-page4.active, +#custom-page5.active, +#custom-page6.active, +#custom-page7.active, +#custom-page8.active, +#custom-page9.active, +#custom-page10.active +{ + background: rgba(255,255,255,0.15); + border-radius: 8px; + color: #fff; +} + +#custom-page1.occupied:not(.active), +#custom-page2.occupied:not(.active), +#custom-page3.occupied:not(.active), +#custom-page4.occupied:not(.active), +#custom-page5.occupied:not(.active), +#custom-page6.occupied:not(.active), +#custom-page7.occupied:not(.active), +#custom-page8.occupied:not(.active), +#custom-page9.occupied:not(.active), +#custom-page10.occupied:not(.active) { + color: #42A5F5; /* blue – pick any shade you like */ +} + +#custom-page1.active.occupied, +#custom-page2.active.occupied, +#custom-page3.active.occupied, +#custom-page4.active.occupied, +#custom-page5.active.occupied, +#custom-page6.active.occupied, +#custom-page7.active.occupied, +#custom-page8.active.occupied, +#custom-page9.active.occupied, +#custom-page10.active.occupied { + background: rgba(255,255,255,0.15); /* same as .active */ + /* optional: keep the icon white, or turn it blue: */ + /* color: #42A5F5; */ +} + +/* --- OTHER MODULES (carry-over from your previous setup) --- */ +#window, #tray, #clock { background: transparent;} + +#tray { + margin-right: -5; +} + +#tray * { + padding-left: 0px; + padding-right: 0px; +} + +/* ─── kill the gap your * rule adds ─────────────────────────────── */ +#tray menu { /* the whole right-click window */ + padding: 5px 0; /* 0 instead of the 6 px from * */ + margin: 0; /* 0 instead of the 2 px top margin */ + border: 1px solid #555; +} + +/* ─── (optional) give the rows some room & hover style ─────────── */ +#tray menu menuitem { + padding: 4px 12px; /* tweak to taste */ +} + +#tray menu menuitem:hover { + background: rgba(66,165,245,.25); +} diff --git a/roles/hyprland/files/wofi/config b/roles/hyprland/files/wofi/config new file mode 100644 index 0000000..2a8809e --- /dev/null +++ b/roles/hyprland/files/wofi/config @@ -0,0 +1,11 @@ +[config] +allow_images=true +width=500 +prompt=Search +height=400 +term=ghostty +hide_scroll=true +print_command=true +insensitive=true +columns=1 +no_actions=true diff --git a/roles/hyprland/files/wofi/style.css b/roles/hyprland/files/wofi/style.css new file mode 100644 index 0000000..b56c868 --- /dev/null +++ b/roles/hyprland/files/wofi/style.css @@ -0,0 +1,52 @@ +window { + margin: 0px; + border: 1px solid #61AFEF; /* One Dark blue */ + background-color: #282C34; /* One Dark background */ +} + +#input { + margin: 5px; + border: none; + color: #ABB2BF; /* One Dark fg */ + background-color: #3E4451; /* One Dark gutter/bg */ +} + +#inner-box { + margin: 5px; + border: none; + background-color: #282C34; /* match window bg */ +} + +#outer-box { + margin: 5px; + border: none; + background-color: #282C34; /* match window bg */ +} + +#scroll { + margin: 0px; + border: none; +} + +#text { + margin: 5px; + margin-left: 10px; + border: none; + color: #ABB2BF; /* One Dark fg */ +} + +#entry.activatable #text { + color: #282C34; /* invert to bg for activation */ +} + +#entry > * { + color: #ABB2BF; /* One Dark fg */ +} + +#entry:selected { + background-color: #3E4451; /* selected background */ +} + +#entry:selected #text { + font-weight: bold; +} diff --git a/roles/hyprland/tasks/main.yml b/roles/hyprland/tasks/main.yml new file mode 100644 index 0000000..6d5d578 --- /dev/null +++ b/roles/hyprland/tasks/main.yml @@ -0,0 +1,29 @@ +--- +- name: Symlink hyprland + file: + src: "{{ role_path }}/files/hypr" + dest: "{{ config_dir }}/hypr" + state: link + force: true + +- name: Symlink dunst + file: + src: "{{ role_path }}/files/dunst" + dest: "{{ config_dir }}/dunst" + state: link + force: true + +- name: Symlink wofi + file: + src: "{{ role_path }}/files/wofi" + dest: "{{ config_dir }}/wofi" + state: link + force: true + +- name: Symlink waybar + file: + src: "{{ role_path }}/files/waybar" + dest: "{{ config_dir }}/waybar" + state: link + force: true + diff --git a/roles/zsh/files/.zshrc b/roles/zsh/files/.zshrc index b1cc416..fee80be 100644 --- a/roles/zsh/files/.zshrc +++ b/roles/zsh/files/.zshrc @@ -26,7 +26,7 @@ else fi # TODO prettier solution? -DOTFILES_ZSH_DIR="${0:A:h}" +export DOTFILES_ZSH_DIR="$HOME/dotfiles/roles/zsh/files" for zsh_file in "$DOTFILES_ZSH_DIR"/*.zsh; do [[ -r "$zsh_file" ]] && source "$zsh_file" diff --git a/roles/zsh/files/aliases.zsh b/roles/zsh/files/aliases.zsh index a4f838c..42cd965 100644 --- a/roles/zsh/files/aliases.zsh +++ b/roles/zsh/files/aliases.zsh @@ -4,8 +4,11 @@ alias tp='trash-put' alias tl='trash-list' alias szrc='source ~/.zshrc' +alias zrc="vim $DOTILFES_ZSH_DIR/.zshrc" alias dotf='vim ~/dotfiles/' +alias ls='eza' + rm() { print "ℹ️ Consider using trash-put instead of rm" print "➡️ Running: trash-put $*" From ee6855f2ce577c2812c56fb9224e49fbc8b29d89 Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Sun, 7 Sep 2025 20:17:11 +0200 Subject: [PATCH 5/7] further configure hyprland --- group_vars/all.yml | 22 +- roles/hyprland/files/hypr/hyprland.conf | 150 +- roles/hyprland/files/hypr/hyprlock.conf | 2 +- roles/hyprland/files/hypr/monitors.conf | 8 + roles/hyprland/files/hypr/workspaces.conf | 0 roles/hyprland/files/waybar/config.jsonc | 8 +- roles/hyprland/files/waybar/nohup.out | 2264 ------------------- roles/hyprland/files/waybar/scripts/page.sh | 114 +- roles/hyprland/files/waybar/style.css | 181 +- roles/hyprland/files/wofi/config | 2 + roles/hyprland/files/wofi/style.css | 91 +- roles/zsh/files/.zshrc | 1 - roles/zsh/files/aliases.zsh | 5 +- 13 files changed, 352 insertions(+), 2496 deletions(-) create mode 100644 roles/hyprland/files/hypr/monitors.conf create mode 100644 roles/hyprland/files/hypr/workspaces.conf delete mode 100644 roles/hyprland/files/waybar/nohup.out diff --git a/group_vars/all.yml b/group_vars/all.yml index 53bcd75..951714d 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -7,38 +7,20 @@ default_roles: # - git # Version control system - nvim # Modern text editor (or use 'vim') # - tmux # Terminal multiplexer for session management - # - # === Shell Environment === - zsh # Modern shell with oh-my-zsh # - ssh - hyprland - ghostty temp: - # === Development Languages === - # - rust # Rust programming language - # - ruby # Ruby programming language - # - lua # Lua programming language - # === DevOps & Cloud Tools === - docker # Container platform - # === System Monitoring === - - # === Terminal Emulators === - # - kitty # GPU-accelerated terminal - # - warp # Modern terminal with AI features - - # === Productivity Tools === - # - obsidian # Knowledge management and note-taking - system_packages: # Network - curl - wget - rsync - nmap - # - nslookup - # - dig # archive/compression - unzip @@ -71,6 +53,10 @@ system_packages: - dunst - hyprpaper + # desktop + - thunar + - imv + # TODO aur_packages: diff --git a/roles/hyprland/files/hypr/hyprland.conf b/roles/hyprland/files/hypr/hyprland.conf index 59309f0..09a50c4 100644 --- a/roles/hyprland/files/hypr/hyprland.conf +++ b/roles/hyprland/files/hypr/hyprland.conf @@ -4,9 +4,10 @@ # See https://wiki.hypr.land/Configuring/Monitors/ monitor=,preferred,auto,auto -monitor = DP-2, 2560x1440@165, 0x0, 1 -monitor = DP-1, 2560x1440@165, 2560x0, 1 -monitor = HDMI-A-2, 1920x1080@60, 5120x-360, 1, transform, 3 +source = ./monitors.conf +# monitor = DP-2, 2560x1440@165, 0x0, 1 +# monitor = DP-1, 2560x1440@165, 2560x0, 1 +# monitor = HDMI-A-2, 1920x1080@60, 5120x-360, 1, transform, 3 workspace = 1, monitor:DP-1, persistent:true, default:true workspace = 4, monitor:DP-1, persistent:true @@ -50,7 +51,7 @@ workspace = 30, monitor:DP-2, persistent:true # Set programs that you use $terminal = ghostty -$fileManager = dolphin +$fileManager = thunar $menu = wofi --show drun ################# @@ -82,6 +83,10 @@ env = CLUTTER_BACKEND,wayland env = SDL_VIDEODRIVER,wayland,x11 env = GDK_BACKEND,wayland,x11 +# jetbrains +env = _JAVA_AWT_WM_NONREPARENTING, 1 +# env = AWT_TOOLKIT, MToolkit + ################### ### PERMISSIONS ### ################### @@ -103,8 +108,6 @@ env = GDK_BACKEND,wayland,x11 ### LOOK AND FEEL ### ##################### -# Refer to https://wiki.hypr.land/Configuring/Variables/ - # https://wiki.hypr.land/Configuring/Variables/#general general { gaps_in = 5 @@ -115,6 +118,11 @@ general { # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) + # Active: cosmic purple -> neon cyan gradient + # col.active_border = rgba(7f5af0ee) rgba(00d1ffee) 45deg + # + # # Inactive: deep space slate + # col.inactive_border = rgba(0c0e14aa) # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = false @@ -125,32 +133,49 @@ general { layout = dwindle } -# https://wiki.hypr.land/Configuring/Variables/#decoration + +# --- Decorations / cosmic glass --- decoration { - rounding = 10 - rounding_power = 2 + rounding = 12 + active_opacity = 1.0 + inactive_opacity = 0.96 + fullscreen_opacity = 1.0 - # Change transparency of focused and unfocused windows - active_opacity = 1.0 - inactive_opacity = 1.0 + # Shadows (new nested syntax) + shadow { + enabled = true + range = 20 # size of the shadow + render_power = 3 # 1–4, higher = faster falloff + color = rgba(0, 0, 0, 0.35) + offset = 0 6 # optional: drop slightly downward + scale = 1.0 + } - shadow { - enabled = true - range = 4 - render_power = 3 - color = rgba(1a1a1aee) - } - - # https://wiki.hypr.land/Configuring/Variables/#blur - blur { - enabled = true - size = 3 - passes = 1 - - vibrancy = 0.1696 - } + # Blur (nested) + blur { + enabled = true + size = 8 + passes = 3 + new_optimizations = true + noise = 0.02 + contrast = 1.00 + brightness = 1.00 + vibrancy = 0.18 + xray = true + } } +# wofi +layerrule = blur, wofi # apply compositor blur +layerrule = ignorezero, wofi # keep blur even on near-opaque colors +layerrule = dimaround, wofi # optional: dim background behind wofi +layerrule = ignorealpha 0.90, wofi # target overall opacity for the layer + + +# waybar +layerrule = blur, waybar +layerrule = ignorealpha 0.15, waybar + # https://wiki.hypr.land/Configuring/Variables/#animations animations { enabled = yes, please :) @@ -248,7 +273,7 @@ bind = $mainMod, T, exec, $terminal bind = $mainMod, Q, killactive, bind = $mainMod, N, exec, $fileManager bind = $mainMod, V, togglefloating, -bind = $mainMod, D, exec, $menu +bind = $mainMod, Space, exec, $menu bind = $mainMod, G, togglesplit, # dwindle bind = $mainMod, F, fullscreen bind = $mainMod, B, exec, firefox @@ -323,69 +348,6 @@ bind = SUPER, 0, exec, hyprctl --batch " \ dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ dispatch focusmonitor DP-1" - - - -bind = SUPER SHIFT, 1, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 1; \ - dispatch focusmonitor DP-2; dispatch workspace 2; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 2, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 4; \ - dispatch focusmonitor DP-2; dispatch workspace 5; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 3, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 7; \ - dispatch focusmonitor DP-2; dispatch workspace 8; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 4, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 10; \ - dispatch focusmonitor DP-2; dispatch workspace 11; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 5, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 13; \ - dispatch focusmonitor DP-2; dispatch workspace 14; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 6, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 16; \ - dispatch focusmonitor DP-2; dispatch workspace 17; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 7, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 19; \ - dispatch focusmonitor DP-2; dispatch workspace 20; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 8, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 22; \ - dispatch focusmonitor DP-2; dispatch workspace 23; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 9, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 25; \ - dispatch focusmonitor DP-2; dispatch workspace 26; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 0, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 28; \ - dispatch focusmonitor DP-2; dispatch workspace 29; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ - dispatch focusmonitor DP-1" - bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 4 bind = $mainMod SHIFT, 3, movetoworkspace, 7 @@ -444,12 +406,12 @@ bind = , Print, exec, hyprshot -zm region # See https://wiki.hypr.land/Configuring/Window-Rules/ for more # See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules -# Example windowrule -# windowrule = float,class:^(kitty)$,title:^(kitty)$ - # Ignore maximize requests from apps. You'll probably like this. windowrule = suppressevent maximize, class:.* # Fix some dragging issues with XWayland windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 +windowrulev2 = tag +jb, class:^jetbrains-.+$,floating:1 +windowrulev2 = stayfocused, tag:jb +windowrulev2 = noinitialfocus, tag:jb diff --git a/roles/hyprland/files/hypr/hyprlock.conf b/roles/hyprland/files/hypr/hyprlock.conf index 067b450..bd6a0a9 100644 --- a/roles/hyprland/files/hypr/hyprlock.conf +++ b/roles/hyprland/files/hypr/hyprlock.conf @@ -14,7 +14,7 @@ background { input-field { monitor = - size = 200, 50 + size = 300, 50 position = 0, -80 dots_center = true fade_on_empty = false diff --git a/roles/hyprland/files/hypr/monitors.conf b/roles/hyprland/files/hypr/monitors.conf new file mode 100644 index 0000000..0fcf6a9 --- /dev/null +++ b/roles/hyprland/files/hypr/monitors.conf @@ -0,0 +1,8 @@ +# Generated by nwg-displays on 2025-09-07 at 18:49:18. Do not edit manually. + +monitor=DP-1,2560x1440@165.0,6626x876,1.0 +monitor=DP-2,2560x1440@165.0,4066x876,1.0 +monitor=HDMI-A-1,3840x2160@60.0,226x156,1.0 +monitor=HDMI-A-1,disable +monitor=HDMI-A-2,1920x1080@60.0,9186x396,1.0 +monitor=HDMI-A-2,transform,3 diff --git a/roles/hyprland/files/hypr/workspaces.conf b/roles/hyprland/files/hypr/workspaces.conf new file mode 100644 index 0000000..e69de29 diff --git a/roles/hyprland/files/waybar/config.jsonc b/roles/hyprland/files/waybar/config.jsonc index 93afbc5..1ac391a 100644 --- a/roles/hyprland/files/waybar/config.jsonc +++ b/roles/hyprland/files/waybar/config.jsonc @@ -2,13 +2,17 @@ "layer": "top", "position": "top", + "exclusive": true, // keep the gap reserved + "margin-top": 8, // gap from the top edge + "margin-left": 10, // gap from the left edge + "margin-right": 10, // gap from the right edge + "margin-bottom": 0, + /* order: 1-2-3 | window-title | tray + clock */ "modules-left": [ "custom/page1", "custom/page2", "custom/page3", "custom/page4","custom/page5","custom/page6","custom/page7","custom/page8","custom/page9","custom/page10"], "modules-center": [ "hyprland/window" ], "modules-right": [ "tray", "custom/separator", "network", "bluetooth", "custom/separator", "disk", "cpu", "memory", "pulseaudio", "custom/separator", "clock"], - - /* three persistent “page” buttons */ "custom/page1": { "exec": "~/.config/waybar/scripts/page.sh 1", "exec-persistent": true, diff --git a/roles/hyprland/files/waybar/nohup.out b/roles/hyprland/files/waybar/nohup.out deleted file mode 100644 index ca2f56d..0000000 --- a/roles/hyprland/files/waybar/nohup.out +++ /dev/null @@ -1,2264 +0,0 @@ -[2025-09-06 00:39:59.737] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc -[2025-09-06 00:39:59.737] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop -[2025-09-06 00:39:59.737] [info] Using CSS file /home/johannes/.config/waybar/style.css - -(waybar:99210): Gtk-WARNING **: 00:39:59.737: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. -[2025-09-06 00:39:59.747] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:39:59.747] [info] Hyprland IPC starting -[2025-09-06 00:39:59.766] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:39:59.801] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:39:59.840] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:40:00.277] [info] Bar configured (width: 2560, height: 28) for output: DP-1 -[2025-09-06 00:40:00.277] [info] Bar configured (width: 2560, height: 28) for output: DP-2 -[2025-09-06 00:40:00.277] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 -[2025-09-06 00:40:00.277] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 -[2025-09-06 00:40:00.962] [info] Quitting. -2025/09/06 00:40:00 socat[100109] W exiting on signal 15 -2025/09/06 00:40:00 socat[100232] W exiting on signal 15 -2025/09/06 00:40:00 socat[100069] W exiting on signal 15 -2025/09/06 00:40:00 socat[100197] W exiting on signal 15 -2025/09/06 00:40:00 socat[100168] W exiting on signal 15 -2025/09/06 00:40:00 socat[100199] W exiting on signal 15 -2025/09/06 00:40:00 socat[100221] W exiting on signal 15 -2025/09/06 00:40:00 socat[100213] W exiting on signal 15 -2025/09/06 00:40:00 socat[100226] W exiting on signal 15 -2025/09/06 00:40:00 socat[100224] W exiting on signal 15 -2025/09/06 00:40:00 socat[99601] W exiting on signal 15 -2025/09/06 00:40:00 socat[100175] W exiting on signal 15 -2025/09/06 00:40:00 socat[99997] W exiting on signal 15 -2025/09/06 00:40:00 socat[100165] W exiting on signal 15 -2025/09/06 00:40:00 socat[99987] W exiting on signal 15 -2025/09/06 00:40:00 socat[100135] W exiting on signal 15 -2025/09/06 00:40:00 socat[100075] W exiting on signal 15 -2025/09/06 00:40:00 socat[100101] W exiting on signal 15 -2025/09/06 00:40:00 socat[100096] W exiting on signal 15 -2025/09/06 00:40:00 socat[100018] W exiting on signal 15 -2025/09/06 00:40:00 socat[99570] W exiting on signal 15 -2025/09/06 00:40:00 socat[99927] W exiting on signal 15 -2025/09/06 00:40:00 socat[100066] W exiting on signal 15 -2025/09/06 00:40:00 socat[99790] W exiting on signal 15 -2025/09/06 00:40:00 socat[99918] W exiting on signal 15 -2025/09/06 00:40:00 socat[99793] W exiting on signal 15 -2025/09/06 00:40:00 socat[99715] W exiting on signal 15 -2025/09/06 00:40:00 socat[99693] W exiting on signal 15 -2025/09/06 00:40:00 socat[99901] W exiting on signal 15 -2025/09/06 00:40:00 socat[99961] W exiting on signal 15 -2025/09/06 00:40:00 socat[99327] W exiting on signal 15 -2025/09/06 00:40:00 socat[99497] W exiting on signal 15 -2025/09/06 00:40:00 socat[99569] W exiting on signal 15 -2025/09/06 00:40:00 socat[99529] W exiting on signal 15 -2025/09/06 00:40:00 socat[99560] W exiting on signal 15 -2025/09/06 00:40:00 socat[99574] W exiting on signal 15 -2025/09/06 00:40:00 socat[99592] W exiting on signal 15 -2025/09/06 00:40:00 socat[99782] W exiting on signal 15 -2025/09/06 00:40:00 socat[99607] W exiting on signal 15 -2025/09/06 00:40:00 socat[99964] W exiting on signal 15 -[2025-09-06 00:40:00.973] [info] Hyprland IPC stopping... -[2025-09-06 00:40:04.293] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc -[2025-09-06 00:40:04.294] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop -[2025-09-06 00:40:04.294] [info] Using CSS file /home/johannes/.config/waybar/style.css - -(waybar:100375): Gtk-WARNING **: 00:40:04.294: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. -[2025-09-06 00:40:04.304] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:40:04.304] [info] Hyprland IPC starting -[2025-09-06 00:40:04.331] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:40:04.357] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:40:04.405] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:40:04.839] [info] Bar configured (width: 2560, height: 28) for output: DP-1 -[2025-09-06 00:40:04.839] [info] Bar configured (width: 2560, height: 28) for output: DP-2 -[2025-09-06 00:40:04.839] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 -[2025-09-06 00:40:04.839] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 -[2025-09-06 00:44:13.690] [info] Using configuration file /home/johannes/.config/waybar/config.jsonc -[2025-09-06 00:44:13.691] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop -[2025-09-06 00:44:13.691] [info] Using CSS file /home/johannes/.config/waybar/style.css - -(waybar:106676): Gtk-WARNING **: 00:44:13.691: Theme parsing error: style.css:69:17: Not using units is deprecated. Assuming 'px'. -[2025-09-06 00:44:13.699] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:44:13.699] [info] Hyprland IPC starting -[2025-09-06 00:44:13.728] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:44:13.755] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:44:13.817] [warning] 'swap-icon-label' must be a bool. -[2025-09-06 00:44:14.243] [info] Bar configured (width: 2560, height: 28) for output: DP-1 -[2025-09-06 00:44:14.243] [info] Bar configured (width: 2560, height: 28) for output: DP-2 -[2025-09-06 00:44:14.243] [info] Bar configured (width: 1080, height: 28) for output: HDMI-A-2 -[2025-09-06 00:44:14.243] [info] Bar configured (width: 3840, height: 28) for output: HDMI-A-1 -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered - -** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered - -** (waybar:106676): WARNING **: 02:15:04.768: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered - -** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered - -** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered - -** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered - -** (waybar:106676): WARNING **: 02:15:04.770: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered - -** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered - -** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered - -** (waybar:106676): WARNING **: 02:15:55.077: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered - -** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered - -** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered - -** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered - -** (waybar:106676): WARNING **: 02:15:55.079: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered - -** (waybar:106676): WARNING **: 02:16:11.322: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered - -** (waybar:106676): WARNING **: 02:16:11.323: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered - -** (waybar:106676): WARNING **: 02:16:11.323: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered - -** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered - -** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered - -** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered - -** (waybar:106676): WARNING **: 02:16:11.324: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered - -** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.236' and object path '/StatusNotifierItem' is already registered - -** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.181' and object path '/org/ayatana/NotificationItem/proton_vpn_app' is already registered - -** (waybar:106676): WARNING **: 02:17:21.955: Status Notifier Item with bus name ':1.204' and object path '/org/ayatana/NotificationItem/spotify_client' is already registered - -** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/0' is already registered - -** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/1' is already registered - -** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/2' is already registered - -** (waybar:106676): WARNING **: 02:17:21.957: Status Notifier Host with bus name ':1.151' and object path '/StatusNotifierHost/3' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -sh: line 1: blueman-manager: command not found -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:40:22.218: Status Notifier Item with bus name ':1.310' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:42:22.640: Status Notifier Item with bus name ':1.341' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:44:43.707: Status Notifier Item with bus name ':1.410' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:46:10.727: Status Notifier Item with bus name ':1.462' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:47:32.592: Status Notifier Item with bus name ':1.500' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:51:06.283: Status Notifier Item with bus name ':1.518' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 02:55:38.797: Status Notifier Item with bus name ':1.560' and object path '/org/ayatana/NotificationItem/steam' is already registered - -** (waybar:106676): WARNING **: 02:58:49.347: Status Notifier Item with bus name ':1.660' and object path '/org/ayatana/NotificationItem/steam' is already registered - -** (waybar:106676): WARNING **: 03:00:52.893: Status Notifier Item with bus name ':1.725' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 03:04:36.363: Status Notifier Item with bus name ':1.741' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe - -** (waybar:106676): WARNING **: 03:09:49.490: Status Notifier Item with bus name ':1.741' and object path '/org/ayatana/NotificationItem/steam' is already registered -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 45: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -/home/johannes/.config/waybar/scripts/page.sh: line 42: printf: write error: Broken pipe -2025/09/06 03:10:26 socat[100513] W exiting on signal 15 -2025/09/06 03:10:26 socat[100565] W exiting on signal 15 -2025/09/06 03:10:26 socat[107196] W exiting on signal 15 -2025/09/06 03:10:26 socat[107230] W exiting on signal 15 -2025/09/06 03:10:26 socat[107234] W exiting on signal 15 -2025/09/06 03:10:26 socat[107368] W exiting on signal 15 -2025/09/06 03:10:26 socat[107472] W exiting on signal 15 -2025/09/06 03:10:26 socat[100595] W exiting on signal 15 -2025/09/06 03:10:26 socat[107540] W exiting on signal 15 -2025/09/06 03:10:26 socat[107055] W exiting on signal 15 -2025/09/06 03:10:26 socat[107602] W exiting on signal 15 -2025/09/06 03:10:26 socat[107687] W exiting on signal 15 -2025/09/06 03:10:26 socat[107567] W exiting on signal 15 -2025/09/06 03:10:26 socat[107757] W exiting on signal 15 -2025/09/06 03:10:26 socat[107586] W exiting on signal 15 -2025/09/06 03:10:26 socat[107692] W exiting on signal 15 -2025/09/06 03:10:26 socat[107712] W exiting on signal 15 -2025/09/06 03:10:26 socat[107728] W exiting on signal 15 -2025/09/06 03:10:26 socat[107733] W exiting on signal 15 -2025/09/06 03:10:26 socat[107736] W exiting on signal 15 -2025/09/06 03:10:26 socat[106907] W exiting on signal 15 -2025/09/06 03:10:26 socat[107008] W exiting on signal 15 -2025/09/06 03:10:26 socat[107016] W exiting on signal 15 -2025/09/06 03:10:26 socat[106929] W exiting on signal 15 -2025/09/06 03:10:26 socat[107284] W exiting on signal 15 -2025/09/06 03:10:26 socat[107600] W exiting on signal 15 -2025/09/06 03:10:26 socat[107689] W exiting on signal 15 -2025/09/06 03:10:26 socat[107198] W exiting on signal 15 -2025/09/06 03:10:26 socat[107508] W exiting on signal 15 -2025/09/06 03:10:26 socat[107327] W exiting on signal 15 -2025/09/06 03:10:26 socat[107200] W exiting on signal 15 -2025/09/06 03:10:26 socat[107036] W exiting on signal 15 -2025/09/06 03:10:26 socat[107441] W exiting on signal 15 -2025/09/06 03:10:26 socat[107406] W exiting on signal 15 -2025/09/06 03:10:26 socat[107582] W exiting on signal 15 -2025/09/06 03:10:26 socat[107590] W exiting on signal 15 -2025/09/06 03:10:26 socat[107765] W exiting on signal 15 -2025/09/06 03:10:26 socat[107759] W exiting on signal 15 -2025/09/06 03:10:26 socat[107768] W exiting on signal 15 -2025/09/06 03:10:26 socat[100599] W exiting on signal 15 -2025/09/06 03:10:26 socat[100644] W exiting on signal 15 -2025/09/06 03:10:26 socat[100698] W exiting on signal 15 -2025/09/06 03:10:26 socat[100722] W exiting on signal 15 -2025/09/06 03:10:26 socat[107002] W exiting on signal 15 -2025/09/06 03:10:26 socat[100689] W exiting on signal 15 -2025/09/06 03:10:26 socat[100717] W exiting on signal 15 -2025/09/06 03:10:26 socat[100730] W exiting on signal 15 -2025/09/06 03:10:26 socat[100760] W exiting on signal 15 -2025/09/06 03:10:26 socat[100885] W exiting on signal 15 -2025/09/06 03:10:26 socat[100959] W exiting on signal 15 -2025/09/06 03:10:26 socat[101004] W exiting on signal 15 -2025/09/06 03:10:26 socat[101020] W exiting on signal 15 -2025/09/06 03:10:26 socat[101036] W exiting on signal 15 -2025/09/06 03:10:26 socat[101068] W exiting on signal 15 -2025/09/06 03:10:26 socat[101095] W exiting on signal 15 -2025/09/06 03:10:26 socat[101110] W exiting on signal 15 -2025/09/06 03:10:26 socat[101169] W exiting on signal 15 -2025/09/06 03:10:26 socat[101171] W exiting on signal 15 -2025/09/06 03:10:26 socat[101186] W exiting on signal 15 -2025/09/06 03:10:26 socat[101204] W exiting on signal 15 -2025/09/06 03:10:26 socat[101243] W exiting on signal 15 -2025/09/06 03:10:26 socat[101246] W exiting on signal 15 -2025/09/06 03:10:26 socat[101291] W exiting on signal 15 -2025/09/06 03:10:26 socat[101294] W exiting on signal 15 -2025/09/06 03:10:26 socat[101300] W exiting on signal 15 -2025/09/06 03:10:26 socat[101388] W exiting on signal 15 -2025/09/06 03:10:26 socat[101355] W exiting on signal 15 -2025/09/06 03:10:26 socat[101393] W exiting on signal 15 -2025/09/06 03:10:26 socat[101413] W exiting on signal 15 diff --git a/roles/hyprland/files/waybar/scripts/page.sh b/roles/hyprland/files/waybar/scripts/page.sh index c40995a..246e400 100755 --- a/roles/hyprland/files/waybar/scripts/page.sh +++ b/roles/hyprland/files/waybar/scripts/page.sh @@ -1,13 +1,10 @@ #!/usr/bin/env bash # page.sh 1‒10 – Waybar “page” indicator -# deps: socat, awk • (still no jq) +# deps: socat, awk, sed, grep -page=$1 # this script instance’s page (1‒10) - -# ── icon lookup table ──────────────────────────────────────────── +page=$1 icons=( "" "" "" "" "" "" "" "" "" "" "󰝚" ) -# map numeric workspace → page (1‒10) to_page() { (( $1 <= 3 )) && echo 1 && return (( $1 <= 6 )) && echo 2 && return @@ -21,21 +18,26 @@ to_page() { echo 10 } -# does THIS page contain at least one window? +# Return 0 if THIS page has at least one window, else 1 is_occupied() { - while read -r ws_id; do - (( $(to_page "$ws_id") == page )) && return 0 - done < <(hyprctl clients | awk '/workspace:/ {print $2}') + # Get workspace id + windows count pairs from JSON + # Example snippets: {"id":1,"windows":3, ...} + while read -r id windows; do + (( $(to_page "$id") == page )) && (( windows > 0 )) && return 0 + done < <( + hyprctl -j workspaces \ + | grep -o '"id":[0-9]\+|"windows":[0-9]\+' \ + | sed -n 'N;s/"id":\([0-9]\+\)\n"windows":\([0-9]\+\)/\1 \2/p' + ) return 1 } emit() { local classes=() - - if (( $1 == page )); then # ← is THIS instance the active page? - classes+=(active) # yes → mark it only “active” + if (( $1 == page )); then + classes+=(active) else - is_occupied && classes+=(occupied) # no → maybe “occupied” + is_occupied && classes+=(occupied) fi if ((${#classes[@]})); then @@ -46,18 +48,16 @@ emit() { fi } -# ── initial state ──────────────────────────────────────────────── +# Initial state active_ws=$(hyprctl activeworkspace | awk '/^ID /{print $2}') current_page=$(to_page "${active_ws:-1}") emit "$current_page" current_occ=$(is_occupied && echo 1 || echo 0) -# ── live updates via Hyprland socket2 ─────────────────────────── +# Live updates socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" socat -U - UNIX-CONNECT:"$socket" | while read -r line; do - [[ $line =~ ^(workspace|openwindow|closewindow) ]] || continue - - # recompute state if anything relevant changed + [[ $line =~ ^(workspace|openwindow|closewindow|movewindow) ]] || continue if [[ $line == workspace* ]]; then ws=${line#*>>}; ws=${ws%% *} new_page=$(to_page "$ws") @@ -65,8 +65,6 @@ socat -U - UNIX-CONNECT:"$socket" | while read -r line; do new_page=$current_page fi new_occ=$(is_occupied && echo 1 || echo 0) - - # update Waybar only when something actually changed if (( new_page != current_page || new_occ != current_occ )); then emit "$new_page" current_page=$new_page @@ -74,3 +72,79 @@ socat -U - UNIX-CONNECT:"$socket" | while read -r line; do fi done + +# # page.sh 1‒10 – Waybar “page” indicator +# # deps: socat, awk • (still no jq) +# +# page=$1 # this script instance’s page (1‒10) +# +# # ── icon lookup table ──────────────────────────────────────────── +# icons=( "" "" "" "" "" "" "" "" "" "" "󰝚" ) +# +# # map numeric workspace → page (1‒10) +# to_page() { +# (( $1 <= 3 )) && echo 1 && return +# (( $1 <= 6 )) && echo 2 && return +# (( $1 <= 9 )) && echo 3 && return +# (( $1 <= 12 )) && echo 4 && return +# (( $1 <= 15 )) && echo 5 && return +# (( $1 <= 18 )) && echo 6 && return +# (( $1 <= 21 )) && echo 7 && return +# (( $1 <= 24 )) && echo 8 && return +# (( $1 <= 27 )) && echo 9 && return +# echo 10 +# } +# +# # does THIS page contain at least one window? +# is_occupied() { +# while read -r ws_id; do +# (( $(to_page "$ws_id") == page )) && return 0 +# done < <(hyprctl clients | awk '/workspace:/ {print $2}') +# return 1 +# } +# +# emit() { +# local classes=() +# +# if (( $1 == page )); then # ← is THIS instance the active page? +# classes+=(active) # yes → mark it only “active” +# else +# is_occupied && classes+=(occupied) # no → maybe “occupied” +# fi +# +# if ((${#classes[@]})); then +# printf '{"text":"%s","class":"%s"}\n' \ +# "${icons[page]}" "$(IFS=' '; echo "${classes[*]}")" +# else +# printf '{"text":"%s"}\n' "${icons[page]}" +# fi +# } +# +# # ── initial state ──────────────────────────────────────────────── +# active_ws=$(hyprctl activeworkspace | awk '/^ID /{print $2}') +# current_page=$(to_page "${active_ws:-1}") +# emit "$current_page" +# current_occ=$(is_occupied && echo 1 || echo 0) +# +# # ── live updates via Hyprland socket2 ─────────────────────────── +# socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" +# socat -U - UNIX-CONNECT:"$socket" | while read -r line; do +# [[ $line =~ ^(workspace|openwindow|closewindow) ]] || continue +# +# # recompute state if anything relevant changed +# if [[ $line == workspace* ]]; then +# ws=${line#*>>}; ws=${ws%% *} +# new_page=$(to_page "$ws") +# else +# new_page=$current_page +# fi +# new_occ=$(is_occupied && echo 1 || echo 0) +# +# # update Waybar only when something actually changed +# if (( new_page != current_page || new_occ != current_occ )); then +# emit "$new_page" +# current_page=$new_page +# current_occ=$new_occ +# fi +# done +# diff --git a/roles/hyprland/files/waybar/style.css b/roles/hyprland/files/waybar/style.css index 3456d98..480cb85 100644 --- a/roles/hyprland/files/waybar/style.css +++ b/roles/hyprland/files/waybar/style.css @@ -1,91 +1,134 @@ -/* --- GENERAL BAR STYLE (unchanged) --- */ +/* ==== Waybar GTK CSS: Cosmic glass (v2 lighter) ================= */ + +/* Palette */ +@define-color glass rgba(12, 14, 20, 0.34); /* was 0.62 → much more transparent */ +@define-color glass_strong rgba(12, 14, 20, 0.46); /* chips / active */ +@define-color fg #DDE1EA; +@define-color fg_dim #B8BECC; +@define-color accent1 #7F5AF0; +@define-color accent2 #00D1FF; + +/* Whole bar: more vertical padding, no border, stronger shadow */ +window#waybar { + background: @glass; + color: @fg; + border-radius: 12px; + margin: 6px 8px; + border: none; /* ← removed border */ + box-shadow: 0 10px 34px rgba(0,0,0,0.34); + -gtk-outline-radius: 12px; +} + +/* Global typography: Roboto Mono Nerd Font */ * { border: none; - /* padding: 0 6px; */ - padding: 0 6px; - margin-top: 2px; - font-family: "JetBrains Mono", monospace; + padding: 2px 6px; + margin-top: 0; + font-family: "RobotoMono Nerd Font", "Roboto Mono Nerd Font", "RobotoMono NF", monospace; font-size: 14px; + font-weight: 500; } -window#waybar { background: transparent; color: #ffffff; } -/* --- PAGE BUTTONS --- */ -/* IDs are #custom-page1, #custom-page2, #custom-page3 */ -#custom-page1, #custom-page2, #custom-page3, #custom-page4, #custom-page5, #custom-page6, #custom-page7, #custom-page8, #custom-page9, #custom-page10 { +/* Keep groups transparent */ +#modules-left, #modules-center, #modules-right { background: transparent; } + +/* Common modules stay transparent; compact rounded hit area */ +#tray, #window, #clock, #cpu, #memory, #disk, #network, #bluetooth, #pulseaudio { background: transparent; - min-width: 18px; /* keeps them evenly spaced */ - padding-left: 2px; - color: #fff; - /* text-align: center; */ -} -#custom-page1.active, -#custom-page2.active, -#custom-page3.active, -#custom-page4.active, -#custom-page5.active, -#custom-page6.active, -#custom-page7.active, -#custom-page8.active, -#custom-page9.active, -#custom-page10.active -{ - background: rgba(255,255,255,0.15); border-radius: 8px; - color: #fff; + color: @fg; } -#custom-page1.occupied:not(.active), -#custom-page2.occupied:not(.active), -#custom-page3.occupied:not(.active), -#custom-page4.occupied:not(.active), -#custom-page5.occupied:not(.active), -#custom-page6.occupied:not(.active), -#custom-page7.occupied:not(.active), -#custom-page8.occupied:not(.active), -#custom-page9.occupied:not(.active), -#custom-page10.occupied:not(.active) { - color: #42A5F5; /* blue – pick any shade you like */ +/* Subtle separators */ +#custom-separator { + color: rgba(200,200,200,0.20); + padding: 0 4px; } -#custom-page1.active.occupied, -#custom-page2.active.occupied, -#custom-page3.active.occupied, -#custom-page4.active.occupied, -#custom-page5.active.occupied, -#custom-page6.active.occupied, -#custom-page7.active.occupied, -#custom-page8.active.occupied, -#custom-page9.active.occupied, -#custom-page10.active.occupied { - background: rgba(255,255,255,0.15); /* same as .active */ - /* optional: keep the icon white, or turn it blue: */ - /* color: #42A5F5; */ +/* --- PAGE BUTTONS --------------------------------------------------------- */ +#custom-page1, #custom-page2, #custom-page3, #custom-page4, #custom-page5, +#custom-page6, #custom-page7, #custom-page8, #custom-page9, #custom-page10 { + background: transparent; + min-width: 18px; + padding-left: 2px; + color: @fg_dim; } -/* --- OTHER MODULES (carry-over from your previous setup) --- */ -#window, #tray, #clock { background: transparent;} - -#tray { - margin-right: -5; +/* Active page: glass chip, no border */ +#custom-page1.active, #custom-page2.active, #custom-page3.active, #custom-page4.active, +#custom-page5.active, #custom-page6.active, #custom-page7.active, #custom-page8.active, +#custom-page9.active, #custom-page10.active { + background: @glass_strong; + border-radius: 8px; + color: @fg; + box-shadow: inset 0 0 0 9999px rgba(255,255,255,0.015); } -#tray * { - padding-left: 0px; - padding-right: 0px; +/* Occupied (not active): cyan glyph */ +#custom-page1.occupied:not(.active), #custom-page2.occupied:not(.active), +#custom-page3.occupied:not(.active), #custom-page4.occupied:not(.active), +#custom-page5.occupied:not(.active), #custom-page6.occupied:not(.active), +#custom-page7.occupied:not(.active), #custom-page8.occupied:not(.active), +#custom-page9.occupied:not(.active), #custom-page10.occupied:not(.active) { + color: @accent2; } -/* ─── kill the gap your * rule adds ─────────────────────────────── */ -#tray menu { /* the whole right-click window */ - padding: 5px 0; /* 0 instead of the 6 px from * */ - margin: 0; /* 0 instead of the 2 px top margin */ - border: 1px solid #555; +/* Hover feedback (very light) */ +#custom-page1:hover, #custom-page2:hover, #custom-page3:hover, #custom-page4:hover, +#custom-page5:hover, #custom-page6:hover, #custom-page7:hover, #custom-page8:hover, +#custom-page9:hover, #custom-page10:hover { + background: rgba(255,255,255,0.03); + border-radius: 8px; } -/* ─── (optional) give the rows some room & hover style ─────────── */ -#tray menu menuitem { - padding: 4px 12px; /* tweak to taste */ +/* Tray tweaks */ +#tray { margin-right: 0px; } +#tray * { padding-left: 0px; padding-right: 0px; } + +/* Tray menu glass look (also lighter, no border) */ +#tray menu { + padding: 6px 0; + margin: 0; + background: @glass_strong; + border-radius: 10px; + border: none; + box-shadow: 0 10px 34px rgba(0,0,0,0.38); +} +#tray menu menuitem { padding: 6px 12px; } +#tray menu menuitem:hover { background: alpha(@accent1, 0.16); } + + + +#custom-hyprland-workspaces { + padding: 0; + margin: 0 4px; } -#tray menu menuitem:hover { - background: rgba(66,165,245,.25); +.workspace { + /* display: inline-block; */ + padding: 4px 8px; + margin: 0 2px; + border-radius: 4px; + color: #e6e6e6; /* off-white for empty workspaces */ + background-color: transparent; + border: 1px solid #444; + /* cursor: pointer; */ + transition: all 0.2s ease; + min-width: 20px; + /* text-align: center; */ +} + +.workspace.occupied { + color: #a855f7; /* purple for occupied workspaces */ + border-color: #a855f7; +} + +.workspace.focused { + background-color: rgba(168, 85, 247, 0.2); /* light purple background for focused */ + color: #a855f7; + border-color: #a855f7; +} + +.workspace:hover { + background-color: rgba(168, 85, 247, 0.1); } diff --git a/roles/hyprland/files/wofi/config b/roles/hyprland/files/wofi/config index 2a8809e..334a4a8 100644 --- a/roles/hyprland/files/wofi/config +++ b/roles/hyprland/files/wofi/config @@ -1,6 +1,7 @@ [config] allow_images=true width=500 +show=drun prompt=Search height=400 term=ghostty @@ -8,4 +9,5 @@ hide_scroll=true print_command=true insensitive=true columns=1 +pre_display_exec=true no_actions=true diff --git a/roles/hyprland/files/wofi/style.css b/roles/hyprland/files/wofi/style.css index b56c868..b2d70fb 100644 --- a/roles/hyprland/files/wofi/style.css +++ b/roles/hyprland/files/wofi/style.css @@ -1,26 +1,35 @@ +* { + /* smoother corners everywhere */ + border-radius: 12px; + font-weight: 450; +} + +/* Window container */ window { margin: 0px; - border: 1px solid #61AFEF; /* One Dark blue */ - background-color: #282C34; /* One Dark background */ + padding: 6px; + border: 1px solid rgba(127, 90, 240, 0.35); /* accent tint */ + background-color: rgba(12, 14, 20, 0.55); /* translucent */ + color: #E6E7EB; + box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45); + backg } +/* Input field */ #input { - margin: 5px; - border: none; - color: #ABB2BF; /* One Dark fg */ - background-color: #3E4451; /* One Dark gutter/bg */ + margin: 8px; + padding: 10px 12px; + border: 1px solid rgba(127, 90, 240, 0.25); + background-color: rgba(34, 38, 48, 0.70); + color: #E6E7EB; + outline: none; } -#inner-box { - margin: 5px; +/* Lists/boxes */ +#outer-box, #inner-box { + margin: 6px; border: none; - background-color: #282C34; /* match window bg */ -} - -#outer-box { - margin: 5px; - border: none; - background-color: #282C34; /* match window bg */ + background-color: rgba(24, 28, 36, 0.60); } #scroll { @@ -28,25 +37,55 @@ window { border: none; } -#text { - margin: 5px; - margin-left: 10px; - border: none; - color: #ABB2BF; /* One Dark fg */ +/* Entry text */ +#text, #entry > * { + margin: 6px 10px; + color: #E6E7EB; } -#entry.activatable #text { - color: #282C34; /* invert to bg for activation */ +/* Rows (entries) */ +#entry { + margin: 4px 6px; + padding: 8px 6px; + border: 1px solid transparent; + background-color: transparent; + transition: background-color 120ms ease, border-color 120ms ease; } -#entry > * { - color: #ABB2BF; /* One Dark fg */ +/* Hover — soft highlight */ +#entry:hover { + background-color: rgba(127, 90, 240, 0.10); + border-color: rgba(127, 90, 240, 0.25); } +/* Selected row — stronger surface and bold text */ #entry:selected { - background-color: #3E4451; /* selected background */ + background-color: rgba(127, 90, 240, 0.18); + border-color: rgba(127, 90, 240, 0.40); } #entry:selected #text { - font-weight: bold; + font-weight: 600; +} + +/* Activatable (e.g., currently typed match) — invert text for contrast */ +#entry.activatable #text { + color: rgba(12, 14, 20, 0.92); +} + +/* Muted secondary text, if present */ +#entry .secondary, #entry .desc { + color: #AAB0BC; +} + +/* Optional: focus ring for keyboard nav */ +#entry:focus { + border-color: rgba(127, 90, 240, 0.55); + background-color: rgba(127, 90, 240, 0.12); +} + +/* Optional: thin separators using subtle overlay lines */ +separator, .separator { + background-color: rgba(255, 255, 255, 0.06); + min-height: 1px; } diff --git a/roles/zsh/files/.zshrc b/roles/zsh/files/.zshrc index fee80be..2a70a1e 100644 --- a/roles/zsh/files/.zshrc +++ b/roles/zsh/files/.zshrc @@ -25,7 +25,6 @@ else export EDITOR='nvim' fi -# TODO prettier solution? export DOTFILES_ZSH_DIR="$HOME/dotfiles/roles/zsh/files" for zsh_file in "$DOTFILES_ZSH_DIR"/*.zsh; do diff --git a/roles/zsh/files/aliases.zsh b/roles/zsh/files/aliases.zsh index 42cd965..8d3de04 100644 --- a/roles/zsh/files/aliases.zsh +++ b/roles/zsh/files/aliases.zsh @@ -4,9 +4,12 @@ alias tp='trash-put' alias tl='trash-list' alias szrc='source ~/.zshrc' -alias zrc="vim $DOTILFES_ZSH_DIR/.zshrc" +alias zrc="vim ~/.zshrc" alias dotf='vim ~/dotfiles/' +# TODO relative path +alias hyprconf='vim ~/dotfiles/roles/hyprland/files/hypr/hyprland.conf' + alias ls='eza' rm() { From a95cd6feeda370a7b877566d7584ae38c9bafe0c Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Sat, 13 Sep 2025 15:28:12 +0200 Subject: [PATCH 6/7] update hyprland conf --- roles/hyprland/files/hypr/hyprland.conf | 53 ++++++ roles/hyprland/files/hypr/monitors.conf | 4 +- roles/hyprland/files/waybar/config.jsonc | 163 ++++++++++++------ roles/hyprland/files/waybar/scripts/groups.sh | 40 +++++ roles/hyprland/files/waybar/scripts/page.sh | 150 ---------------- roles/hyprland/files/waybar/style.css | 49 ++---- 6 files changed, 220 insertions(+), 239 deletions(-) create mode 100755 roles/hyprland/files/waybar/scripts/groups.sh delete mode 100755 roles/hyprland/files/waybar/scripts/page.sh diff --git a/roles/hyprland/files/hypr/hyprland.conf b/roles/hyprland/files/hypr/hyprland.conf index 09a50c4..4614cc3 100644 --- a/roles/hyprland/files/hypr/hyprland.conf +++ b/roles/hyprland/files/hypr/hyprland.conf @@ -348,6 +348,59 @@ bind = SUPER, 0, exec, hyprctl --batch " \ dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 1, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 1; \ + dispatch focusmonitor DP-2; dispatch workspace 2; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 2, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 4; \ + dispatch focusmonitor DP-2; dispatch workspace 5; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 3, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 7; \ + dispatch focusmonitor DP-2; dispatch workspace 8; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 4, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 10; \ + dispatch focusmonitor DP-2; dispatch workspace 11; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 5, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 13; \ + dispatch focusmonitor DP-2; dispatch workspace 14; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 6, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 16; \ + dispatch focusmonitor DP-2; dispatch workspace 17; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 7, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 19; \ + dispatch focusmonitor DP-2; dispatch workspace 20; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 8, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 22; \ + dispatch focusmonitor DP-2; dispatch workspace 23; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 9, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 25; \ + dispatch focusmonitor DP-2; dispatch workspace 26; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ + dispatch focusmonitor DP-1" +bind = SUPER SHIFT, 0, exec, hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace 28; \ + dispatch focusmonitor DP-2; dispatch workspace 29; \ + dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ + dispatch focusmonitor DP-1" + + + bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 4 bind = $mainMod SHIFT, 3, movetoworkspace, 7 diff --git a/roles/hyprland/files/hypr/monitors.conf b/roles/hyprland/files/hypr/monitors.conf index 0fcf6a9..d0957cb 100644 --- a/roles/hyprland/files/hypr/monitors.conf +++ b/roles/hyprland/files/hypr/monitors.conf @@ -1,8 +1,8 @@ -# Generated by nwg-displays on 2025-09-07 at 18:49:18. Do not edit manually. +# Generated by nwg-displays on 2025-09-09 at 19:00:43. Do not edit manually. monitor=DP-1,2560x1440@165.0,6626x876,1.0 monitor=DP-2,2560x1440@165.0,4066x876,1.0 -monitor=HDMI-A-1,3840x2160@60.0,226x156,1.0 +monitor=HDMI-A-1,0x0@60.0,-1x-1,1.0 monitor=HDMI-A-1,disable monitor=HDMI-A-2,1920x1080@60.0,9186x396,1.0 monitor=HDMI-A-2,transform,3 diff --git a/roles/hyprland/files/waybar/config.jsonc b/roles/hyprland/files/waybar/config.jsonc index 1ac391a..1cb4e03 100644 --- a/roles/hyprland/files/waybar/config.jsonc +++ b/roles/hyprland/files/waybar/config.jsonc @@ -9,60 +9,121 @@ "margin-bottom": 0, /* order: 1-2-3 | window-title | tray + clock */ - "modules-left": [ "custom/page1", "custom/page2", "custom/page3", "custom/page4","custom/page5","custom/page6","custom/page7","custom/page8","custom/page9","custom/page10"], + "modules-left": [ "custom/group1", "custom/group2", "custom/group3", "custom/group4","custom/group5","custom/group6","custom/group7","custom/group8","custom/group9","custom/group10"], "modules-center": [ "hyprland/window" ], "modules-right": [ "tray", "custom/separator", "network", "bluetooth", "custom/separator", "disk", "cpu", "memory", "pulseaudio", "custom/separator", "clock"], - "custom/page1": { - "exec": "~/.config/waybar/scripts/page.sh 1", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page2": { - "exec": "~/.config/waybar/scripts/page.sh 2", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page3": { - "exec": "~/.config/waybar/scripts/page.sh 3", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page4": { - "exec": "~/.config/waybar/scripts/page.sh 4", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page5": { - "exec": "~/.config/waybar/scripts/page.sh 5", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page6": { - "exec": "~/.config/waybar/scripts/page.sh 6", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page7": { - "exec": "~/.config/waybar/scripts/page.sh 7", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page8": { - "exec": "~/.config/waybar/scripts/page.sh 8", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page9": { - "exec": "~/.config/waybar/scripts/page.sh 9", - "exec-persistent": true, - "return-type": "json" - }, - "custom/page10": { - "exec": "~/.config/waybar/scripts/page.sh 10", - "exec-persistent": true, - "return-type": "json" - }, + "custom/group1": { + "exec": "~/.config/waybar/scripts/groups.sh 1", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 1" + }, + "custom/group2": { + "exec": "~/.config/waybar/scripts/groups.sh 2", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 2" + }, + "custom/group3": { + "exec": "~/.config/waybar/scripts/groups.sh 3", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 3" + }, + "custom/group4": { + "exec": "~/.config/waybar/scripts/groups.sh 4", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 4" + }, + "custom/group5": { + "exec": "~/.config/waybar/scripts/groups.sh 5", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 5" + }, + "custom/group6": { + "exec": "~/.config/waybar/scripts/groups.sh 6", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 6" + }, + "custom/group7": { + "exec": "~/.config/waybar/scripts/groups.sh 7", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 7" + }, + "custom/group8": { + "exec": "~/.config/waybar/scripts/groups.sh 8", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 8" + }, + "custom/group9": { + "exec": "~/.config/waybar/scripts/groups.sh 9", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 9" + }, + "custom/group10": { + "exec": "~/.config/waybar/scripts/groups.sh 10", + "return-type": "json", + "interval": 1, + "on-click": "~/.config/waybar/scripts/groups.sh click 10" + }, + + // "custom/page1": { + // "exec": "~/.config/waybar/scripts/page.sh 1", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page2": { + // "exec": "~/.config/waybar/scripts/page.sh 2", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page3": { + // "exec": "~/.config/waybar/scripts/page.sh 3", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page4": { + // "exec": "~/.config/waybar/scripts/page.sh 4", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page5": { + // "exec": "~/.config/waybar/scripts/page.sh 5", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page6": { + // "exec": "~/.config/waybar/scripts/page.sh 6", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page7": { + // "exec": "~/.config/waybar/scripts/page.sh 7", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page8": { + // "exec": "~/.config/waybar/scripts/page.sh 8", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page9": { + // "exec": "~/.config/waybar/scripts/page.sh 9", + // "exec-persistent": true, + // "return-type": "json" + // }, + // "custom/page10": { + // "exec": "~/.config/waybar/scripts/page.sh 10", + // "exec-persistent": true, + // "return-type": "json" + // }, "hyprland/window": { "format": "{title}", "max-length": 60 }, // "tray": { "icon-size": 16, "spacing": 6 }, diff --git a/roles/hyprland/files/waybar/scripts/groups.sh b/roles/hyprland/files/waybar/scripts/groups.sh new file mode 100755 index 0000000..50c8aa2 --- /dev/null +++ b/roles/hyprland/files/waybar/scripts/groups.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +current=$(hyprctl activeworkspace -j | jq -r '.id') + +if [ "$1" = "click" ]; then + group=$2 + start=$(( (group - 1) * 3 + 1 )) + + hyprctl --batch " \ + dispatch focusmonitor DP-1; dispatch workspace $start; \ + dispatch focusmonitor DP-2; dispatch workspace $((start+1)); \ + dispatch focusmonitor HDMI-A-2; dispatch workspace $((start+2)); \ + dispatch focusmonitor DP-1" + +else + # Display button state + group=$1 + start=$(( (group - 1) * 3 + 1 )) + end=$(( start + 2 )) + case $group in + 1) range="1-3"; icon="" ;; + 2) range="4-6"; icon="" ;; + 3) range="7-9"; icon="" ;; + 4) range="10-12"; icon="" ;; + 5) range="13-15"; icon="" ;; + 6) range="16-18"; icon="" ;; + 7) range="19-21"; icon="" ;; + 8) range="22-24"; icon="" ;; + 9) range="25-27"; icon="󰝚" ;; + 10) range="28-30"; icon="" ;; + esac + + if [ $current -ge $start ] && [ $current -le $end ]; then + # Active group - return with active class + echo "{\"text\": \"$icon\", \"class\": \"active\"}" + else + # Inactive group + echo "{\"text\": \"$icon\", \"class\": \"inactive\"}" + fi +fi diff --git a/roles/hyprland/files/waybar/scripts/page.sh b/roles/hyprland/files/waybar/scripts/page.sh deleted file mode 100755 index 246e400..0000000 --- a/roles/hyprland/files/waybar/scripts/page.sh +++ /dev/null @@ -1,150 +0,0 @@ -#!/usr/bin/env bash -# page.sh 1‒10 – Waybar “page” indicator -# deps: socat, awk, sed, grep - -page=$1 -icons=( "" "" "" "" "" "" "" "" "" "" "󰝚" ) - -to_page() { - (( $1 <= 3 )) && echo 1 && return - (( $1 <= 6 )) && echo 2 && return - (( $1 <= 9 )) && echo 3 && return - (( $1 <= 12 )) && echo 4 && return - (( $1 <= 15 )) && echo 5 && return - (( $1 <= 18 )) && echo 6 && return - (( $1 <= 21 )) && echo 7 && return - (( $1 <= 24 )) && echo 8 && return - (( $1 <= 27 )) && echo 9 && return - echo 10 -} - -# Return 0 if THIS page has at least one window, else 1 -is_occupied() { - # Get workspace id + windows count pairs from JSON - # Example snippets: {"id":1,"windows":3, ...} - while read -r id windows; do - (( $(to_page "$id") == page )) && (( windows > 0 )) && return 0 - done < <( - hyprctl -j workspaces \ - | grep -o '"id":[0-9]\+|"windows":[0-9]\+' \ - | sed -n 'N;s/"id":\([0-9]\+\)\n"windows":\([0-9]\+\)/\1 \2/p' - ) - return 1 -} - -emit() { - local classes=() - if (( $1 == page )); then - classes+=(active) - else - is_occupied && classes+=(occupied) - fi - - if ((${#classes[@]})); then - printf '{"text":"%s","class":"%s"}\n' \ - "${icons[page]}" "$(IFS=' '; echo "${classes[*]}")" - else - printf '{"text":"%s"}\n' "${icons[page]}" - fi -} - -# Initial state -active_ws=$(hyprctl activeworkspace | awk '/^ID /{print $2}') -current_page=$(to_page "${active_ws:-1}") -emit "$current_page" -current_occ=$(is_occupied && echo 1 || echo 0) - -# Live updates -socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" -socat -U - UNIX-CONNECT:"$socket" | while read -r line; do - [[ $line =~ ^(workspace|openwindow|closewindow|movewindow) ]] || continue - if [[ $line == workspace* ]]; then - ws=${line#*>>}; ws=${ws%% *} - new_page=$(to_page "$ws") - else - new_page=$current_page - fi - new_occ=$(is_occupied && echo 1 || echo 0) - if (( new_page != current_page || new_occ != current_occ )); then - emit "$new_page" - current_page=$new_page - current_occ=$new_occ - fi -done - - -# # page.sh 1‒10 – Waybar “page” indicator -# # deps: socat, awk • (still no jq) -# -# page=$1 # this script instance’s page (1‒10) -# -# # ── icon lookup table ──────────────────────────────────────────── -# icons=( "" "" "" "" "" "" "" "" "" "" "󰝚" ) -# -# # map numeric workspace → page (1‒10) -# to_page() { -# (( $1 <= 3 )) && echo 1 && return -# (( $1 <= 6 )) && echo 2 && return -# (( $1 <= 9 )) && echo 3 && return -# (( $1 <= 12 )) && echo 4 && return -# (( $1 <= 15 )) && echo 5 && return -# (( $1 <= 18 )) && echo 6 && return -# (( $1 <= 21 )) && echo 7 && return -# (( $1 <= 24 )) && echo 8 && return -# (( $1 <= 27 )) && echo 9 && return -# echo 10 -# } -# -# # does THIS page contain at least one window? -# is_occupied() { -# while read -r ws_id; do -# (( $(to_page "$ws_id") == page )) && return 0 -# done < <(hyprctl clients | awk '/workspace:/ {print $2}') -# return 1 -# } -# -# emit() { -# local classes=() -# -# if (( $1 == page )); then # ← is THIS instance the active page? -# classes+=(active) # yes → mark it only “active” -# else -# is_occupied && classes+=(occupied) # no → maybe “occupied” -# fi -# -# if ((${#classes[@]})); then -# printf '{"text":"%s","class":"%s"}\n' \ -# "${icons[page]}" "$(IFS=' '; echo "${classes[*]}")" -# else -# printf '{"text":"%s"}\n' "${icons[page]}" -# fi -# } -# -# # ── initial state ──────────────────────────────────────────────── -# active_ws=$(hyprctl activeworkspace | awk '/^ID /{print $2}') -# current_page=$(to_page "${active_ws:-1}") -# emit "$current_page" -# current_occ=$(is_occupied && echo 1 || echo 0) -# -# # ── live updates via Hyprland socket2 ─────────────────────────── -# socket="$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" -# socat -U - UNIX-CONNECT:"$socket" | while read -r line; do -# [[ $line =~ ^(workspace|openwindow|closewindow) ]] || continue -# -# # recompute state if anything relevant changed -# if [[ $line == workspace* ]]; then -# ws=${line#*>>}; ws=${ws%% *} -# new_page=$(to_page "$ws") -# else -# new_page=$current_page -# fi -# new_occ=$(is_occupied && echo 1 || echo 0) -# -# # update Waybar only when something actually changed -# if (( new_page != current_page || new_occ != current_occ )); then -# emit "$new_page" -# current_page=$new_page -# current_occ=$new_occ -# fi -# done -# diff --git a/roles/hyprland/files/waybar/style.css b/roles/hyprland/files/waybar/style.css index 480cb85..6b90f27 100644 --- a/roles/hyprland/files/waybar/style.css +++ b/roles/hyprland/files/waybar/style.css @@ -13,7 +13,7 @@ window#waybar { background: @glass; color: @fg; border-radius: 12px; - margin: 6px 8px; + /* margin: 6px 8px; */ border: none; /* ← removed border */ box-shadow: 0 10px 34px rgba(0,0,0,0.34); -gtk-outline-radius: 12px; @@ -45,38 +45,29 @@ window#waybar { padding: 0 4px; } -/* --- PAGE BUTTONS --------------------------------------------------------- */ -#custom-page1, #custom-page2, #custom-page3, #custom-page4, #custom-page5, -#custom-page6, #custom-page7, #custom-page8, #custom-page9, #custom-page10 { +/* --- group BUTTONS --------------------------------------------------------- */ +#custom-group1, #custom-group2, #custom-group3, #custom-group4, #custom-group5, +#custom-group6, #custom-group7, #custom-group8, #custom-group9, #custom-group10 { background: transparent; min-width: 18px; padding-left: 2px; - color: @fg_dim; + /* color: @fg_dim; */ } -/* Active page: glass chip, no border */ -#custom-page1.active, #custom-page2.active, #custom-page3.active, #custom-page4.active, -#custom-page5.active, #custom-page6.active, #custom-page7.active, #custom-page8.active, -#custom-page9.active, #custom-page10.active { +/* Active group: glass chip, no border */ +#custom-group1.active, #custom-group2.active, #custom-group3.active, #custom-group4.active, +#custom-group5.active, #custom-group6.active, #custom-group7.active, #custom-group8.active, +#custom-group9.active, #custom-group10.active { background: @glass_strong; border-radius: 8px; - color: @fg; + color: #a8557f; box-shadow: inset 0 0 0 9999px rgba(255,255,255,0.015); } -/* Occupied (not active): cyan glyph */ -#custom-page1.occupied:not(.active), #custom-page2.occupied:not(.active), -#custom-page3.occupied:not(.active), #custom-page4.occupied:not(.active), -#custom-page5.occupied:not(.active), #custom-page6.occupied:not(.active), -#custom-page7.occupied:not(.active), #custom-page8.occupied:not(.active), -#custom-page9.occupied:not(.active), #custom-page10.occupied:not(.active) { - color: @accent2; -} - /* Hover feedback (very light) */ -#custom-page1:hover, #custom-page2:hover, #custom-page3:hover, #custom-page4:hover, -#custom-page5:hover, #custom-page6:hover, #custom-page7:hover, #custom-page8:hover, -#custom-page9:hover, #custom-page10:hover { +#custom-group1:hover, #custom-group2:hover, #custom-group3:hover, #custom-group4:hover, +#custom-group5:hover, #custom-group6:hover, #custom-group7:hover, #custom-group8:hover, +#custom-group9:hover, #custom-group10:hover { background: rgba(255,255,255,0.03); border-radius: 8px; } @@ -118,17 +109,3 @@ window#waybar { /* text-align: center; */ } -.workspace.occupied { - color: #a855f7; /* purple for occupied workspaces */ - border-color: #a855f7; -} - -.workspace.focused { - background-color: rgba(168, 85, 247, 0.2); /* light purple background for focused */ - color: #a855f7; - border-color: #a855f7; -} - -.workspace:hover { - background-color: rgba(168, 85, 247, 0.1); -} From 9c3f47615b5b499d4a928f810442a02fdd4d9016 Mon Sep 17 00:00:00 2001 From: Johannes Knopp Date: Sat, 13 Sep 2025 17:33:02 +0200 Subject: [PATCH 7/7] move to 1 workspace per window conf; adapt waybar accordingly --- roles/hyprland/files/hypr/hyprland.conf | 169 +--------------------- roles/hyprland/files/hypr/workspaces.conf | 34 +++++ roles/hyprland/files/waybar/config.jsonc | 145 +++++-------------- roles/hyprland/files/waybar/style.css | 89 +++++------- 4 files changed, 109 insertions(+), 328 deletions(-) diff --git a/roles/hyprland/files/hypr/hyprland.conf b/roles/hyprland/files/hypr/hyprland.conf index 4614cc3..92ab65e 100644 --- a/roles/hyprland/files/hypr/hyprland.conf +++ b/roles/hyprland/files/hypr/hyprland.conf @@ -5,43 +5,7 @@ # See https://wiki.hypr.land/Configuring/Monitors/ monitor=,preferred,auto,auto source = ./monitors.conf -# monitor = DP-2, 2560x1440@165, 0x0, 1 -# monitor = DP-1, 2560x1440@165, 2560x0, 1 -# monitor = HDMI-A-2, 1920x1080@60, 5120x-360, 1, transform, 3 - -workspace = 1, monitor:DP-1, persistent:true, default:true -workspace = 4, monitor:DP-1, persistent:true -workspace = 7, monitor:DP-1, persistent:true -workspace = 10, monitor:DP-1, persistent:true -workspace = 13, monitor:DP-1, persistent:true -workspace = 16, monitor:DP-1, persistent:true -workspace = 19, monitor:DP-1, persistent:true -workspace = 22, monitor:DP-1, persistent:true -workspace = 25, monitor:DP-1, persistent:true -workspace = 28, monitor:DP-1, persistent:true - -workspace = 2, monitor:HDMI-A-2, persistent:true, default:true -workspace = 5, monitor:HDMI-A-2, persistent:true -workspace = 8, monitor:HDMI-A-2, persistent:true -workspace = 11, monitor:HDMI-A-2, persistent:true -workspace = 14, monitor:HDMI-A-2, persistent:true -workspace = 17, monitor:HDMI-A-2, persistent:true -workspace = 20, monitor:HDMI-A-2, persistent:true -workspace = 23, monitor:HDMI-A-2, persistent:true -workspace = 26, monitor:HDMI-A-2, persistent:true -workspace = 29, monitor:HDMI-A-2, persistent:true - -workspace = 3, monitor:DP-2, persistent:true, default:true -workspace = 6, monitor:DP-2, persistent:true -workspace = 9, monitor:DP-2, persistent:true -workspace = 12, monitor:DP-2, persistent:true -workspace = 15, monitor:DP-2, persistent:true -workspace = 18, monitor:DP-2, persistent:true -workspace = 21, monitor:DP-2, persistent:true -workspace = 24, monitor:DP-2, persistent:true -workspace = 27, monitor:DP-2, persistent:true -workspace = 30, monitor:DP-2, persistent:true - +source = ./workspaces.conf ################### ### MY PROGRAMS ### @@ -49,7 +13,6 @@ workspace = 30, monitor:DP-2, persistent:true # See https://wiki.hypr.land/Configuring/Keywords/ -# Set programs that you use $terminal = ghostty $fileManager = thunar $menu = wofi --show drun @@ -171,7 +134,6 @@ layerrule = ignorezero, wofi # keep blur even on near-opaque colors layerrule = dimaround, wofi # optional: dim background behind wofi layerrule = ignorealpha 0.90, wofi # target overall opacity for the layer - # waybar layerrule = blur, waybar layerrule = ignorealpha 0.15, waybar @@ -286,132 +248,6 @@ bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d -# Switch workspaces with mainMod + [0-9] -# -------- PAGE 1 → 1-2-3 -bind = SUPER, 1, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 1; \ - dispatch focusmonitor DP-2; dispatch workspace 2; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 2, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 4; \ - dispatch focusmonitor DP-2; dispatch workspace 5; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 3, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 7; \ - dispatch focusmonitor DP-2; dispatch workspace 8; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 4, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 10; \ - dispatch focusmonitor DP-2; dispatch workspace 11; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 5, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 13; \ - dispatch focusmonitor DP-2; dispatch workspace 14; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 6, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 16; \ - dispatch focusmonitor DP-2; dispatch workspace 17; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 7, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 19; \ - dispatch focusmonitor DP-2; dispatch workspace 20; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 8, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 22; \ - dispatch focusmonitor DP-2; dispatch workspace 23; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 9, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 25; \ - dispatch focusmonitor DP-2; dispatch workspace 26; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ - dispatch focusmonitor DP-1" - -bind = SUPER, 0, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 28; \ - dispatch focusmonitor DP-2; dispatch workspace 29; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ - dispatch focusmonitor DP-1" - -bind = SUPER SHIFT, 1, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 1; \ - dispatch focusmonitor DP-2; dispatch workspace 2; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 3; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 2, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 4; \ - dispatch focusmonitor DP-2; dispatch workspace 5; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 6; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 3, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 7; \ - dispatch focusmonitor DP-2; dispatch workspace 8; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 9; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 4, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 10; \ - dispatch focusmonitor DP-2; dispatch workspace 11; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 12; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 5, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 13; \ - dispatch focusmonitor DP-2; dispatch workspace 14; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 15; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 6, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 16; \ - dispatch focusmonitor DP-2; dispatch workspace 17; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 18; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 7, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 19; \ - dispatch focusmonitor DP-2; dispatch workspace 20; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 21; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 8, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 22; \ - dispatch focusmonitor DP-2; dispatch workspace 23; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 24; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 9, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 25; \ - dispatch focusmonitor DP-2; dispatch workspace 26; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 27; \ - dispatch focusmonitor DP-1" -bind = SUPER SHIFT, 0, exec, hyprctl --batch " \ - dispatch focusmonitor DP-1; dispatch workspace 28; \ - dispatch focusmonitor DP-2; dispatch workspace 29; \ - dispatch focusmonitor HDMI-A-2; dispatch workspace 30; \ - dispatch focusmonitor DP-1" - - - -bind = $mainMod SHIFT, 1, movetoworkspace, 1 -bind = $mainMod SHIFT, 2, movetoworkspace, 4 -bind = $mainMod SHIFT, 3, movetoworkspace, 7 -bind = $mainMod SHIFT, 4, movetoworkspace, 10 -bind = $mainMod SHIFT, 5, movetoworkspace, 13 -bind = $mainMod SHIFT, 6, movetoworkspace, 16 -bind = $mainMod SHIFT, 7, movetoworkspace, 19 -bind = $mainMod SHIFT, 8, movetoworkspace, 22 -bind = $mainMod SHIFT, 9, movetoworkspace, 25 -bind = $mainMod SHIFT, 0, movetoworkspace, 28 - bind = $mainMod SHIFT, left, movewindow, l bind = $mainMod SHIFT, right, movewindow, r bind = $mainMod SHIFT, up, movewindow, u @@ -446,6 +282,7 @@ bind = CTRL ALT, Up, exec, playerctl --player=spotify volume 0.05+ bind = CTRL ALT, Down, exec, playerctl --player=spotify volume 0.05- bind = ,F7,pass,class:^(discord)$ +bind = ,F8,pass,class:^(discord)$ # Printscreen # Screenshot a selected region (interactive) @@ -453,7 +290,7 @@ bind = ,F7,pass,class:^(discord)$ bind = , Print, exec, hyprshot -zm region ############################## -### WINDOWS AND WORKSPACES ### +### WINDOWRULES ### ############################## # See https://wiki.hypr.land/Configuring/Window-Rules/ for more diff --git a/roles/hyprland/files/hypr/workspaces.conf b/roles/hyprland/files/hypr/workspaces.conf index e69de29..ba4b7c3 100644 --- a/roles/hyprland/files/hypr/workspaces.conf +++ b/roles/hyprland/files/hypr/workspaces.conf @@ -0,0 +1,34 @@ +$mainMod = SUPER # Sets "Super" key as main modifier + +workspace = 1, monitor:DP-1, persistent:true, default:true +workspace = 2, monitor:DP-1, persistent:true +workspace = 3, monitor:DP-1, persistent:true +workspace = 4, monitor:DP-2, persistent:true, default:true +workspace = 5, monitor:DP-2, persistent:true +workspace = 6, monitor:DP-2, persistent:true +workspace = 7, monitor:HDMI-A-2, persistent:true, default:true +workspace = 8, monitor:HDMI-A-2, persistent:true +workspace = 9, monitor:HDMI-A-2, persistent:true +workspace = 10, monitor:HDMI-A-1, persistent:true, default:true + +bind = $mainMod, 1, exec, hyprctl --batch "dispatch focusmonitor DP-1; dispatch workspace 1;" +bind = $mainMod, 2, exec, hyprctl --batch "dispatch focusmonitor DP-1; dispatch workspace 2;" +bind = $mainMod, 3, exec, hyprctl --batch "dispatch focusmonitor DP-1; dispatch workspace 3;" +bind = $mainMod, 4, exec, hyprctl --batch "dispatch focusmonitor DP-2; dispatch workspace 4;" +bind = $mainMod, 5, exec, hyprctl --batch "dispatch focusmonitor DP-2; dispatch workspace 5;" +bind = $mainMod, 6, exec, hyprctl --batch "dispatch focusmonitor DP-2; dispatch workspace 6;" +bind = $mainMod, 7, exec, hyprctl --batch "dispatch focusmonitor HDMI-A-2; dispatch workspace 7;" +bind = $mainMod, 8, exec, hyprctl --batch "dispatch focusmonitor HDMI-A-2; dispatch workspace 8;" +bind = $mainMod, 9, exec, hyprctl --batch "dispatch focusmonitor HDMI-A-2; dispatch workspace 9;" +bind = $mainMod, 0, exec, hyprctl --batch "dispatch focusmonitor HDMI-A-1; dispatch workspace 10;" + +bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1 +bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2 +bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3 +bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4 +bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5 +bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6 +bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7 +bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8 +bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9 +bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10 diff --git a/roles/hyprland/files/waybar/config.jsonc b/roles/hyprland/files/waybar/config.jsonc index 1cb4e03..34693fd 100644 --- a/roles/hyprland/files/waybar/config.jsonc +++ b/roles/hyprland/files/waybar/config.jsonc @@ -9,124 +9,45 @@ "margin-bottom": 0, /* order: 1-2-3 | window-title | tray + clock */ - "modules-left": [ "custom/group1", "custom/group2", "custom/group3", "custom/group4","custom/group5","custom/group6","custom/group7","custom/group8","custom/group9","custom/group10"], + // "modules-left": [ "custom/group1", "custom/group2", "custom/group3", "custom/group4","custom/group5","custom/group6","custom/group7","custom/group8","custom/group9","custom/group10"], + "modules-left": ["hyprland/workspaces"], "modules-center": [ "hyprland/window" ], "modules-right": [ "tray", "custom/separator", "network", "bluetooth", "custom/separator", "disk", "cpu", "memory", "pulseaudio", "custom/separator", "clock"], - "custom/group1": { - "exec": "~/.config/waybar/scripts/groups.sh 1", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 1" - }, - "custom/group2": { - "exec": "~/.config/waybar/scripts/groups.sh 2", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 2" - }, - "custom/group3": { - "exec": "~/.config/waybar/scripts/groups.sh 3", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 3" - }, - "custom/group4": { - "exec": "~/.config/waybar/scripts/groups.sh 4", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 4" - }, - "custom/group5": { - "exec": "~/.config/waybar/scripts/groups.sh 5", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 5" - }, - "custom/group6": { - "exec": "~/.config/waybar/scripts/groups.sh 6", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 6" - }, - "custom/group7": { - "exec": "~/.config/waybar/scripts/groups.sh 7", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 7" - }, - "custom/group8": { - "exec": "~/.config/waybar/scripts/groups.sh 8", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 8" - }, - "custom/group9": { - "exec": "~/.config/waybar/scripts/groups.sh 9", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 9" - }, - "custom/group10": { - "exec": "~/.config/waybar/scripts/groups.sh 10", - "return-type": "json", - "interval": 1, - "on-click": "~/.config/waybar/scripts/groups.sh click 10" - }, - // "custom/page1": { - // "exec": "~/.config/waybar/scripts/page.sh 1", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page2": { - // "exec": "~/.config/waybar/scripts/page.sh 2", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page3": { - // "exec": "~/.config/waybar/scripts/page.sh 3", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page4": { - // "exec": "~/.config/waybar/scripts/page.sh 4", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page5": { - // "exec": "~/.config/waybar/scripts/page.sh 5", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page6": { - // "exec": "~/.config/waybar/scripts/page.sh 6", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page7": { - // "exec": "~/.config/waybar/scripts/page.sh 7", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page8": { - // "exec": "~/.config/waybar/scripts/page.sh 8", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page9": { - // "exec": "~/.config/waybar/scripts/page.sh 9", - // "exec-persistent": true, - // "return-type": "json" - // }, - // "custom/page10": { - // "exec": "~/.config/waybar/scripts/page.sh 10", - // "exec-persistent": true, - // "return-type": "json" - // }, + "hyprland/workspaces": { + "disable-scroll": true, + "all-outputs": true, + "warp-on-scroll": false, + "format": "{icon}", + "format-icons": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "0" + }, + "persistent-workspaces": { + "1": [], + "2": [], + "3": [], + "4": [], + "5": [], + "6": [], + "7": [], + "8": [], + "9": [], + "10": [] + } + }, + "hyprland/window": { "format": "{title}", "max-length": 60 }, - // "tray": { "icon-size": 16, "spacing": 6 }, "tray": { "icon-size": 16, "spacing": 10 }, "pulseaudio": { diff --git a/roles/hyprland/files/waybar/style.css b/roles/hyprland/files/waybar/style.css index 6b90f27..eb9c920 100644 --- a/roles/hyprland/files/waybar/style.css +++ b/roles/hyprland/files/waybar/style.css @@ -1,12 +1,11 @@ -/* ==== Waybar GTK CSS: Cosmic glass (v2 lighter) ================= */ - /* Palette */ -@define-color glass rgba(12, 14, 20, 0.34); /* was 0.62 → much more transparent */ -@define-color glass_strong rgba(12, 14, 20, 0.46); /* chips / active */ +@define-color glass rgba(12, 14, 20, 0.34); +@define-color glass_strong rgba(12, 14, 20, 0.46); @define-color fg #DDE1EA; @define-color fg_dim #B8BECC; @define-color accent1 #7F5AF0; @define-color accent2 #00D1FF; +@define-color occupied #a8557f; /* Whole bar: more vertical padding, no border, stronger shadow */ window#waybar { @@ -19,7 +18,6 @@ window#waybar { -gtk-outline-radius: 12px; } -/* Global typography: Roboto Mono Nerd Font */ * { border: none; padding: 2px 6px; @@ -45,33 +43,6 @@ window#waybar { padding: 0 4px; } -/* --- group BUTTONS --------------------------------------------------------- */ -#custom-group1, #custom-group2, #custom-group3, #custom-group4, #custom-group5, -#custom-group6, #custom-group7, #custom-group8, #custom-group9, #custom-group10 { - background: transparent; - min-width: 18px; - padding-left: 2px; - /* color: @fg_dim; */ -} - -/* Active group: glass chip, no border */ -#custom-group1.active, #custom-group2.active, #custom-group3.active, #custom-group4.active, -#custom-group5.active, #custom-group6.active, #custom-group7.active, #custom-group8.active, -#custom-group9.active, #custom-group10.active { - background: @glass_strong; - border-radius: 8px; - color: #a8557f; - box-shadow: inset 0 0 0 9999px rgba(255,255,255,0.015); -} - -/* Hover feedback (very light) */ -#custom-group1:hover, #custom-group2:hover, #custom-group3:hover, #custom-group4:hover, -#custom-group5:hover, #custom-group6:hover, #custom-group7:hover, #custom-group8:hover, -#custom-group9:hover, #custom-group10:hover { - background: rgba(255,255,255,0.03); - border-radius: 8px; -} - /* Tray tweaks */ #tray { margin-right: 0px; } #tray * { padding-left: 0px; padding-right: 0px; } @@ -88,24 +59,42 @@ window#waybar { #tray menu menuitem { padding: 6px 12px; } #tray menu menuitem:hover { background: alpha(@accent1, 0.16); } - - -#custom-hyprland-workspaces { - padding: 0; - margin: 0 4px; -} - -.workspace { - /* display: inline-block; */ - padding: 4px 8px; - margin: 0 2px; - border-radius: 4px; - color: #e6e6e6; /* off-white for empty workspaces */ +#workspaces button { + padding: 0 8px; background-color: transparent; - border: 1px solid #444; - /* cursor: pointer; */ - transition: all 0.2s ease; - min-width: 20px; - /* text-align: center; */ + color: #6c7086; + border-radius: 3px; + margin: 2px; + transition: all 0.2s ease-in-out; +} + +/* Hover effect */ +#workspaces button:hover { + background-color: #74c7ec; + color: #1e1e2e; +} + +#workspaces button:not(.active):not(.empty) { + color: #cdd6f4; + background-color: #585b70; +} + +/* Active/focused workspace */ +#workspaces button.active { + color: #1e1e2e; + background-color: @occupied; + font-weight: bold; +} + +#workspaces button.visible { + color: #f9e2af; + /* background-color: #45475a; */ + border: 1px solid #f9e2af; +} + +/* Default state for persistent workspaces */ +#workspaces button { + color: #6c7086; + background-color: @glass; }