Init (after stash)

This commit is contained in:
Kyattsukuro 2026-05-03 03:15:01 +02:00
commit 740c556ffd
2054 changed files with 12593384 additions and 0 deletions

30
.gitignore vendored Normal file
View File

@ -0,0 +1,30 @@
/.deployed_cache
**/cache*
**/*.log
**/logs
**/tmp/
/.git
/.yolk_git
**/Cache*
eggs/i2p_librewolf/profile/*
!eggs/i2p_librewolf/profile/settings
!eggs/i2p_librewolf/profile/extensions
!eggs/i2p_librewolf/profile/extension-preferences.json
!eggs/i2p_librewolf/profile/extension-settings.json
!eggs/i2p_librewolf/profile/extensions.json
!eggs/i2p_librewolf/profile/addons.json
!eggs/i2p_librewolf/profile/prefs.js
eggs/libreoffice/4/user/backup
eggs/libreoffice/4/user/store
eggs/logseq/logseq/git
eggs/logseq/logseq/graphs
eggs/qimgv/savedState.conf
# Sunshine secrets
eggs/sunshine/sunshine_state.json
eggs/sunshine/credentials/cakey.pem
eggs/sunshine/credentials/cacert.pem

6
.gitmodules vendored Normal file
View File

@ -0,0 +1,6 @@
[submodule "eggs/vim/pack/vim-wayland-clipboard"]
path = eggs/vim/pack/vim-wayland-clipboard
url = https://github.com/jasonccox/vim-wayland-clipboard.git
[submodule "eggs/utility/nem"]
path = eggs/utility/nem
url = git@git.urmel.de:Kyattsukuro/nixos-managed-env.git

19
README.md Normal file
View File

@ -0,0 +1,19 @@
# dotfiles
This repository contains dotfiles for two separate systems. Based on the hostname the appropriate configuration is applied. (When no hostname matches, nix is not buildable and yolk uses a minimal shared configurations).
**Hostnames**
- nixMain (Hyprland, desktop optimised)
- nixLap (KDE, 2-in-1 Notebook optimised)
Deployment:
*assuming a valid hostname is used*
1. Clone the Repository
2. Build the system: `bash use_nix.sh --first-run --rebuild`
3. Setup user config: `yolk sync -v`
### Notes:
Used as kde config finder, in `~./config` and `~./local/share`:
- `find . -type f -regex '.*\(k\|rc\|pulse\|session\|gtk\|autostart\|xbel\).*'`

BIN
eggs/assets/Alacritty.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
eggs/assets/Code.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
eggs/assets/arch-maron.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
eggs/assets/cloudy.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

BIN
eggs/assets/def_window.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

BIN
eggs/assets/no-notification.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

BIN
eggs/assets/pause.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
eggs/assets/play.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

BIN
eggs/assets/volume-down.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

BIN
eggs/assets/volume-mute.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
eggs/assets/volume-up.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

BIN
eggs/assets/wallpaper/Bridge.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 KiB

BIN
eggs/assets/wallpaper/Rem.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 KiB

BIN
eggs/assets/wallpaper/Rin.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 788 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

BIN
eggs/assets/wallpaper/bg-dp1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

BIN
eggs/assets/wallpaper/bg-dp2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
eggs/dconfNixMain/user Normal file

Binary file not shown.

467
eggs/dunst/dunstrc Executable file
View File

@ -0,0 +1,467 @@
# See dunst(5) for all configuration options
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 1
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
### Geometry ###
# dynamic width from 0 to 300
# width = (0, 300)
# constant width of 300
width = (300, 600)
# The maximum height of a single notification, excluding the frame.
height = 300
# Position the notification in the top right corner
origin = top-right
# Offset from the origin
offset = 10x10
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 20
### Progress bar ###
# Turn on the progess bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 13
# Set the frame width of the progress bar
progress_bar_frame_width = 2
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 500
# Corner radius for the progress bar. 0 disables rounded corners.
progress_bar_corner_radius = 5
# Corner radius for the icon image.
icon_corner_radius = 12
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
transparency = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 8
# Padding between text and icon.
text_icon_padding = 5
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 3
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = frame
# Sort messages by urgency.
sort = no
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
# idle_threshold = 120
### Text ###
font = DejaVuSansM Nerd Font
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed, see https://docs.gtk.org/Pango/pango_markup.html
format = "<span color='#ea999c' size='10pt'>%a</span>\n<span size='12.5pt' color='#c6d0f5' weight='bold'>%s</span>\n<span size='10pt' color='#a5adce'>%b</span>\n<span color='#ca9ee6'>%p</span>"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Recursive icon lookup. You can set a single theme, instead of having to
# define all lookup paths.
enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup)
icon_theme = Adwaita
# You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze"
# Align icons left/right/top/off
icon_position = right
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128
# Paths to default icons (only neccesary when not using recursive icon lookup)
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
default_icon = /home/someone/.config/assets/def_window.png
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/rofi -dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/firefox
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
# Define the title of the windows spawned by dunst
title = Dunst
# Define the class of the windows spawned by dunst
class = Dunst
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 10
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = do_action
mouse_middle_click = context
mouse_right_click = close_current
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[global]
separator_color= frame
# Defines color of the frame around the notification window.
frame_color = "#ca9ee6"
# Progress bar Color
highlight = "#8caaee"
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#292c3c"
foreground = "#C6D0F5"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_normal]
background = "#292c3c"
foreground = "#C6D0F5"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_critical]
background = "#292c3c"
foreground = "#C6D0F5"
frame_color = "#EF9F76"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg

1
eggs/fonts/.uuid Normal file
View File

@ -0,0 +1 @@
5d0d4031-6c0d-4928-bf8d-63c20ef8e236

BIN
eggs/fonts/Gilroy-Black.otf Normal file

Binary file not shown.

Binary file not shown.

BIN
eggs/fonts/Gilroy-Bold.otf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
eggs/fonts/Gilroy-Light.otf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
eggs/fonts/Hind-Bold.otf Normal file

Binary file not shown.

BIN
eggs/fonts/Hind-Regular.otf Normal file

Binary file not shown.

Binary file not shown.

BIN
eggs/fonts/calibri-bold.ttf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
eggs/fonts/verdana-bold.ttf Normal file

Binary file not shown.

BIN
eggs/fonts/verdana.ttf Normal file

Binary file not shown.

3
eggs/git/.gitconfig Normal file
View File

@ -0,0 +1,3 @@
[user]
name = Kyattsukuro
email = nikl.free44@gmail.com

66
eggs/htop/htoprc Executable file
View File

@ -0,0 +1,66 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
htop_version=3.3.0
config_reader_min_version=3
fields=0 48 2 17 18 38 39 47 46 50 111 125 49 1
hide_kernel_threads=0
hide_userland_threads=0
hide_running_in_container=0
shadow_other_users=0
show_thread_names=1
show_program_path=1
highlight_base_name=1
highlight_deleted_exe=1
shadow_distribution_path_prefix=0
highlight_megabytes=1
highlight_threads=1
highlight_changes=0
highlight_changes_delay_secs=6
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
header_margin=1
screen_tabs=1
detailed_cpu_time=1
cpu_count_from_one=0
show_cpu_usage=1
show_cpu_frequency=1
show_cpu_temperature=1
degree_fahrenheit=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
enable_mouse=1
delay=15
hide_function_bar=1
topology_affinity=0
header_layout=three_33_34_33
column_meters_0=System LeftCPUs2 CPU MemorySwap
column_meter_modes_0=2 1 1 1
column_meters_1=Hostname RightCPUs2 DiskIO NetworkIO
column_meter_modes_1=2 1 2 2
column_meters_2=DateTime RightCPUs2 Tasks SystemdUser
column_meter_modes_2=2 1 2 2
tree_view=0
sort_key=46
tree_sort_key=1
sort_direction=-1
tree_sort_direction=-1
tree_view_always_by_pid=0
all_branches_collapsed=0
screen:Main=PID USER STATE PRIORITY NICE M_VIRT M_RESIDENT PERCENT_MEM PERCENT_CPU NLWP IO_RATE CWD TIME Command
.sort_key=PERCENT_CPU
.tree_sort_key=Command
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=-1
.tree_sort_direction=-1
.all_branches_collapsed=0
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
.sort_key=IO_RATE
.tree_sort_key=PID
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=-1
.tree_sort_direction=1
.all_branches_collapsed=0

9
eggs/hypr/hypr-colors.conf Executable file
View File

@ -0,0 +1,9 @@
$color_1 = 2B2724
$color_2 = 1F1919
$color_3 = F2BD95
$color_4 = 63aec0
$color_5 = e25987
$color_6 = 638AA7
$color_7 = 638AA7
$color_8 = FDDCA9
$color_9 = FFFFFF

10
eggs/hypr/hypridle.conf Executable file
View File

@ -0,0 +1,10 @@
listener {
timeout = 600 # 10min
on-timeout = bash $HOME/Builds/microscripts/sleep.sh
}
listener {
timeout = 3600 # 60min
on-timeout = systemctl hibernate # command to run when timeout has passed
}

376
eggs/hypr/hyprland.conf Executable file
View File

@ -0,0 +1,376 @@
autogenerated = 0
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=DP-2, 3440x1440@165, 0x0, 1
monitor=DP-3, 3440x1440, -3440x0, 1
#monitor=HDMI-A-1, 800x480@60, 0x-480, 1
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
# Set programs that you use
$terminal = kitty
$browser = librewolf
$fileManager = thunar
$menu = rofi
$workspace-switcher = /home/someone/Builds/microscripts/workspace_manager
$special-workspace-movment = /home/someone/Builds/microscripts/specia-workspace-movment-toggle
$kill-on-unfocus = /home/someone/Builds/microscripts/kill-on-unfocus
# Some default env vars.
env = XCURSOR_SIZE,16
env = XCURSOR_THEME,catppuccin-frappe-mauve-cursors
env = QT_QPA_PLATFORMTHEME,qt5ct # should also aply to qt6ct
env = XDG_SESSION_TYPE,wayland
env = GTK_THEME,catppuccin-frappe-mauve-standard+default
env = ICON_THEME,catppuccin-frappe-mauve-cursors
env = GNOME22_USER_DIR,/home/someone/.config/gnome2 # For nemo and other gnome 2 apps
#env = DESKTOP_SESSION,gnome # Used to let xdg-su (e.g. Yast) know use gnomesu (libgnomesu libgnomesu0)
# Fix for nvidia
#env = LIBV_DRIVER_NAME,nvidia
#env = GBM_BACKEND,nvidia-drm
#env = __GLX_VENDOR_LYBARY_NAME,nvidia
#env = WLR_NO_HARDWARE_CURSORS,1
#plugin = /run/current-system/sw/lib/libhyprspace.so
#plugin {
# overview {
# drawActiveWorkspace = true
# centerAligned = true
#
# autoDrag = true
# autoScroll = false
# showEmptyWorkspace = false
# }
#}
#bind = SUPER, code:65, overview:toggle, all
input {
kb_layout = de
kb_variant =
kb_model =
kb_options =
kb_rules =
accel_profile = flat # flat, adaptive, custom <step> <points...> e.g. Win profile 0.2 0.0 0.5 1 1.2 1.5
force_no_accel = false # Not recomended
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
follow_mouse = 2
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 10
border_size = 2
col.active_border = rgba(ca9ee6ff) rgba(8caaeeff) 90deg
col.inactive_border = rgba(232634ff)
layout = master
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false # enable if kernal >= 6.8
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 10
blur {
enabled = true
size = 3
passes = 1
}
# Deprecated drop_shadow = yes
# Deprecated shadow_range = 4
# Deprecated shadow_render_power = 3
# Deprecated col.shadow = rgba(1a1a1aee)
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_status = master
}
misc {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
force_default_wallpaper = -1 # Set to 0 to disable the anime mascot wallpapers
disable_splash_rendering = false # The splash text at the bottom
# Gaming performance
#no_direct_scanout = false
#vrr = 2 # 0 = off, 1 = on, 2 = fullscreen
}
group {
groupbar {
enabled = true
}
}
#plugin {
# overview {
# workspaceBorderSize = 4
# workspaceActiveBorder = rgba(ca9ee6ff)
# workspaceInactiveBorder = rgba(232634ff)
#
# switchOnDrop = true
# exitOnSwitch = false
# showNewWorkspace = false
# disableGestures = true
# }
#}
# Workspaces
workspace = monitor:0, name:1, default:true
workspace = monitor:0, name:2
workspace = monitor:0, name:3
workspace = monitor:0, name:4
workspace = monitor:1, name:5, default:true
workspace = monitor:1, name:6
workspace = monitor:1, name:7
workspace = monitor:1, name:8
workspace = special:scratchpad
workspace = special:scratchpad2
workspace = special:dump
# windowrule v1 https://wiki.hyprland.org/Configuring/Window-Rules/
# Allways start OpenRGB on special:dump
# Letting float, settng size and pos
windowrulev2 = float, initialClass:^(com.github.hluk.copyq)$
windowrulev2 = size 500 300, initialClass:^(com.github.hluk.copyq)$
windowrulev2 = move onscreen cursor 0 -100%, initialClass:^(com.github.hluk.copyq)$
# --- fixed pos
windowrule = size 600 300, title:(.*)(Dialect)$
windowrule = move 0 2840, title:(.*)(Dialect)$
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
# Thunar file transfer window, float top right
windowrulev2 = float, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$
windowrulev2 = move 2753 12, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$
windowrulev2 = size 450 100, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$
windowrulev2 = float, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$
windowrulev2 = move 2903 13, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$
windowrulev2 = size 450 100, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$
# Fixing steam drop down
windowrulev2 = stayfocused, title:^()$,class:^(steam)$
windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$
# Fix Screen +sharing for XWayland
# See https://wiki.hyprland.org/hyprland-wiki/pages/Useful-Utilities/Screen-Sharing/
windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$
windowrulev2 = noanim,class:^(xwaylandvideobridge)$
windowrulev2 = nofocus,class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
# Fix genishin impact, eable tearing
# brroke with 42 windowrulev2 = fakefullscreen,class:^(genshinimpact.exe)$
windowrulev2 = maximize,class:^(genshinimpact.exe)$
windowrulev2 = monitor 1,class:^(genshinimpact.exe)$
# brroke with 42 windowrulev2 = windowdance,class:^(genshinimpact.exe)$
windowrulev2 = noanim,class:^(genshinimpact.exe)$
windowrulev2 = float,class:^(genshinimpact.exe)$
# brroke with 42 windowrulev2 = forceinput,class:^(genshinimpact.exe)$
#windowrulev2 = stayfocused,class:^(genshinimpact.exe)$
#windowrulev2 = immediate,class:^(genshinimpact.exe)$
# Setting weather to floing near bar
windowrulev2 = float,class:^(bar_popup|com.nextcloud.desktopclient.nextcloud)$
windowrulev2 = move 2690 298,title:^(Weather Report)$,class:^(bar_popup)$
windowrulev2 = size 670 850, title:^(Weather Report)$,class:^(bar_popup)$
windowrulev2 = move 2755 608,title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$
windowrulev2 = size 596 819, title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$
windowrulev2 = move 2765 615, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$
windowrulev2 = size 596 819, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$
# Other Games
#windowrulev2 = immediate,class:^(overwatch)$
# Rofi allways floating
windowrulev2 = float,class:^(Rofi)$
windowrulev2 = float,class:FloatingTerminal
windowrulev2 = move -205 15,class:FloatingTerminal
windowrulev2 = size 190 100,class:FloatingTerminal
# Exec at start
exec-once= ~/.local/share/until-scripts/run-at-start.sh
exec-once= ~/.config/hypr/scripts/follow_workspace.sh
exec-once= systemctl --user start hyprpolkitagent #Auth agent
exec-once= sleep 3 && copyq --start-server #QT_QPA_PLATFORM=xcb
exec-once= waybar -c $HOME/.config/waybar/bar/config.jsonc -s $HOME/.config/waybar/bar/style.css
exec-once= hyprctl setcursor catppuccin-frappe-mauve-cursors 16
exec-once= dconf write /org/gnome/desktop/interface/cursor-size "16"
exec-once= dconf write /org/gnome/desktop/interface/cursor-theme "'catppuccin-frappe-mauve-cursors'"
exec-once= dconf write /org/gnome/desktop/interface/gtk-theme "'catppuccin-frappe-mauve-standard+default'"
exec-once= hyprpaper # https://github.com/hyprwm/hyprpaper/issues/5q
exec-once= openrgb -p $HOME/.config/OpenRGB/Cat.orp
exec-once= sleep 3 && nextcloud --background #QT_QPA_PLATFORM=xcb
#exec-once= hyprpm enable Hyprspace
exec-once= $workspace-switcher 1
exec-once= kdeconnectd &
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
$subMod = SUPERCONTROL
$focusMod = ALT #L Alt
$resizeMod = ALTSHIFT #L Alt + L shift
$moveMod = CONTROLALT
# Dispatchers https://wiki.hyprland.org/Configuring/Dispatchers/
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
# Applications
bind = $mainMod, RETURN, exec, $terminal
bind = $mainMod, code:51, exec, $browser #51 =
bind = $mainMod, code:48, exec, $fileManager
bind = $mainMod, V, exec, copyq show
bindr= $mainMod, SUPER_L, exec, if pgrep -x $menu; then kill $(pgrep -x $menu); else $menu -show drun; fi
bind = ,code:107, exec, grim -g "$(slurp)" - | swappy -f -
bind = $mainMod, code:107, exec, grim -o $(hyprctl activeworkspace -j | jq ".monitor" | tr -d "\"") - | swappy -f - #"
bind = $subMod, code:107, exec, $kill-on-unfocus normcap
bind = $focusMod, code:107, exec, dunstify -a System -r 1000 -t 5000 -i "$HOME/.config/assets/arch-maron.png" "Hyprpicker" "Color: $(hyprpicker -a -r)"
bind = $mainMod, O, exec, $HOME/.local/share/until-scripts/open_uri.sh
# Media Buttons https://raw.githubusercontent.com/xkbcommon/libxkbcommon/master/include/xkbcommon/xkbcommon-keysyms.h
bind = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%-
bind = ,XF86AudioLowerVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-down.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume
bind = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%+
bind = ,XF86AudioRaiseVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-up.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume
bindl=, XF86AudioPlay, exec, playerctl play-pause
bindl=, XF86AudioPlay, exec, sleep 0.1; if [ "$(playerctl status)" = "Playing" ]; then dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/play.png" "Player" "resumed playback"; else dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/pause.png" "Player" "paused playback"; fi
bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous
# System ctl
bind =, XF86PowerOff, exec, bash ~/.local/share/until-scripts/sleep.sh hibernate
# Key must be enabled by disabeleing default in /etc/systemd/logind.conf (add: HandlePowerKey=ignore)
# check with: systemd-analyze cat-config systemd/logind.conf, then reboot or systemctl restart systemd-logind
# From https://www.reddit.com/r/swaywm/comments/180ly44/how_to_change_power_button_behavior/ and https://unix.stackexchange.com/questions/555822/how-to-change-power-button-shutdown-action-to-run-a-script-under-systemd
# Windowmanagment
bind = $mainMod, Q, killactive,
bind = $mainMod, W, fullscreen, 1
bind = $mainMod, T, fullscreen, 0
bind = $mainMod, M, forcerendererreload,
bind = $mainMod, F, togglefloating,
bind = $mainMod, R, togglespecialworkspace, scratchpad
bind = $mainMod, X, togglespecialworkspace, scratchpad2
bind = $mainMod, code:21, togglespecialworkspace, dump
bind = $resizeMod, e, layoutmsg, orientationnext
bind = $resizeMod, q, layoutmsg, orientationprev
# Change Focus
bind = $focusMod, a, movefocus, l
bind = $focusMod, d, movefocus, r
bind = $focusMod, w, movefocus, u
bind = $focusMod, s, movefocus, d
# Resize Window
binde = $resizeMod, a, resizeactive,-30 0
binde = $resizeMod, d, resizeactive, 30 0
binde = $resizeMod, s, resizeactive, 0 30
binde = $resizeMod, w, resizeactive, 0 -30
# Move Window
bind = $moveMod, a, movewindow, l
bind = $moveMod, d, movewindow, r
bind = $moveMod, s, movewindow, d
bind = $moveMod, w, movewindow, u
bind = $mainMod, code:112, movewindow, mon:DP-2
bind = $mainMod, code:117, movewindow, mon:DP-3
bind = $mainMod, E, exec, $special-workspace-movment scratchpad
bind = $mainMod, Y, exec, $special-workspace-movment scratchpad2
bind = $mainMod, code:20, exec, $special-workspace-movment dump
# Switch workspaces with mainMod
bind = $mainMod, code:113, exec, $workspace-switcher 1
bind = $mainMod, code:114, exec, $workspace-switcher 2
bind = $mainMod, code:111, exec, $workspace-switcher 3
bind = $mainMod, code:116, exec, $workspace-switcher 4
# Workspaces, carry window
bind = $mainMod SHIFT, code:113, exec, $workspace-switcher 1 carry
bind = $mainMod SHIFT, code:114, exec, $workspace-switcher 2 carry
bind = $mainMod SHIFT, code:111, exec, $workspace-switcher 3 carry
bind = $mainMod SHIFT, code:116, exec, $workspace-switcher 4 carry
# Workspace management
bind = $mainMod, c, swapactiveworkspaces, DP-2 DP-3
# Mousebinds
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Submaps
bind = $mainMod, g, submap, gaming
#Other
bind = $subMod, code:112, movecursor, 1720 720
bind = $subMod, code:117, movecursor, -2560 720
#bind = $mainMod, code:65, hyprexpo:expo, toggle # can be: toggle, off/disable or on/enable on space
submap=gaming
bind = $mainMod, T, fullscreen, 0
bind = $mainMod, R, togglespecialworkspace, scratchpad
bind = $mainMod, g, submap,reset
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
bind = $mainMod, code:51, exec, $browser #51 = #
submap=reset

14
eggs/hypr/hyprpaper.conf Executable file
View File

@ -0,0 +1,14 @@
#if more than one preload is desired then continue to preload other backgrounds
# TODO; automatic applying wp preload = PATH # MONITOR, replace line with seed
preload = /home/someone/.config/assets/wallpaper/perfect-blue.png # DP-2
preload = /home/someone/.config/assets/wallpaper/cat_arrow_edit.png # DP-3
#set the default wallpaper(s) seen on initial workspace(s) --depending on the number of monitors used
wallpaper = DP-2,/home/someone/.config/assets/wallpaper/perfect-blue.png
wallpaper = DP-3,/home/someone/.config/assets/wallpaper/cat_arrow_edit.png
#enable splash text rendering over the wallpaper
splash = true
#fully disable ipc
# ipc = off

View File

@ -0,0 +1,55 @@
#!/usr/bin/env bash
instances=$(($(pgrep -f $0 | wc -l) -1))
if [ "$instances" -gt 1 ]; then
echo "Another instance of this script is already running."
exit 1
fi
monitors=$(hyprctl -j monitors | jq "length")
desired_workspaces=4
handle_workspace_change(){
params=("$@")
workspace_id=$(( ${params[0]} - 1 )) # -1 for we start at 1
#echo "Workspace ID: $workspace_id"
curent_state=$(hyprctl -j monitors)
relative_ws_id=$((($workspace_id % $desired_workspaces) + 1)) # +1 for we start at 1
ws_group=$(( ($workspace_id - 1) / $desired_workspaces))
transaction_occured=false
#echo "Following monitor $ws_group to (rel.) WS $relative_ws_id"
for ((dp=0; dp<monitors; dp++));
do
absolute_ws_id=$((($dp * $desired_workspaces) + $relative_ws_id))
if [ $(echo $curent_state | jq ".[$dp].activeWorkspace.id") = $absolute_ws_id ]; then
# This is the monitor we already changed the displat on
continue
fi
#echo "Switching to (abs.) WS $absolute_ws_id on monitor $dp"
hyprctl dispatch focusmonitor $dp
hyprctl dispatch workspace $absolute_ws_id
transaction_occured=true
done
if [ $transaction_occured = "true" ]; then
#echo "Focusing monitor $ws_group"
hyprctl dispatch focusmonitor $ws_group
fi
}
nc -U $XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock | while read -r line; do
cmd="${line%%>>*}"
# Extract everything after ">>" and split at commas
IFS=',' read -ra params <<< "${line#*>>}"
case $cmd in
"workspacev2")
handle_workspace_change ${params[@]}
;;
esac
done;

View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
# Args: $1 = special workspace name
any_special_workspace=$(hyprctl monitors -j)
for (( i = 0; i < $(jq '. | length' <<< "$any_special_workspace"); i++ )); do
echo "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)"
echo "\"special:${1}\""
if [ "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)" = "\"special:${1}\"" ] ; then
hyprctl dispatch movetoworkspacesilent $(hyprctl activeworkspace -j | jq '.id')
exit
fi
done
#else
hyprctl dispatch movetoworkspacesilent special:${1}

View File

@ -0,0 +1,57 @@
#!/usr/bin/env bash
# Args:
# $1: destination
# $2: mode
# TODO: check if script is running, if so, exit
WORKSPACES=4
function confirm_valid_destination() {
destination=$1
if [ "${str:0:1}" == "+" ]; then
destination=$(( ${destination:1} + 1 ))
elif [ "${str:0:1}" == "-" ]; then
destination=$(( ${destination:1} - 1 ))
fi
if [ $destination -lt 1 ]; then
destination=$WORKSPACES
elif [ $destination -gt $WORKSPACES ]; then
destination=1
fi
echo $destination
}
active_ws_id=$(hyprctl activeworkspace -j | jq -r '.id')
active_window_monitor_id=$(hyprctl activeworkspace -j | jq -r '.monitorID')
monitors=$(hyprctl monitors -j | jq -r '.[].id')
dp_iterator=0
destination=$(confirm_valid_destination $1)
# Adjust destination for monitor
destination_with_monitor=$((($active_window_monitor_id * 4) + $destination))
mode=$2
echo "Destination: $destination"
echo "Destination with monitor: $destination_with_monitor"
for dp in $monitors
do
echo "Display: $dp"
hyprctl dispatch focusmonitor $dp
real_destination=$((($dp_iterator * 4) + $destination))
echo "Real Destination $real_destination"
if [[ $real_destination -eq $destination_with_monitor && $mode == "carry" ]]; then
echo "Moving window"
hyprctl dispatch movetoworkspace $real_destination
else
echo "Changing workspace"
hyprctl dispatch workspace $real_destination
fi
dp_iterator=$((dp_iterator+1))
done

View File

@ -0,0 +1,9 @@
[Desktop Entry]
Categories=Network;WebBrowser
Exec=librewolf --profile .config/i2p_librewolf
GenericName=Proxyed Web Browser
Icon=librewolf
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;x-scheme-handler/http;x-scheme-handler/https
Name=I2P-LibreWolf
Terminal=false
Type=Application

View File

@ -0,0 +1 @@
{"schema":6,"addons":[{"id":"uBlock0@raymondhill.net","icons":{"32":"https://addons.mozilla.org/user-media/addon_icons/607/607454-32.png?modified=mcrushed","64":"https://addons.mozilla.org/user-media/addon_icons/607/607454-64.png?modified=mcrushed","128":"https://addons.mozilla.org/user-media/addon_icons/607/607454-128.png?modified=mcrushed"},"name":"uBlock Origin","version":"1.70.0","sourceURI":"https://addons.mozilla.org/firefox/downloads/file/4721638/ublock_origin-1.70.0.xpi","homepageURL":"https://github.com/gorhill/uBlock#ublock-origin","supportURL":"https://old.reddit.com/r/uBlockOrigin/","amoListingURL":"https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/","description":"Finally, an efficient wide-spectrum content blocker. Easy on CPU and memory.","fullDescription":"uBlock Origin is <b>not</b> an \"ad blocker\", it's a wide-spectrum content blocker with CPU and memory efficiency as a primary feature.\n\n\n\nOut of the box, uBO blocks ads, trackers, coin miners, popups, etc. through the following lists of filters, enabled by default:\n\n EasyList (ads)\n EasyPrivacy (tracking)\n Peter Lowe’s Ad server list (ads and tracking)\n Online Malicious URL Blocklist\n uBO's own lists\n\n\nMore lists are available for you to select if you wish:\n\n EasyList Cookie\n Fanboy Annoyances\n AdGuard Annoyances\n Dan Pollock’s hosts file\n And many others\n\n\nAdditionally, you can point-and-click to block JavaScript locally or globally, create your own global or local rules to override entries from filter lists, and many more advanced features.\n\n\n\nFree.\nOpen source with public license (GPLv3)\nFor users by users.\n\nIf ever you really do want to contribute something, think about the people working hard to maintain the filter lists you are using, which were made available to use by all for free.\n\n\n\n<ul>\n<li><a href=\"https://github.com/gorhill/uBlock#ublock-origin\">Documentation</a>\n<li><a href=\"https://github.com/gorhill/uBlock/releases\">Release notes</a>\n<li><a href=\"https://www.reddit.com/r/uBlockOrigin/\">Community support @ Reddit</a>\n<li><a href=\"https://github.com/gorhill/uBlock/graphs/contributors\">Contributors @ GitHub<li><a href=\"https://crowdin.net/project/ublock\">Contributors @ Crowdin</a>\n</ul>","weeklyDownloads":157283,"type":"extension","creator":{"name":"Raymond Hill","url":"https://addons.mozilla.org/en-US/firefox/user/11423598/"},"developers":[],"screenshots":[{"url":"https://addons.mozilla.org/user-media/previews/full/238/238546.png?modified=1622132421","width":1011,"height":758,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/238/238546.jpg?modified=1622132421","thumbnailWidth":533,"thumbnailHeight":400,"caption":"The popup panel: default mode"},{"url":"https://addons.mozilla.org/user-media/previews/full/238/238548.png?modified=1622132423","width":1011,"height":758,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/238/238548.jpg?modified=1622132423","thumbnailWidth":533,"thumbnailHeight":400,"caption":"The dashboard: stock filter lists"},{"url":"https://addons.mozilla.org/user-media/previews/full/238/238547.png?modified=1622132425","width":1011,"height":758,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/238/238547.jpg?modified=1622132425","thumbnailWidth":533,"thumbnailHeight":400,"caption":"The popup panel: default-deny mode"},{"url":"https://addons.mozilla.org/user-media/previews/full/238/238549.png?modified=1622132426","width":1011,"height":758,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/238/238549.jpg?modified=1622132426","thumbnailWidth":533,"thumbnailHeight":400,"caption":"The dashboard: settings"},{"url":"https://addons.mozilla.org/user-media/previews/full/238/238552.png?modified=1622132430","width":970,"height":1800,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/238/238552.jpg?modified=1622132430","thumbnailWidth":216,"thumbnailHeight":400,"caption":"The popup panel in Firefox Preview: default mode with more blocking options revealed"},{"url":"https://addons.mozilla.org/user-media/previews/full/230/230370.png?modified=1622132432","width":800,"height":600,"thumbnailURL":"https://addons.mozilla.org/user-media/previews/thumbs/230/230370.jpg?modified=1622132432","thumbnailWidth":533,"thumbnailHeight":400,"caption":"The unified logger tells you all that uBO is seeing and doing"}],"contributionURL":"","averageRating":4.7985,"reviewCount":5684,"reviewURL":"https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/reviews/","updateDate":1773409902000}]}

View File

@ -0,0 +1 @@
{"newtab@mozilla.org":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"addons-search-detection@mozilla.com":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"data-leak-blocker@mozilla.com":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"formautofill@mozilla.org":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"ipp-activator@mozilla.com":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"pictureinpicture@mozilla.org":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"webcompat@mozilla.org":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"default-theme@mozilla.org":{"permissions":["internal:privateBrowsingAllowed","internal:svgContextPropertiesAllowed"],"origins":[],"data_collection":[]},"uBlock0@raymondhill.net":{"permissions":["internal:privateBrowsingAllowed"],"origins":[],"data_collection":[]}}

View File

@ -0,0 +1 @@
{"version":3,"commands":{},"prefs":{"websites.hyperlinkAuditingEnabled":{"initialValue":{},"precedenceList":[{"id":"uBlock0@raymondhill.net","installDate":1766785748167,"value":false,"enabled":true}]},"network.networkPredictionEnabled":{"initialValue":{"network.prefetch-next":false,"network.http.speculative-parallel-limit":0},"precedenceList":[{"id":"uBlock0@raymondhill.net","installDate":1766785748167,"value":false,"enabled":true}]}},"url_overrides":{},"default_search":{},"tabHideNotification":{},"homepageNotification":{},"newTabNotification":{}}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,196 @@
// Mozilla User Preferences
// DO NOT EDIT THIS FILE.
//
// If you make changes to this file while the application is running,
// the changes will be overwritten when the application exits.
//
// To change a preference value, you can either:
// - modify it via the UI (e.g. via about:config in the browser); or
// - set it within a user.js file in your profile.
user_pref("accessibility.typeaheadfind.flashBar", 0);
user_pref("app.update.lastUpdateTime.addon-background-update-timer", 1777069146);
user_pref("app.update.lastUpdateTime.browser-cleanup-thumbnails", 1777076019);
user_pref("app.update.lastUpdateTime.services-settings-poll-changes", 1777069146);
user_pref("app.update.lastUpdateTime.xpi-signature-verification", 1777069146);
user_pref("browser.bookmarks.restore_default_bookmarks", false);
user_pref("browser.contentblocking.category", "strict");
user_pref("browser.dom.window.dump.enabled", false);
user_pref("browser.download.lastDir", "/home/someone/Nextcloud");
user_pref("browser.download.panel.shown", true);
user_pref("browser.download.viewableInternally.typeWasRegistered.avif", true);
user_pref("browser.download.viewableInternally.typeWasRegistered.webp", true);
user_pref("browser.engagement.downloads-button.has-used", true);
user_pref("browser.engagement.sidebar-button.has-used", true);
user_pref("browser.migration.version", 163);
user_pref("browser.ml.enable", true);
user_pref("browser.newtabpage.activity-stream.impressionId", "{8bf07f56-9270-4fc4-8320-132b59d9c548}");
user_pref("browser.newtabpage.storageVersion", 1);
user_pref("browser.pageActions.persistedActions", "{\"ids\":[\"bookmark\"],\"idsInUrlbar\":[\"bookmark\"],\"idsInUrlbarPreProton\":[],\"version\":1}");
user_pref("browser.pagethumbnails.storage_version", 3);
user_pref("browser.policies.applied", true);
user_pref("browser.policies.runOncePerModification.extensionsUninstall", "[\"google@search.mozilla.org\",\"bing@search.mozilla.org\",\"amazondotcom@search.mozilla.org\",\"ebay@search.mozilla.org\",\"twitter@search.mozilla.org\"]");
user_pref("browser.policies.runOncePerModification.removeSearchEngines", "[\"Google\",\"Bing\",\"Amazon.com\",\"eBay\",\"Twitter\",\"Perplexity\"]");
user_pref("browser.policies.runOncePerModification.setDefaultSearchEngine", "DuckDuckGo");
user_pref("browser.proton.toolbar.version", 3);
user_pref("browser.region.network.url", "");
user_pref("browser.region.update.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.url", "");
user_pref("browser.safebrowsing.provider.google4.dataSharingURL", "");
user_pref("browser.safebrowsing.provider.mozilla.lastupdatetime", "1777069116318");
user_pref("browser.safebrowsing.provider.mozilla.nextupdatetime", "1777090716318");
user_pref("browser.search.totalSearches", 94);
user_pref("browser.sessionstore.upgradeBackup.latestBuildID", "20251027123126");
user_pref("browser.shell.mostRecentDateSetAsDefault", "1777075988");
user_pref("browser.startup.couldRestoreSession.count", 2);
user_pref("browser.startup.lastColdStartupCheck", 1777075989);
user_pref("browser.termsofuse.prefMigrationCheck", true);
user_pref("browser.toolbarbuttons.introduced.sidebar-button", true);
user_pref("browser.toolbars.bookmarks.visibility", "never");
user_pref("browser.translations.automaticallyPopup", false);
user_pref("browser.uiCustomization.horizontalTabsBackup", "{\"placements\":{\"widget-overflow-fixed-list\":[],\"unified-extensions-area\":[],\"nav-bar\":[\"sidebar-button\",\"back-button\",\"forward-button\",\"stop-reload-button\",\"customizableui-special-spring1\",\"vertical-spacer\",\"urlbar-container\",\"customizableui-special-spring2\",\"downloads-button\",\"fxa-toolbar-menu-button\",\"unified-extensions-button\",\"ublock0_raymondhill_net-browser-action\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"vertical-tabs\":[],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"developer-button\",\"screenshot-button\",\"ublock0_raymondhill_net-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"vertical-tabs\",\"toolbar-menubar\",\"TabsToolbar\",\"PersonalToolbar\"],\"currentVersion\":23,\"newElementCount\":2}");
user_pref("browser.uiCustomization.navBarWhenVerticalTabs", "[\"sidebar-button\",\"back-button\",\"forward-button\",\"stop-reload-button\",\"customizableui-special-spring1\",\"vertical-spacer\",\"urlbar-container\",\"customizableui-special-spring2\",\"downloads-button\",\"fxa-toolbar-menu-button\",\"unified-extensions-button\",\"ublock0_raymondhill_net-browser-action\",\"alltabs-button\"]");
user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[],\"unified-extensions-area\":[],\"nav-bar\":[\"sidebar-button\",\"back-button\",\"forward-button\",\"stop-reload-button\",\"customizableui-special-spring1\",\"vertical-spacer\",\"urlbar-container\",\"customizableui-special-spring2\",\"downloads-button\",\"fxa-toolbar-menu-button\",\"unified-extensions-button\",\"ublock0_raymondhill_net-browser-action\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"vertical-tabs\":[],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"developer-button\",\"screenshot-button\",\"ublock0_raymondhill_net-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"vertical-tabs\",\"toolbar-menubar\",\"TabsToolbar\",\"PersonalToolbar\"],\"currentVersion\":23,\"newElementCount\":2}");
user_pref("browser.urlbar.lastUrlbarSearchSeconds", 1777069846);
user_pref("browser.urlbar.quickactions.timesShownOnboardingLabel", 3);
user_pref("browser.urlbar.recentsearches.lastDefaultChanged", "1771030077024");
user_pref("browser.urlbar.suggest.quickactions", false);
user_pref("captchadetection.lastSubmission", 1766785);
user_pref("captivedetect.canonicalURL", "");
user_pref("datareporting.dau.cachedUsageProfileGroupID", "b0bacafe-b0ba-cafe-b0ba-cafeb0bacafe");
user_pref("datareporting.dau.cachedUsageProfileID", "beefbeef-beef-beef-beef-beeefbeefbee");
user_pref("devtools.console.stdout.chrome", false);
user_pref("devtools.debugger.remote-enabled", false);
user_pref("devtools.everOpened", true);
user_pref("devtools.netmonitor.columnsData", "[{\"name\":\"override\",\"minWidth\":20,\"width\":2},{\"name\":\"status\",\"minWidth\":30,\"width\":5.93},{\"name\":\"method\",\"minWidth\":30,\"width\":5.93},{\"name\":\"domain\",\"minWidth\":30,\"width\":11.85},{\"name\":\"file\",\"minWidth\":30,\"width\":29.63},{\"name\":\"url\",\"minWidth\":30,\"width\":25},{\"name\":\"initiator\",\"minWidth\":30,\"width\":11.85},{\"name\":\"type\",\"minWidth\":30,\"width\":5.93},{\"name\":\"transferred\",\"minWidth\":30,\"width\":11.84},{\"name\":\"contentSize\",\"minWidth\":30,\"width\":5.93},{\"name\":\"waterfall\",\"minWidth\":150,\"width\":11.11}]");
user_pref("devtools.netmonitor.msg.visibleColumns", "[\"data\",\"time\"]");
user_pref("devtools.performance.recording.entries", 134217728);
user_pref("devtools.performance.recording.features", "[\"screenshots\",\"js\",\"stackwalk\",\"cpu\",\"processcpu\",\"memory\"]");
user_pref("devtools.performance.recording.threads", "[\"GeckoMain\",\"Compositor\",\"Renderer\",\"SwComposite\",\"DOM Worker\"]");
user_pref("devtools.toolsidebar-height.inspector", 350);
user_pref("devtools.toolsidebar-width.inspector", 700);
user_pref("devtools.toolsidebar-width.inspector.splitsidebar", 350);
user_pref("distribution.iniFile.exists.appversion", "148.0-1");
user_pref("distribution.iniFile.exists.value", true);
user_pref("distribution.nixos.bookmarksProcessed", true);
user_pref("dom.forms.autocomplete.formautofill", true);
user_pref("dom.push.userAgentID", "97e3e85ceee2410183f8c9973b426c7a");
user_pref("dom.security.https_only_mode", false);
user_pref("dom.security.https_only_mode_ever_enabled", true);
user_pref("extensions.activeThemeID", "default-theme@mozilla.org");
user_pref("extensions.blocklist.pingCountVersion", -1);
user_pref("extensions.colorway-builtin-themes-cleanup", 1);
user_pref("extensions.databaseSchema", 37);
user_pref("extensions.getAddons.cache.lastUpdate", 1777069148);
user_pref("extensions.getAddons.databaseSchema", 6);
user_pref("extensions.lastAppBuildId", "20260216153405");
user_pref("extensions.lastAppVersion", "148.0-1");
user_pref("extensions.lastPlatformVersion", "148.0");
user_pref("extensions.pendingOperations", false);
user_pref("extensions.pictureinpicture.enable_picture_in_picture_overrides", true);
user_pref("extensions.quarantinedDomains.list", "autoatendimento.bb.com.br,ibpf.sicredi.com.br,ibpj.sicredi.com.br,internetbanking.caixa.gov.br,www.ib12.bradesco.com.br,www2.bancobrasil.com.br");
user_pref("extensions.signatureCheckpoint", 1);
user_pref("extensions.ui.dictionary.hidden", true);
user_pref("extensions.ui.lastCategory", "addons://list/extension");
user_pref("extensions.ui.locale.hidden", true);
user_pref("extensions.ui.sitepermission.hidden", true);
user_pref("extensions.webcompat.enable_interventions", true);
user_pref("extensions.webcompat.enable_shims", true);
user_pref("extensions.webcompat.perform_injections", true);
user_pref("extensions.webextensions.ExtensionStorageIDB.migrated.uBlock0@raymondhill.net", true);
user_pref("extensions.webextensions.uuids", "{\"data-leak-blocker@mozilla.com\":\"d5a87a73-0d8c-4829-a4fb-f4e05206d954\",\"formautofill@mozilla.org\":\"3343d40d-24c6-45f1-9037-e879464e778b\",\"ipp-activator@mozilla.com\":\"2e6771b3-7a28-4dd8-be65-b79695da5536\",\"pictureinpicture@mozilla.org\":\"735dd14a-ba6e-4a4d-b61a-4a5ad4930bed\",\"addons-search-detection@mozilla.com\":\"25a5b855-5d54-47cb-b267-91da175363f3\",\"webcompat@mozilla.org\":\"9a310967-e580-48bf-b3e8-4eafebbc122d\",\"newtab@mozilla.org\":\"26e303cc-5a6d-4da8-925f-1c9e76884be6\",\"default-theme@mozilla.org\":\"5ab7549d-05df-42fa-83ad-9cb23d7b115d\",\"uBlock0@raymondhill.net\":\"84790597-b0b9-4702-8673-1ce7289f795e\"}");
user_pref("findbar.highlightAll", true);
user_pref("gecko.handlerService.defaultHandlersVersion", 1);
user_pref("idle.lastDailyNotification", 1777069189);
user_pref("media.gmp-manager.buildID", "20260216153405");
user_pref("media.gmp-manager.lastCheck", 1777069146);
user_pref("media.gmp-manager.lastEmptyCheck", 1777069146);
user_pref("media.gmp.storage.version.observed", 1);
user_pref("media.videocontrols.picture-in-picture.video-toggle.first-seen-secs", 1767985766);
user_pref("media.videocontrols.picture-in-picture.video-toggle.has-used", true);
user_pref("network.captive-portal-service.enabled", false);
user_pref("network.connectivity-service.enabled", false);
user_pref("network.cookie.CHIPS.lastMigrateDatabase", 2);
user_pref("network.early-hints.preconnect.max_connections", 0);
user_pref("network.http.referer.disallowCrossSiteRelaxingDefault.top_navigation", true);
user_pref("network.http.speculative-parallel-limit", 0);
user_pref("network.predictor.enabled", false);
user_pref("network.prefetch-next", false);
user_pref("network.proxy.allow_bypass", false);
user_pref("network.proxy.http", "i2pendpoint.arpa");
user_pref("network.proxy.http_port", 4444);
user_pref("network.proxy.socks", "i2pendpoint.arpa");
user_pref("network.proxy.socks_port", 4447);
user_pref("network.proxy.type", 1);
user_pref("nimbus.profileId", "e66aa72b-b769-43cf-a03f-e67ba4bc5214");
user_pref("pdfjs.enableAltTextForEnglish", true);
user_pref("pdfjs.enabledCache.state", true);
user_pref("pdfjs.migrationVersion", 2);
user_pref("permissions.manager.defaultsUrl", "");
user_pref("places.database.lastMaintenance", 1776636907);
user_pref("places.history.enabled", false);
user_pref("print_printer", "Mozilla Save to PDF");
user_pref("privacy.annotate_channels.strict_list.enabled", true);
user_pref("privacy.bounceTrackingProtection.hasMigratedUserActivationData", true);
user_pref("privacy.bounceTrackingProtection.mode", 1);
user_pref("privacy.clearOnShutdown_v2.browsingHistoryAndDownloads", true);
user_pref("privacy.fingerprintingProtection", true);
user_pref("privacy.globalprivacycontrol.was_ever_enabled", true);
user_pref("privacy.history.custom", true);
user_pref("privacy.purge_trackers.date_in_cookie_database", "0");
user_pref("privacy.query_stripping.enabled", true);
user_pref("privacy.query_stripping.enabled.pbmode", true);
user_pref("privacy.sanitize.pending", "[{\"id\":\"shutdown\",\"itemsToClear\":[\"cache\",\"browsingHistoryAndDownloads\",\"cookiesAndStorage\"],\"options\":{}},{\"id\":\"newtab-container\",\"itemsToClear\":[],\"options\":{}}]");
user_pref("privacy.trackingprotection.allow_list.baseline.enabled", false);
user_pref("privacy.trackingprotection.allow_list.convenience.enabled", false);
user_pref("privacy.trackingprotection.allow_list.hasMigratedCategoryPrefs", true);
user_pref("privacy.trackingprotection.consentmanager.skip.pbmode.enabled", false);
user_pref("privacy.trackingprotection.emailtracking.enabled", true);
user_pref("privacy.trackingprotection.enabled", true);
user_pref("privacy.trackingprotection.socialtracking.enabled", true);
user_pref("security.tls.enable_0rtt_data", false);
user_pref("services.settings.blocklists.addons-bloomfilters.last_check", 1777069412);
user_pref("services.settings.blocklists.gfx.last_check", 1777069412);
user_pref("services.settings.clock_skew_seconds", 935);
user_pref("services.settings.last_etag", "\"1777065242493\"");
user_pref("services.settings.last_update_seconds", 1777069412);
user_pref("services.settings.main.addons-data-leak-blocker-domains.last_check", 1777069412);
user_pref("services.settings.main.addons-manager-settings.last_check", 1777069412);
user_pref("services.settings.main.anti-tracking-url-decoration.last_check", 1777069412);
user_pref("services.settings.main.bounce-tracking-protection-exceptions.last_check", 1777069412);
user_pref("services.settings.main.cookie-banner-rules-list.last_check", 1777069412);
user_pref("services.settings.main.fingerprinting-protection-overrides.last_check", 1777069412);
user_pref("services.settings.main.hijack-blocklists.last_check", 1777069412);
user_pref("services.settings.main.partitioning-exempt-urls.last_check", 1777069412);
user_pref("services.settings.main.password-recipes.last_check", 1777069412);
user_pref("services.settings.main.query-stripping.last_check", 1777069412);
user_pref("services.settings.main.third-party-cookie-blocking-exempt-urls.last_check", 1777069412);
user_pref("services.settings.main.tracking-protection-lists.last_check", 1777069412);
user_pref("services.settings.main.translations-models-v2.last_check", 1777069412);
user_pref("services.settings.main.translations-models.last_check", 1772632775);
user_pref("services.settings.main.translations-wasm.last_check", 1772632775);
user_pref("services.settings.main.url-classifier-exceptions.last_check", 1777069412);
user_pref("services.settings.main.url-classifier-skip-urls.last_check", 1777069412);
user_pref("services.settings.main.url-parser-default-unknown-schemes-interventions.last_check", 1777069412);
user_pref("services.settings.main.webcompat-interventions.last_check", 1777069412);
user_pref("services.settings.security-state.cert-revocations.last_check", 1777069412);
user_pref("services.settings.security-state.intermediates.last_check", 1777069412);
user_pref("services.settings.security-state.onecrl.last_check", 1777069412);
user_pref("services.sync.engine.addresses.available", true);
user_pref("sidebar.backupState", "{\"command\":\"\",\"panelOpen\":false,\"launcherWidth\":0,\"launcherExpanded\":false,\"launcherVisible\":false}");
user_pref("sidebar.revamp", true);
user_pref("sidebar.visibility", "hide-sidebar");
user_pref("signon.rustMirror.migrationNeeded", true);
user_pref("storage.vacuum.last.content-prefs.sqlite", 1775438874);
user_pref("storage.vacuum.last.index", 2);
user_pref("storage.vacuum.last.places.sqlite", 1774919782);
user_pref("toolkit.profiles.storeID", "956ac82f");
user_pref("toolkit.startup.last_success", 1777075987);
user_pref("toolkit.telemetry.cachedClientID", "8faf39eb-e602-4f4d-a6af-55a8f96cd0e1");
user_pref("toolkit.telemetry.cachedProfileGroupID", "d82d992e-64b6-451c-a9ef-522b45109ba9");
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
user_pref("toolkit.winRegisterApplicationRestart", false);

Binary file not shown.

View File

@ -0,0 +1,322 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
## These messages are used as headings in the recommendation doorhanger
cfr-doorhanger-extension-heading = Recommended Extension
cfr-doorhanger-feature-heading = Recommended Feature
##
cfr-doorhanger-extension-sumo-link =
.tooltiptext = Why am I seeing this
cfr-doorhanger-extension-cancel-button = Not Now
.accesskey = N
cfr-doorhanger-extension-ok-button = Add Now
.accesskey = A
cfr-doorhanger-extension-manage-settings-button = Manage Recommendation Settings
.accesskey = M
cfr-doorhanger-extension-never-show-recommendation = Don’t Show Me This Recommendation
.accesskey = S
cfr-doorhanger-extension-learn-more-link = Learn more
# This string is used on a new line below the add-on name
# Variables:
# $name (String) - Add-on author name
cfr-doorhanger-extension-author = by { $name }
# This is a notification displayed in the address bar.
# When clicked it opens a panel with a message for the user.
cfr-doorhanger-extension-notification = Recommendation
# .a11y-announcement is extracted in JS and announced via A11y.announce.
cfr-doorhanger-extension-notification2 = Recommendation
.tooltiptext = Extension recommendation
.a11y-announcement = Extension recommendation available
# This is a notification displayed in the address bar.
# When clicked it opens a panel with a message for the user.
# .a11y-announcement is extracted in JS and announced via A11y.announce.
cfr-doorhanger-feature-notification = Recommendation
.tooltiptext = Feature recommendation
.a11y-announcement = Feature recommendation available
## Add-on statistics
## These strings are used to display the total number of
## users and rating for an add-on. They are shown next to each other.
# Variables:
# $total (Number) - The rating of the add-on from 1 to 5
cfr-doorhanger-extension-rating =
.tooltiptext =
{ $total ->
[one] { $total } star
*[other] { $total } stars
}
# Variables:
# $total (Number) - The total number of users using the add-on
cfr-doorhanger-extension-total-users =
{ $total ->
[one] { $total } user
*[other] { $total } users
}
## Firefox Accounts Message
cfr-doorhanger-bookmark-fxa-header = Sync your bookmarks everywhere.
cfr-doorhanger-bookmark-fxa-body-2 = Great find! Now don’t be left without this bookmark on your mobile devices. Get started with an account.
cfr-doorhanger-bookmark-fxa-link-text = Sync bookmarks now…
cfr-doorhanger-bookmark-fxa-close-btn-tooltip =
.aria-label = Close button
.title = Close
## What's New toolbar button and panel
# This string is used by screen readers to offer a text based alternative for
# the notification icon
cfr-badge-reader-label-newfeature = New feature:
cfr-whatsnew-button =
.label = What’s New
.tooltiptext = What’s New
cfr-whatsnew-release-notes-link-text = Read the release notes
## Enhanced Tracking Protection Milestones
# Variables:
# $blockedCount (Number) - The total count of blocked trackers. This number will always be greater than 1.
# $date (Datetime) - The date we began recording the count of blocked trackers
cfr-doorhanger-milestone-heading2 =
{ $blockedCount ->
*[other] { -brand-short-name } blocked over <b>{ $blockedCount }</b> trackers since { DATETIME($date, month: "long", year: "numeric") }!
}
cfr-doorhanger-milestone-ok-button = See All
.accesskey = S
cfr-doorhanger-milestone-close-button = Close
.accesskey = C
## DOH Message
cfr-doorhanger-doh-body = Your privacy matters. { -brand-short-name } now securely routes your DNS requests whenever possible to a partner service to protect you while you browse.
cfr-doorhanger-doh-header = More secure, encrypted DNS lookups
cfr-doorhanger-doh-primary-button-2 = Okay
.accesskey = O
cfr-doorhanger-doh-secondary-button = Disable
.accesskey = D
## Full Video Support CFR message
cfr-doorhanger-video-support-body = Videos on this site may not play correctly on this version of { -brand-short-name }. For full video support, update { -brand-short-name } now.
cfr-doorhanger-video-support-header = Update { -brand-short-name } to play video
cfr-doorhanger-video-support-primary-button = Update Now
.accesskey = U
## VPN promotion dialog for public Wi-Fi users
##
## If a user is detected to be on a public Wi-Fi network, they are given a
## bit of info about how to improve their privacy and then offered a button
## to the Mozilla VPN page and a link to dismiss the dialog.
# This header text can be explicitly wrapped.
spotlight-public-wifi-vpn-header = Looks like you’re using public Wi-Fi
spotlight-public-wifi-vpn-body = To hide your location and browsing activity, consider a Virtual Private Network. It will help keep you protected when browsing in public places like airports and coffee shops.
spotlight-public-wifi-vpn-primary-button = Stay private with { -mozilla-vpn-brand-name }
.accesskey = S
spotlight-public-wifi-vpn-link = Not Now
.accesskey = N
## Emotive Continuous Onboarding
spotlight-better-internet-header = A better internet starts with you
spotlight-better-internet-body = When you use { -brand-short-name}, you’re voting for an open and accessible internet that’s better for everyone.
spotlight-peace-mind-header = We’ve got you covered
spotlight-peace-mind-body = Every month, { -brand-short-name } blocks an average of over 3,000 trackers per user. Because nothing, especially privacy nuisances like trackers, should stand between you and the good internet.
spotlight-pin-primary-button = { PLATFORM() ->
[macos] Keep in Dock
*[other] Pin to taskbar
}
spotlight-pin-secondary-button = Not now
## MR2022 Background Update Windows native toast notification strings.
##
## These strings will be displayed by the Windows operating system in
## a native toast, like:
##
## <b>multi-line title</b>
## multi-line text
## <img>
## [ primary button ] [ secondary button ]
##
## The button labels are fitted into narrow fixed-width buttons by
## Windows and therefore must be as narrow as possible.
mr2022-background-update-toast-title = New { -brand-short-name }. More private. Fewer trackers. No compromises.
mr2022-background-update-toast-text = Try the newest { -brand-short-name } now, upgraded with our strongest anti-tracking protection yet.
# This button label will be fitted into a narrow fixed-width button by
# Windows. Try to not exceed the width of the English text (compare it
# using a variable font like Arial): the button can only fit 1-2
# additional characters, exceeding characters will be truncated.
mr2022-background-update-toast-primary-button-label = Open { -brand-shorter-name } Now
# This button label will be fitted into a narrow fixed-width button by
# Windows. Try to not exceed the width of the English text (compare it using a
# variable font like Arial): the button can only fit 1-2 additional characters,
# exceeding characters will be truncated.
mr2022-background-update-toast-secondary-button-label = Remind Me Later
## Cookie Banner Handling CFR
cookie-banner-blocker-onboarding-header = { -brand-short-name } just refused a cookie banner for you
cookie-banner-blocker-onboarding-body = Less distractions, less cookies tracking you on this site.
cookie-banner-blocker-onboarding-learn-more = Learn more
## These strings are used in the Fox doodle Pin/set default spotlights
july-jam-headline = We’ve got you covered
july-jam-body = Every month, { -brand-short-name } blocks an average of 3,000+ trackers per user, giving you safe, speedy access to the good internet.
july-jam-set-default-primary = Open my links with { -brand-short-name }
fox-doodle-pin-headline = Welcome back
# “indie” is short for the term “independent”.
# In this instance, free from outside influence or control.
fox-doodle-pin-body = Here’s a quick reminder that you can keep your favorite indie browser just one click away.
fox-doodle-pin-primary = Open my links with { -brand-short-name }
fox-doodle-pin-secondary = Not now
## These strings are used in the Set Firefox as Default PDF Handler for Existing Users experiment
set-default-pdf-handler-headline = <strong>Your PDFs now open in { -brand-short-name }.</strong> Edit or sign forms directly in your browser. To change, search “PDF” in settings.
set-default-pdf-handler-primary = Got it
## FxA sync CFR
fxa-sync-cfr-header = New device in your future?
fxa-sync-cfr-body = Make sure your latest bookmarks, passwords, and tabs come with you any time you open a new { -brand-product-name } browser.
fxa-sync-cfr-primary = Learn more
.accesskey = L
fxa-sync-cfr-secondary = Remind me later
.accesskey = R
## Device Migration FxA Spotlight
device-migration-fxa-spotlight-heavy-user-header = Don’t forget to back up your data
device-migration-fxa-spotlight-heavy-user-body = Make sure important info — like bookmarks and passwords — is updated and protected across all your devices.
device-migration-fxa-spotlight-heavy-user-primary-button = Get started
device-migration-fxa-spotlight-older-device-header = Peace of mind, from { -brand-product-name }
device-migration-fxa-spotlight-older-device-body = An account keeps your important info updated and protected on any device you connect.
device-migration-fxa-spotlight-older-device-primary-button = Create an account
device-migration-fxa-spotlight-getting-new-device-header-2 = New device in your future?
device-migration-fxa-spotlight-getting-new-device-body-2 = Follow a few simple steps to bring your bookmarks, history, and passwords with you when you get started on a new device.
device-migration-fxa-spotlight-getting-new-device-primary-button = How to back up my data
device-migration-fxa-spotlight-sync-header = Browse without missing a beat
device-migration-fxa-spotlight-sync-body = Sync all your important info with encryption — like bookmarks and passwords. You can pull everything up anywhere you use { -brand-product-name }.
device-migration-fxa-spotlight-sync-primary-button = Get started
## Set as Default PDF Reader Infobar
# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
pdf-default-notification-message = <strong>Make { -brand-short-name } your default PDF reader?</strong> Use { -brand-short-name } to read and edit PDFs saved to your computer.
pdf-default-notification-set-default-button =
.label = Set as default
pdf-default-notification-decline-button =
.label = Not now
## Launch on login infobar notification
launch-on-login-infobar-message = <strong>Open { -brand-short-name } every time you restart your computer?</strong> Now you can set { -brand-short-name } to open automatically when you restart your device.
launch-on-login-learnmore = Learn more
launch-on-login-infobar-confirm-button = Yes, open { -brand-short-name }
.accesskey = Y
launch-on-login-infobar-reject-button = Not now
.accesskey = N
## These string variants are used when the “launch on login” infobar
## notification is displayed for a second time.
launch-on-login-infobar-final-message = <strong>Open { -brand-short-name } every time you restart your computer?</strong> To manage your Startup preferences, search “startup” in settings.
launch-on-login-infobar-final-reject-button = No thanks
.accesskey = N
## Tail Fox Set Default Spotlight
# This title is displayed together with the picture of a running fox with a long tail.
# In English, this is a figure of speech meaning 'stop something from following you'.
# If the localization of this message is challenging, consider using a simplified
# alternative as a reference for translation: 'Keep unwanted trackers away'.
tail-fox-spotlight-title = Keep pesky trackers off your tail
tail-fox-spotlight-subtitle = Say goodbye to annoying ad trackers and settle into a safer, speedy internet experience.
tail-fox-spotlight-primary-button = Open my links with { -brand-short-name }
tail-fox-spotlight-secondary-button = Not now
## Root Certificate Succession Infobar
root-certificate-succession-infobar-january-message = <strong>Older versions of { -brand-short-name } may start to have problems on January 14, 2025.</strong>
root-certificate-succession-infobar-march-message = <strong>Update to keep using { -brand-short-name } after March 14, 2025.</strong>
root-certificate-succession-infobar-link = Why do I need to update?
root-certificate-succession-infobar-primary-button =
.label = Update now
.accesskey = U
root-certificate-succession-infobar-secondary-button =
.label = Later
.accesskey = L
## Root Certificate Succession Windows Background Notification
root-certificate-windows-background-notification-title = You missed an important { -brand-short-name } update
root-certificate-windows-background-notification-subtitle = Parts of the browser will stop working soon if you don’t update. Now is a great time to get our latest protections and features.
root-certificate-windows-background-notification-learn-more-button = Learn more
root-certificate-windows-background-notification-update-button = Update { -brand-short-name }
## FxA Menu Message variants
fxa-menu-message-close-button =
.title = Close
.aria-label = Close
fxa-menu-message-sign-up-button = Sign up
fxa-menu-message-sync-devices-primary-text = Sync all your devices
fxa-menu-message-sync-devices-secondary-text = Instantly get your info — like bookmarks and passwords — everywhere you use { -brand-short-name }.
fxa-menu-message-sync-devices-collapsed-text = Sync all your devices
fxa-menu-message-backup-data-primary-text = Back up your browser data
fxa-menu-message-backup-data-secondary-text = Automatically protect bookmarks, passwords, and other info on all your devices.
fxa-menu-message-backup-data-collapsed-text = Back up browser data
fxa-menu-message-backup-sync-primary-text = Keep your data safe and synced
fxa-menu-message-backup-sync-secondary-text = Sync backs up most of your data so you can access it everywhere you use { -brand-short-name }.
fxa-menu-message-backup-sync-collapsed-text = Sync and back up data
fxa-menu-message-mobile-primary-text = Send tabs to your phone
fxa-menu-message-mobile-secondary-text = Pick up where you left off instantly when you sync your tabs with a mobile device.
fxa-menu-message-mobile-collapsed-text = Sync with your phone
## Multi-CTA Fox Doodle Spotlight
multi-cta-fox-doodle-title = Welcome back
multi-cta-fox-doodle-set-default-checkbox = Set { -brand-short-name } to default
multi-cta-fox-doodle-pin-startmenu-checkbox = Pin { -brand-short-name } to Start menu
multi-cta-fox-doodle-pin-checkbox = { PLATFORM() ->
[macos] Keep { -brand-short-name } in Dock
*[other] Pin { -brand-short-name } to taskbar
}
multi-cta-fox-doodle-start-browsing-primary-button-label = Start browsing
multi-cta-fox-doodle-main-browser-primary-button-label = Make { -brand-short-name } my main browser
multi-cta-fox-doodle-quick-reminder-subtitle = Here’s a quick reminder that you can keep your favorite privacy-focused browser just one click away.
multi-cta-fox-doodle-privacy-focused-subtitle = { PLATFORM() ->
[macos] Keep your favorite privacy-focused browser just one click away. Set { -brand-short-name } as your default browser for opening links and keep it in your Dock.
*[other] Keep your favorite privacy-focused browser just one click away. Set { -brand-short-name } as your default browser for opening links and pin it to your taskbar.
}
multi-cta-fox-doodle-msix-privacy-focused-subtitle = Keep your favorite privacy-focused browser just one click away. Set { -brand-short-name } as your default browser for opening links and pin it to your taskbar and Start menu.

View File

@ -0,0 +1,11 @@
[Desktop Entry]
Name=Nextcloud
GenericName=File Synchronizer
Exec=nextcloud --background
Terminal=false
Icon=Nextcloud
Categories=Network
Type=Application
StartupNotify=false
X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=10

View File

@ -0,0 +1,31 @@
[Source-applicationSourceName]
dataSourceCommonSettings\activeState=true
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-locale]
dataSourceCommonSettings\activeState=true
[Source-opengl]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=63
ApplicationTime=53391
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\x93\x4\xe2\b\xba\0)

View File

@ -0,0 +1,30 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-locale]
dataSourceCommonSettings\activeState=true
[Source-places]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-settings]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=642
ApplicationTime=1931897

View File

@ -0,0 +1,21 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=51
ApplicationTime=87191

View File

@ -0,0 +1,21 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=61
ApplicationTime=54665

View File

@ -0,0 +1,31 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-compiler]
dataSourceCommonSettings\activeState=true
[Source-opengl]
dataSourceCommonSettings\activeState=true
[Source-panelCount]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qpa]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=241
ApplicationTime=3248681
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\x9b\0tW\x8a\0)

View File

@ -0,0 +1,2 @@
[UserFeedback]
ApplicationStartCount=2

View File

@ -0,0 +1,12 @@
[General]
audioPlayerState=@Variant(\0\0\0\b\0\0\0\x6\0\0\0\x36\0\x61\0u\0\x64\0i\0o\0P\0l\0\x61\0y\0\x65\0r\0\x43\0u\0r\0r\0\x65\0n\0t\0\x41\0l\0\x62\0u\0m\0N\0\x61\0m\0\x65\0\0\0\0\xff\xff\xff\xff\0\0\0\x38\0\x61\0u\0\x64\0i\0o\0P\0l\0\x61\0y\0\x65\0r\0\x43\0u\0r\0r\0\x65\0n\0t\0\x41\0r\0t\0i\0s\0t\0N\0\x61\0m\0\x65\0\0\0\0\xff\xff\xff\xff\0\0\0.\0\x61\0u\0\x64\0i\0o\0P\0l\0\x61\0y\0\x65\0r\0\x43\0u\0r\0r\0\x65\0n\0t\0T\0i\0t\0l\0\x65\0\0\0\n\0\0\0\n\0\x31\0.\0m\0\x34\0\x61\0\0\0\x12\0i\0s\0P\0l\0\x61\0y\0i\0n\0g\0\0\0\x1\x1\0\0\0\x1c\0p\0l\0\x61\0y\0\x65\0r\0\x44\0u\0r\0\x61\0t\0i\0o\0n\0\0\0\x2\0\a\v\xeb\0\0\0\x1c\0p\0l\0\x61\0y\0\x65\0r\0P\0o\0s\0i\0t\0i\0o\0n\0\0\0\x4\0\0\0\0\0\0\bf)
contentViewState=@ByteArray(\x82\xa2\x65index\0npreferredWidth\xfb@k\0\0\0\0\0\0\xa2\x65index\x2npreferredWidth\xfb\0\0\0\0\0\0\0\0)
expandedFilterView=false
headerBarHeight=1e+05
headerBarIsMaximized=false
nowPlayingPreferLyric=false
playControlItemMuted=false
playControlItemVolume=100
playListPreferredWidth=0
playListState=@Variant(\0\0\0\b\0\0\0\x5\0\0\0\x18\0\x63\0u\0r\0r\0\x65\0n\0t\0T\0r\0\x61\0\x63\0k\0\0\0\x2\0\0\0\0\0\0\0\x10\0p\0l\0\x61\0y\0L\0i\0s\0t\0\0\0\t\0\0\0\x1\0\0\0\v\0\0\0\b\0\0\0\x2\0\x30\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\0\0\0\x2\0\x36\0\0\0\x44\0\x66\0i\0l\0\x65\0:\0/\0/\0/\0h\0o\0m\0\x65\0/\0s\0o\0m\0\x65\0o\0n\0\x65\0/\0\x44\0\x65\0s\0k\0t\0o\0p\0/\0\x31\0.\0m\0\x34\0\x61\0\0\0\x1a\0r\0\x61\0n\0\x64\0o\0m\0M\0\x61\0p\0p\0i\0n\0g\0\0\0\t\0\0\0\0\0\0\0\x14\0r\0\x65\0p\0\x65\0\x61\0t\0M\0o\0\x64\0\x65\0\0\0\x2\0\0\0\0\0\0\0\x16\0s\0h\0u\0\x66\0\x66\0l\0\x65\0M\0o\0\x64\0\x65\0\0\0\x2\0\0\0\0)
showPlaylist=true

View File

@ -0,0 +1,8 @@
[General]
ColorScheme=CatppuccinFrappeBlue
[Icons]
Theme=breeze-dark
[KDE]
widgetStyle=Breeze

View File

@ -0,0 +1 @@
Catppuccin-Frappe-Blue

163
eggs/kde_config/kdeglobals Normal file
View File

@ -0,0 +1,163 @@
[ColorEffects:Disabled]
ChangeSelectionColor=
Color=48, 52, 70
ColorAmount=0.30000000000000004
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=0
Enable=
IntensityAmount=-1
IntensityEffect=0
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=48, 52, 70
ColorAmount=0.5
ColorEffect=3
ContrastAmount=0
ContrastEffect=0
Enable=true
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate=140,170,238
BackgroundNormal=65, 69, 89
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:Complementary]
BackgroundAlternate=35, 38, 52
BackgroundNormal=41, 44, 60
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:Header]
BackgroundAlternate=35, 38, 52
BackgroundNormal=41, 44, 60
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:Selection]
BackgroundAlternate=140,170,238
BackgroundNormal=140,170,238
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=41, 44, 60
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=35, 38, 52
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:Tooltip]
BackgroundAlternate=27,25,35
BackgroundNormal=48, 52, 70
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:View]
BackgroundAlternate=41, 44, 60
BackgroundNormal=48, 52, 70
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[Colors:Window]
BackgroundAlternate=35, 38, 52
BackgroundNormal=41, 44, 60
DecorationFocus=140,170,238
DecorationHover=65, 69, 89
ForegroundActive=239, 159, 118
ForegroundInactive=165, 173, 206
ForegroundLink=140,170,238
ForegroundNegative=231, 130, 132
ForegroundNeutral=229, 200, 144
ForegroundNormal=198, 208, 245
ForegroundPositive=166, 209, 137
ForegroundVisited=202, 158, 230
[DirSelect Dialog]
DirSelectDialog Size=820,584
History Items[$e]=file:$HOME/Code/solid/deployment/ansible,file:$HOME/Code/solid/rustic-error-pages,file:$HOME/Code/solid/python-vaultwarden,file:$HOME/Code/school/trees,file:$HOME/Nextcloud,file:$HOME/Code/tmp,file:$HOME/Code/solid/rustic-error-pages,file:$HOME/Code/school/xslt,file:$HOME/Code/solid/ansible,file:$HOME/Code/priv/xlsx_formater,file:$HOME/Code/priv/wokwie-offline,file:$HOME/Nextcloud/Bilder/nixLapScreenshot,file:$HOME/Nextcloud/Office/Schule/InfT/rnote,file:$HOME/Code/school/chat,file:$HOME/Downloads/torrent,file:$HOME/Downloads/torrent,file:$HOME/Downloads/torrent,file:$HOME/Code/tmp,file:$HOME/Code/school/scrape_glocke,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Desktop,file:$HOME/Code/school/chat,file:$HOME/Nextcloud/Office/Schule/InfT/rnote,file:$HOME/Code/solid/vaultwarden_org_sync_lib,file:$HOME/Code/priv/auto-decrypt,file:$HOME/Desktop,file:$HOME/Code/solid/vaultwarden_org_sync,file:$HOME/Desktop,file:$HOME/Downloads,file:$HOME/Code/tmp,file:$HOME/Code/embeded_task_dispatcher,file:$HOME/Code/webdev_start,file:$HOME/Nextcloud/Office/Schule/Pp/rnote,file:$HOME/Code/webdev_start,file:$HOME/cisco_env,file:$HOME/Nextcloud/Office/Schule/TiP,file:$HOME/Code/CiscoPrepare,file:$HOME/Code/webdev_start,file:$HOME/Nextcloud/Office/Schule/Inf/rnote/webdev,file:$HOME/Code/penetration_enviorment,file:$HOME/hacking_cwd,file:$HOME/hacking_cwd
Splitter State=\x00\x00\x00\xff\x00\x00\x00\x01\x00\x00\x00\x02\x00\x00\x00\x8c\x00\x00\x02\xa8\x00\xff\xff\xff\xff\x01\x00\x00\x00\x01\x00
[General]
ColorSchemeHash=d9b3f338b5f1fd4e3389cb52a430776ddde2db0c
[KDE]
LookAndFeelPackage=Catppuccin-Frappe-Blue
ShowDeleteCommand=false
[KFileDialog Settings]
Allow Expansion=false
Automatically select filename extension=true
Breadcrumb Navigation=false
Decoration position=2
LocationCombo Completionmode=5
PathCombo Completionmode=5
Show Bookmarks=false
Show Full Path=false
Show Inline Previews=true
Show Preview=false
Show Speedbar=true
Show hidden files=true
Sort by=Date
Sort directories first=true
Sort hidden files last=false
Sort reversed=true
Speedbar Width=127
View Style=DetailTree
[PreviewSettings]
EnableRemoteFolderThumbnail=false
MaximumRemoteSize=0
[WM]
activeBackground=48,52,70
activeBlend=198,208,245
activeForeground=198,208,245
inactiveBackground=35,38,52
inactiveBlend=165,173,206
inactiveForeground=165,173,206

View File

@ -0,0 +1,2 @@
[General]
exportsFile=/etc/exports

View File

@ -0,0 +1,15 @@
Gdk/UnscaledDPI 122880
Gdk/WindowScalingFactor 1
Gtk/EnableAnimations 1
Gtk/DecorationLayout "icon:close"
Gtk/PrimaryButtonWarpsSlider 1
Gtk/ToolbarStyle 3
Gtk/MenuImages 1
Gtk/ButtonImages 1
Gtk/CursorThemeSize 22
Gtk/CursorThemeName "catppuccin-frappe-blue-cursors"
Net/SoundThemeName "ocean"
Net/IconThemeName "breeze-dark"
Gtk/FontName "Noto Sans, 10"
Net/ThemeName "catppuccin-frappe-mauve-standard+default"

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE khotnewstuff3>
<hotnewstuffregistry>
<stuff category="462">
<name>Catppuccin Frappe for Konsole</name>
<providerid>api.kde-look.org</providerid>
<author>catppuccin</author>
<homepage>https://store.kde.org/p/2143624</homepage>
<licence></licence>
<version>7d86b8a</version>
<rating>50</rating>
<downloads>2959</downloads>
<installedfile>/home/someone/.local/share/konsole/Catppuccin-Frappe.colorscheme</installedfile>
<id>2143624</id>
<releasedate>2024-04-03</releasedate>
<summary>&lt;p>----- Konsole Colourscheme for Catppuccin Frapp&amp;eacute; -----&lt;/p>
&lt;p>Catppuccin is a community-driven pastel theme that aims to be a middle ground between low and high contrast themes. It consists of 4 soothing warm palettes with 26 eye-candy colours each, perfect for coding, designing, and much more! Here, it's used as a colourscheme for Konsole. Hope you enjoy!https://catppuccin.com/&lt;/p>
&lt;p>Any issues can be reported here: https://github.com/catppuccin/konsole/issues&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/cache/100x100-4/img/00/00/68/35/48/2143624/konsole-frappe.png</preview>
<previewBig>https://images.pling.com/cache/770x540-4/img/00/00/68/35/48/2143624/konsole-frappe.png</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTcxMjEwODM0NywibyI6IjEiLCJzIjoiNDU1NzcwOGNiNDAyN2ZjMmRjNWY5NDUwNGI3YTkyMzBkYmM4YmQzZGYwZGVkMzBlNjVmNGJkNzkwMGEwZmE0MDVmMTE0OTA0ZmYxNGRkZmMyM2U2Mzg2Y2ZiNWVkZmI3MDU2YmU1ZmRlOGVlYmE1MzNmMjk2Mjc5MTllZWNlMDgiLCJ0IjoxNzQ4NjU3NjMwLCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.OQ1FGjlxwlv317KJIa6pkJfUmRhfZfs9M6BnEheeCeo/Catppuccin-Frappe.colorscheme</payload>
<tags>original-product,pastel,konsole,catppuccin,mit-license,addon</tags>
<status>installed</status>
</stuff>
</hotnewstuffregistry>

View File

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE khotnewstuff3>
<hotnewstuffregistry>
<stuff category="716">
<name>Kuro the cat</name>
<providerid>api.kde-look.org</providerid>
<author>a2-n</author>
<homepage>https://store.kde.org/p/2135195</homepage>
<licence></licence>
<version>1.0.1</version>
<rating>72</rating>
<downloads>41191</downloads>
<installedfile>/home/someone/.config/yolk/eggs/kde_locals/plasma/look-and-feel/a2n.kuro/</installedfile>
<id>2135195</id>
<releasedate>2024-03-11</releasedate>
<summary>&lt;h1>Description&lt;/h1>
&lt;p>Wake up your pc with Kuro the cat&lt;/p>
&lt;h1>History&lt;/h1>
&lt;p>My own code for replacing kuro that it seems to be abandoned.&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/img/00/00/60/86/47/2135195/cat.gif</preview>
<previewBig>https://images.pling.com/img/00/00/60/86/47/2135195/cat.gif</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTcxMDE0NzA2NCwibyI6IjEiLCJzIjoiMDNiNTdkYmI3NmNlYzRjOTk2NDQ4MjFjNjk5OWJmODJkZGNlOTU1NzA3OTk4YTM1NzY5YTkwNmY3MGM1NWI0NmMwNWQyMGU5MzM2ZWYxOGEzMTQ0MTM4MGRhZjE2MWE3ZmU2YzMzMWFhYzI4OGYyZDU4NmQyNGJiYjkzMDA1NTgiLCJ0IjoxNzQ4NzIwNTU0LCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.yfaVgEWFnPOLtu9fvTTgLkjTV-ZVW16RGZ-kWmIVnfE/a2n.kuro.1.0.1.tar.gz</payload>
<tags>linux,original-product,plasma,plasma##majorversion=6,splashscreen,kde,kde-plasma,kdeplasma,kdesplash,gplv3,cat,theme,unix</tags>
<status>installed</status>
</stuff>
</hotnewstuffregistry>

View File

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE khotnewstuff3>
<hotnewstuffregistry>
<stuff category="720">
<name>Truely Maximized</name>
<providerid>api.kde-look.org</providerid>
<author>fin444</author>
<homepage>https://store.kde.org/p/2136524</homepage>
<licence></licence>
<version>1.1.0</version>
<rating>57</rating>
<downloads>5913</downloads>
<installedfile>/home/someone/.local/share/kwin/scripts/truely-maximized/</installedfile>
<id>2136524</id>
<releasedate>2024-12-21</releasedate>
<summary>&lt;p>A Kwin script that truely maximizes your screen space by hiding the title bars of your windows when they are maximized. You can configure a blacklist from the script settings. There is also an optional screen edge listener to toggle it off/on (look in your screen edge listener settings).&lt;/p>
&lt;p>This is the Plasma 6 version. The Plasma 5 version can be found here: https://www.pling.com/p/2018573/&lt;/p>
&lt;p>Based on (but not forked from) bahamondev/hide-titles https://store.kde.org/p/1354715&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/cache/100x100-4/img/00/00/71/36/84/2136524/max11.png</preview>
<previewBig>https://images.pling.com/cache/770x540-4/img/00/00/71/36/84/2136524/max11.png</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTczNDgxMzM3MCwibyI6IjEiLCJzIjoiOWI5OTJkMTFkNTMyYmMxODZlM2UxYTcxMGUzYWM1YjEyMjUzNTJhOWJhODhlZmI5MmM4OWI0NDljOTVhZDI3YmY4ZGFhOTU2OGJhZjI3YzA0YTJmZjljYzJmZDRmNDdmMzQzOTM3YzNlMDdmNTgyODk0YzJjNTQ0MTU5MDgxNDkiLCJ0IjoxNzQ4NjU0MTg2LCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.WwQ1rSrdg_ghrfdVyRNV49KjFXgwseIdVVsL0KHzEn0/truely-maximized-1.2.0.kwinscript</payload>
<tags>linux,gplv3,original-product,unix</tags>
<status>installed</status>
</stuff>
<stuff category="720">
<name>KWin dynamic workspaces</name>
<providerid>api.kde-look.org</providerid>
<author>d86leader</author>
<homepage>https://store.kde.org/p/1312691</homepage>
<licence></licence>
<version>3.2</version>
<rating>75</rating>
<downloads>13985</downloads>
<installedfile>/home/someone/.local/share/kwin/scripts/dynamic_workspaces/</installedfile>
<id>1312691</id>
<releasedate>2025-04-13</releasedate>
<summary>&lt;p>A kwin script that creates and deletes desktops as you move windows on the last one.&lt;/p>
&lt;p>I intented to replicate some of gnome-desktop's behavior with moving windows around.
As this is a simple script for satisfying my needs, it only workds horizontally left-toright.
The behaviour is following:&lt;/p>
&lt;ul>
&lt;li>There is always an empty desktop on the right&lt;/li>
&lt;li>When you move a window to that desktop, a new desktop is created&lt;/li>
&lt;li>When you move window away from last desktop, or close the window,
the desktop is destroyed&lt;/li>
&lt;/ul>
&lt;p>If you encounter problems, file an issue at my github repo: https://github.com/d86leader/dynamic&lt;em>workspaces
If you don't encounter problems, file a star on my github repo: https://github.com/d86leader/dynamic&lt;/em>workspaces , why don't ya.&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/cache/100x100-4/img/00/00/53/85/99/1312691/f3197437783b57b5ca24861dc05d50a390d1.png</preview>
<previewBig>https://images.pling.com/cache/770x540-4/img/00/00/53/85/99/1312691/f3197437783b57b5ca24861dc05d50a390d1.png</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTc0NDU1MjEyMCwibyI6IjEiLCJzIjoiZDMxYmU5ZjhiZDM5YmJmZjk0YjhkYmNiNzg3NWZlZGE4MDgzMzk1MDM5MjJmMjljYTk2NzYxYjJlZTM1OTFlYjJhY2I4N2YxM2ExMTQ3Njc3YmM4ZjFjZjQwNjY0YjBkZDU1NmE1YzQ0MjdjYzBiZmNjNmEzNWFkMGMwNjkwNmUiLCJ0IjoxNzQ4NjUzOTY0LCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.GCOII9YmPyFcft3GeHLiwZX6PAr8bDzAoZ7tc94_deg/dynamic-workspaces.tar.gz</payload>
<tags>bsd-license,linux,original-product,unix</tags>
<status>installed</status>
</stuff>
</hotnewstuffregistry>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE khotnewstuff3>
<hotnewstuffregistry>
<stuff category="706">
<name>Application Title Bar</name>
<providerid>api.kde-look.org</providerid>
<author>antroids</author>
<homepage>https://store.kde.org/p/2135509</homepage>
<licence></licence>
<version>0.8.5</version>
<rating>83</rating>
<downloads>14232</downloads>
<installedfile>/home/someone/.local/share/plasma/plasmoids/com.github.antroids.application-title-bar/</installedfile>
<id>2135509</id>
<releasedate>2025-04-22</releasedate>
<summary>&lt;p>Widget with window title and control buttons.&lt;/p>
&lt;p>In cases of panel freezes or crashes: https://github.com/antroids/application-title-bar?tab=readme-ov-file#-in-cases-of-panel-freezes-or-crashes-&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/cache/100x100-4/img/00/00/77/08/97/2135509/logonew.png</preview>
<previewBig>https://images.pling.com/cache/770x540-4/img/00/00/77/08/97/2135509/logonew.png</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTc0NTM0MDAyMSwibyI6IjEiLCJzIjoiZDUyZjhlNWMyMGI1MjIyM2Y4YmY0ZWVjZWFhZjRmYTE2NzdkYjUwZTgzMjAxYjA3ZmQ0MDVjYWEyOGZkMzM0MTExYzU4N2FlYWIzYzBhYmZhNjIzYzFmMzRkZDA3Njc0OWIwZDgxOTI2ZWFmODcyZDk5Nzg2Y2U4OWI0OWQ5ZTIiLCJ0IjoxNzQ4NjUzNzExLCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.F-19BHqFtfzt8DACcj6Ryw4qThwrl8FFYGsTbkdxH0g/application-title-bar-0-8-5.plasmoid</payload>
<tags>unix,original-product,plasma,plasma##majorversion=6,plasmoid,notitlebar,widget,window,linux,kde,kde-plasma,extension,gplv3,buttons</tags>
<status>installed</status>
</stuff>
</hotnewstuffregistry>

View File

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE khotnewstuff3>
<hotnewstuffregistry>
<stuff category="107">
<name>Catppuccin Frappe Cursors</name>
<providerid>api.kde-look.org</providerid>
<author>catppuccin</author>
<homepage>https://store.kde.org/p/2135233</homepage>
<licence></licence>
<version>v1.0.1</version>
<rating>50</rating>
<downloads>3435</downloads>
<installedfile>/home/someone/.icons/catppuccin-frappe-blue-cursors/*</installedfile>
<id>2135233</id>
<releasedate>2024-10-30</releasedate>
<summary>&lt;p>----- Cursors for Catppuccin's Frappe -----&lt;/p>
&lt;p>Catppuccin is a community-driven pastel theme that aims to be a middle ground between low and high contrast themes. It consists of 4 soothing warm palettes with 26 eye-candy colours each, perfect for coding, designing, and much more! Here are our cursors, available in 16 different variants. Hope you enjoy!&lt;/p>
&lt;p>This project is a modification of &lt;a href="https://github.com/varlesh/volantes-cursors">Volantes Cursors&lt;/a> with the Catppuccin palettes.&lt;/p>
&lt;p>Any issues can be reported here: https://github.com/catppuccin/cursors/issues&lt;/p>
</summary>
<changelog></changelog>
<preview>https://images.pling.com/cache/100x100-4/img/00/00/68/35/48/2135233/cursors-frappe.png</preview>
<previewBig>https://images.pling.com/cache/770x540-4/img/00/00/68/35/48/2135233/cursors-frappe.png</previewBig>
<payload>https://files06.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTczMDMyNjI3MSwibyI6IjEiLCJzIjoiMDUyNDNkZTg2YmIwMmZlNmI2OTVhNzZjYjc4MTdmYjFjNmFiYzhlMDdiM2FlYjk1YmQzZmViNTc2MDZjNGFhNjc3MGZmOTA0ZGYzNTQxZTQ0OTkwNzE4YTRhYWViYjcwZGViNGQ3Y2M0YTQyOWQ1OTc5M2NjYjljMjVkZjY2ZGMiLCJ0IjoxNzQ4NzE4MjcxLCJzdGZwIjpudWxsLCJzdGlwIjoiODcuMTMzLjI4LjI1NSJ9.cAPsX6kkrnyFp9FZoSuzT4CC9o2TDPdmdwDLFXxSQR0/catppuccin-frappe-blue-cursors.zip</payload>
<tags>linux,catppuccin,cursor,cursors,efi,gplv2,pastel,unix</tags>
<status>installed</status>
</stuff>
</hotnewstuffregistry>

View File

@ -0,0 +1,7 @@
[Appearance]
ColorScheme=Catppuccin-Frappe
[General]
Directory=
Name=Cat
Parent=FALLBACK/

View File

@ -0,0 +1,96 @@
[Background]
Color=48,52,70
[BackgroundFaint]
Color=48,52,70
[BackgroundIntense]
Color=48,52,70
[Color0]
Color=115,121,148
[Color0Faint]
Color=115,121,148
[Color0Intense]
Color=115,121,148
[Color1]
Color=231,130,132
[Color1Faint]
Color=231,130,132
[Color1Intense]
Color=231,130,132
[Color2]
Color=166,209,137
[Color2Faint]
Color=166,209,137
[Color2Intense]
Color=166,209,137
[Color3]
Color=229,200,144
[Color3Faint]
Color=229,200,144
[Color3Intense]
Color=229,200,144
[Color4]
Color=140,170,238
[Color4Faint]
Color=140,170,238
[Color4Intense]
Color=140,170,238
[Color5]
Color=202,158,230
[Color5Faint]
Color=202,158,230
[Color5Intense]
Color=202,158,230
[Color6]
Color=153,209,219
[Color6Faint]
Color=153,209,219
[Color6Intense]
Color=153,209,219
[Color7]
Color=198,208,245
[Color7Faint]
Color=198,208,245
[Color7Intense]
Color=198,208,245
[Foreground]
Color=198,208,245
[ForegroundFaint]
Color=198,208,245
[ForegroundIntense]
Color=198,208,245
[General]
Blur=false
ColorRandomization=false
Description=Catppuccin Frappé
Opacity=1
Wallpaper=

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,286 @@
{
"$fdo_created": "1748649994",
"$fdo_modified": "1772021234",
"Chromium Keys/Chromium Safe Storage": {
"$fdo_created": "1748704742",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748704742",
"attributes": {
"server": "Chromium Keys",
"type": "plaintext",
"user": "Chromium Safe Storage",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{397a39fc-ebe9-4912-88cd-3548359cd7a5};802-11-wireless-security": {
"$fdo_created": "1758984333",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1758984333",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{397a39fc-ebe9-4912-88cd-3548359cd7a5};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{3dc06da0-8f68-479a-a967-a5a8c29bfa32};802-11-wireless-security": {
"$fdo_created": "1760108551",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1760108551",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{3dc06da0-8f68-479a-a967-a5a8c29bfa32};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{51d8d773-75ef-46ff-866e-61436d7fd531};802-11-wireless-security": {
"$fdo_created": "1769858713",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1769858713",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{51d8d773-75ef-46ff-866e-61436d7fd531};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{59e4bb44-5d48-4442-bc2a-c11d6294968c};802-11-wireless-security": {
"$fdo_created": "1759249764",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1759249764",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{59e4bb44-5d48-4442-bc2a-c11d6294968c};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{62eb7f34-d5f0-42b4-a71a-737e598a3713};802-11-wireless-security": {
"$fdo_created": "1758969994",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1758969994",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{62eb7f34-d5f0-42b4-a71a-737e598a3713};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{6372a8ae-e236-47f3-8a89-9f197c576da2};802-11-wireless-security": {
"$fdo_created": "1770140129",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1770140129",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{6372a8ae-e236-47f3-8a89-9f197c576da2};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{8131dbf1-7bf9-4ca8-9630-754196d95604};802-11-wireless-security": {
"$fdo_created": "1759494180",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1759494180",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{8131dbf1-7bf9-4ca8-9630-754196d95604};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{8710b5bc-79a9-4e7b-aacd-bb6e3fcac42f};802-1x": {
"$fdo_created": "1748851397",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748851397",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{8710b5bc-79a9-4e7b-aacd-bb6e3fcac42f};802-1x",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{b4e92373-013b-464e-b038-7ce7561be96b};802-11-wireless-security": {
"$fdo_created": "1771848798",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1771848798",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{b4e92373-013b-464e-b038-7ce7561be96b};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{b5139e13-d2b3-45c8-937c-85ff9fcd22ff};802-11-wireless-security": {
"$fdo_created": "1758359018",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1758359018",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{b5139e13-d2b3-45c8-937c-85ff9fcd22ff};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{c18cb36a-7b3f-4377-bc34-c71a2eff8cc4};802-11-wireless-security": {
"$fdo_created": "1748855789",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748855789",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{c18cb36a-7b3f-4377-bc34-c71a2eff8cc4};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{c516568c-5866-4a45-8972-61d7a14c3b87};802-11-wireless-security": {
"$fdo_created": "1748654444",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748654444",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{c516568c-5866-4a45-8972-61d7a14c3b87};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{c56f34fe-4787-4a5c-93be-dbbb485ec24f};802-11-wireless-security": {
"$fdo_created": "1755868536",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1755868536",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{c56f34fe-4787-4a5c-93be-dbbb485ec24f};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{c7aa6938-f602-45e7-a37f-06cc315af94f};802-11-wireless-security": {
"$fdo_created": "1749996475",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1749996475",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{c7aa6938-f602-45e7-a37f-06cc315af94f};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{c7feb8ed-6e5d-4bab-a630-502c5da75888};802-11-wireless-security": {
"$fdo_created": "1748654427",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748654427",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{c7feb8ed-6e5d-4bab-a630-502c5da75888};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{cfd294ec-e27b-4f89-bd3e-470087e9fb7b};vpn": {
"$fdo_created": "1763038224",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1763038224",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{cfd294ec-e27b-4f89-bd3e-470087e9fb7b};vpn",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{dfe08559-d90f-43c1-90cf-c0608c6813ab};802-11-wireless-security": {
"$fdo_created": "1750142628",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1750142628",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{dfe08559-d90f-43c1-90cf-c0608c6813ab};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Network Management/{ea4a48c8-4be1-4722-910f-285658db6e81};802-11-wireless-security": {
"$fdo_created": "1763105808",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1763105808",
"attributes": {
"server": "Network Management",
"type": "map",
"user": "{ea4a48c8-4be1-4722-910f-285658db6e81};802-11-wireless-security",
"xdg:schema": "org.qt.keychain"
}
},
"Nextcloud/someone:https://nextcloud.urmel.de/:0": {
"$fdo_created": "1769591673",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1769591673",
"attributes": {
"server": "Nextcloud",
"type": "plaintext",
"user": "someone:https://nextcloud.urmel.de/:0",
"xdg:schema": "org.qt.keychain"
}
},
"Nextcloud/someone:https://nextcloud.urmel.duckdns.org/:0": {
"$fdo_created": "1748714581",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1748714581",
"attributes": {
"server": "Nextcloud",
"type": "plaintext",
"user": "someone:https://nextcloud.urmel.duckdns.org/:0",
"xdg:schema": "org.qt.keychain"
}
},
"Nextcloud/someone_app-password:https://nextcloud.urmel.de/:0": {
"$fdo_created": "1772021234",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1772021234",
"attributes": {
"server": "Nextcloud",
"type": "base64",
"user": "someone_app-password:https://nextcloud.urmel.de/:0",
"xdg:schema": "org.qt.keychain"
}
},
"Nextcloud/someone_app-password:https://nextcloud.urmel.duckdns.org/:0": {
"$fdo_created": "1768402215",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1768402215",
"attributes": {
"server": "Nextcloud",
"type": "base64",
"user": "someone_app-password:https://nextcloud.urmel.duckdns.org/:0",
"xdg:schema": "org.qt.keychain"
}
},
"Passwords/smb-172.24.2.6:-1": {
"$fdo_created": "1760266650",
"$fdo_mime_type": "text/plain",
"$fdo_modified": "1760266650",
"attributes": {
"server": "Passwords",
"type": "map",
"user": "smb-172.24.2.6:-1",
"xdg:schema": "org.qt.keychain"
}
},
"xdg-desktop-portal/org.chromium.Chromium": {
"$fdo_created": "1764573430",
"$fdo_modified": "1764573430",
"attributes": {
"server": "xdg-desktop-portal",
"type": "binary",
"user": "org.chromium.Chromium"
}
},
"xdg-desktop-portal/org.kde.konsole": {
"$fdo_created": "1761141127",
"$fdo_modified": "1761141127",
"attributes": {
"server": "xdg-desktop-portal",
"type": "binary",
"user": "org.kde.konsole"
}
}
}

View File

@ -0,0 +1,29 @@
BSD 3-Clause License
Copyright (c) 2019, Nikita Sorokovikov
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -0,0 +1,51 @@
# Dynamic Workspaces
A kwin script that creates and deletes desktops as you move windows on the last one.
I intented to replicate some of gnome-desktop's behavior with moving windows around.
As this is a simple script for satisfying my needs,
it only workds horizontally left-toright.
What I did is this:
- There is always an empty desktop on the right
- When you move a window to that desktop, a new desktop is created
- When you move window away from last desktop, or close the window,
the desktop is destroyed
Version 3.1 tested on Plasma versions from 5.27 to 6.2.5. For versions tested
since 5.6, see releases `1.*`, latest found
[here](https://github.com/d86leader/dynamic_workspaces/releases/tag/v1.0.1)
## Installation
On plasma 6:
``` bash
git clone https://github.com/d86leader/dynamic_workspaces.git
cd dynamic_workspaces
kpackagetool6 --type KWin/Script --install .
```
On plasma 5, instead of the last line:
```sh
plasmapkg2 --type kwinscript -i .
```
Then you might need to restart kwin. Do this by either logging out and back in, or by running `kwin_wayland --replace` in krunner.
### Upgrade
If updating, change the `plasmapkg2`/`kpackagetool6` command above to the following:
``` bash
# plasma 6
kpackagetool6 --type KWin/Script --upgrade .
# plasma 5
plasmapkg2 --type kwinscript -u .
```
## Known issues
This script doesn't live well with other scripts that create workspaces.
Mix at your own risk!

View File

@ -0,0 +1,310 @@
// This scripts relies on two things:
// 1. `workspace.desktops` and `client.desktops` giving me desktops in the same
// order as in pager and all context menus
// 2. Desktops being comparable for equality with `==` operator
// Desktop numbers are from zero (unlike how it worked in plasma 5)
const MIN_DESKTOPS = 2;
const LOG_LEVEL = 2; // 0 trace, 1 debug, 2 info
function log(...args) { print("[dynamic_workspaces] ", ...args); }
function debug(...args) { if (LOG_LEVEL <= 1) log(...args); }
function trace(...args) { if (LOG_LEVEL <= 0) log(...args); }
// In plasma 6 simply removing a desktop breaks the desktop switching
// animation. We use a workaround with emitting more switches at the right time
// to force the animation to play
let animationFixup = false;
/***** Plasma 5/6 differences *****/
const isKde6 = typeof workspace.windowList === "function";
const compat = isKde6
?
{ addDesktop = () =>
{ workspace.createDesktop(workspace.desktops.length, undefined); }
, windowAddedSignal = ws => ws.windowAdded
, windowList = ws => ws.windowList()
, desktopChangedSignal = c => c.desktopsChanged
, toDesktop = d => d
, workspaceDesktops = () => workspace.desktops
, lastDesktop = () => workspace.desktops[workspace.desktops.length - 1]
, deleteLastDesktop = () =>
{
try
{
animationFixup = true;
const last = workspace.desktops[workspace.desktops.length - 1];
// replay the animation by switching again
const current = workspace.currentDesktop;
const index = workspace.desktops.indexOf(current);
// in any weird corner case switch to current desktop
const target = index + 1 < workspace.desktops.length || index === -1
? workspace.desktops[index + 1]
: current;
workspace.currentDesktop = target;
workspace.removeDesktop(last);
workspace.currentDesktop = current;
}
finally
{
animationFixup = false;
}
}
, findDesktop = (ds, d) => ds.indexOf(d)
, clientDesktops = c => c.desktops
, setClientDesktops = (c, ds) =>
{
c.desktops = ds;
}
, clientOnDesktop = (c, d) => c.desktops.indexOf(d) !== -1
}
:
{ addDesktop = () =>
{ workspace.createDesktop(workspace.desktops, "dyndesk"); }
, windowAddedSignal = ws => ws.clientAdded
, windowList = ws => ws.clientList()
, desktopChangedSignal = c => c.desktopChanged
// emulate plasma 6 behaviour with custom types
, toDesktop = number => {{ index: number - 1 }}
, workspaceDesktops = () =>
{
let r = [];
for (let i = 0; i < workspace.desktops; ++i)
{
const desktop =
{ index: i
};
r.push(desktop);
}
return r;
}
, lastDesktop = () => {{ index: workspace.desktops - 1 }}
, deleteLastDesktop = () =>
{ workspace.removeDesktop(workspace.desktops - 1); }
, findDesktop = (ds, d) =>
{
for (let i = 0; i < ds.length; ++i)
{
if (ds[i].index === d.index)
{
return i;
}
}
return -1;
}
, clientDesktops = c =>
c
.x11DesktopIds
.map(id => {return {index: id - 1}})
, setClientDesktops = (c, ds) =>
{
// Plasma 5 is supports window on multiple desktops, and there
// are even functions for it in the API, but they are bugged.
// So we have to do this. So far, noone has complained, so
// maybe noone uses this feature?
c.desktop = ds[0];
}
, clientOnDesktop = (c, d) => c.desktop === d.index + 1
};
/***** Logic definition *****/
// shifts a window to the left if it's more to the right than number
function shiftRighterThan(client, number)
{
trace(`shiftRighterThan(${client.caption}, ${number})`);
if (number === 0) return;
// Build a new array by comparing old client desktops with all available
// desktops
const allDesktops = compat.workspaceDesktops();
const clientDesktops = compat.clientDesktops(client);
let newDesktops = [];
// we assume the desktop in both lists are sorted
let i = 0;
for (const d of clientDesktops)
{
// page through all desktops until we find the current one
while (d != allDesktops[i])
{
i += 1;
if (i > allDesktops.length) throw new Error("Did the behaviour of equality change?");
};
// push either current, or the one before it
if (i < number || i === 0)
{
newDesktops.push(d);
}
else
{
newDesktops.push(allDesktops[i - 1]);
}
}
compat.setClientDesktops(client, newDesktops);
}
/**
* Delete a desktop by index
*
* @returns true if desktop was deleted, false if wasn't
*/
function removeDesktop(number)
{
trace(`removeDesktop(${number})`);
const desktopsLength = compat.workspaceDesktops().length;
if (desktopsLength - 1 <= number)
{
debug("Not removing desktop at end");
return false;
}
if (desktopsLength <= MIN_DESKTOPS)
{
debug("Not removing desktop, too few left");
return false;
}
// plasma6 allows us to delete desktops in the middle. Unfortunately, this
// messes up pager, so we have to do what we did un plasma5 and shift all
// windows by hand to delete the last desktop
compat.windowList(workspace).forEach((client) =>
{
shiftRighterThan(client, number)
});
compat.deleteLastDesktop();
debug("Desktop removed");
return true;
}
// tells if desktop has no windows of its own
function isEmptyDesktop(number)
{
trace(`isEmptyDesktop(${number})`)
const desktop = compat.workspaceDesktops()[number];
const cls = compat.windowList(workspace);
for (client of cls)
{
if (compat.clientOnDesktop(client, desktop)
&& !client.skipPager // ignore hidden windows
&& !client.onAllDesktops // ignore windows on all desktops
) {
debug(`Desktop ${number} not empty because ${client.caption} is there`);
return false;
}
}
return true;
}
/**
* Checks for new created or moved windows if they are occupying the last desktop
* -> if yes, create new one to the right
*/
function onDesktopChangedFor(client)
{
trace(`onDesktopChangedFor(${client.caption})`);
const lastDesktops = compat.lastDesktop();
if (compat.clientOnDesktop(client, lastDesktops))
{
compat.addDesktop();
}
}
/**
* When creating new windows, check whether they are occupying the last desktop
*/
function onClientAdded(client)
{
if (client === null)
{
log("onClientAdded(null) - that may happen rarely");
return;
}
trace(`onClientAdded(${client.caption})`);
if (client.skipPager)
{
debug("Ignoring added hidden window");
return;
}
// add a new desktop for a client too right
if (compat.clientOnDesktop(client, compat.lastDesktop()))
{
compat.addDesktop();
}
// subscribe the client to create desktops when desktop switched
compat.desktopChangedSignal(client).connect(() => { onDesktopChangedFor(client); });
}
/**
* Deletes empty desktops to the right in case of a left switch
*/
function onDesktopSwitch(oldDesktop)
{
trace(`onDesktopSwitch(${oldDesktop})`);
if (animationFixup) return;
const allDesktops = compat.workspaceDesktops();
const oldDesktopIndex = compat.findDesktop(allDesktops, compat.toDesktop(oldDesktop));
const currentDesktopIndex = compat.findDesktop(allDesktops, compat.toDesktop(workspace.currentDesktop));
const getDesktopsLength = () => compat.workspaceDesktops().length;
const keepEmptyMiddleDesktops = readConfig("keepEmptyMiddleDesktops", false);
if (oldDesktopIndex <= currentDesktopIndex)
{
debug("Desktop switched to the right - ignoring");
return;
}
// Loop through desktops right-to-left and delete empty ones:
// - Starts from second-to-last desktop (preserving always one empty desktop at the end)
// - Stops before reaching current desktop (preserves what user is viewing)
// - Extra check (desktopIdx > 0) prevents an infinite loop caused by abnormal conditions
// In case of interference with other plugins, we'll only examine as many desktops as we initially detect
for (let desktopIdx = getDesktopsLength() - 2; desktopIdx > currentDesktopIndex && desktopIdx > 0; --desktopIdx)
{
debug(`Examine desktop ${desktopIdx}`);
if (isEmptyDesktop(desktopIdx))
{
removeDesktop(desktopIdx);
}
else if (keepEmptyMiddleDesktops)
{
debug("Found non-empty desktop, stopping purge");
break;
}
}
}
/***** Main part *****/
// Adding or removing a client might create desktops.
// For all existing clients:
compat.windowList(workspace).forEach(onClientAdded);
// And for all future clients:
compat.windowAddedSignal(workspace).connect(onClientAdded);
// Switching desktops might remove desktops
workspace.currentDesktopChanged.connect(onDesktopSwitch);

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
<kcfgfile name=""/>
<group name="">
<entry name="keepEmptyMiddleDesktops" type="Bool">
<default>false</default>
</entry>
</group>
</kcfg>

Some files were not shown because too many files have changed in this diff Show More