Init (after stash)
30
.gitignore
vendored
Normal 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
@ -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
@ -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
|
After Width: | Height: | Size: 31 KiB |
BIN
eggs/assets/Code.png
Executable file
|
After Width: | Height: | Size: 26 KiB |
BIN
eggs/assets/arch-maron.png
Executable file
|
After Width: | Height: | Size: 18 KiB |
BIN
eggs/assets/cloudy.png
Executable file
|
After Width: | Height: | Size: 132 KiB |
BIN
eggs/assets/def_window.png
Executable file
|
After Width: | Height: | Size: 104 KiB |
BIN
eggs/assets/no-notification.png
Executable file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
eggs/assets/pause.png
Executable file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
eggs/assets/play.png
Executable file
|
After Width: | Height: | Size: 7.8 KiB |
BIN
eggs/assets/volume-down.png
Executable file
|
After Width: | Height: | Size: 6.0 KiB |
BIN
eggs/assets/volume-mute.png
Executable file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
eggs/assets/volume-up.png
Executable file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
eggs/assets/wallpaper/Bridge.jpg
Executable file
|
After Width: | Height: | Size: 177 KiB |
BIN
eggs/assets/wallpaper/Rem.jpg
Executable file
|
After Width: | Height: | Size: 433 KiB |
BIN
eggs/assets/wallpaper/Rin.png
Executable file
|
After Width: | Height: | Size: 788 KiB |
BIN
eggs/assets/wallpaper/arch-rainbow.png
Executable file
|
After Width: | Height: | Size: 25 KiB |
BIN
eggs/assets/wallpaper/ascii-girl-hello.png
Executable file
|
After Width: | Height: | Size: 121 KiB |
BIN
eggs/assets/wallpaper/bg-dp1.png
Executable file
|
After Width: | Height: | Size: 84 KiB |
BIN
eggs/assets/wallpaper/bg-dp2.png
Executable file
|
After Width: | Height: | Size: 47 KiB |
BIN
eggs/assets/wallpaper/cat_arrow_edit.png
Executable file
|
After Width: | Height: | Size: 2.6 MiB |
BIN
eggs/assets/wallpaper/cat_arrow_frappe.png
Executable file
|
After Width: | Height: | Size: 34 KiB |
BIN
eggs/assets/wallpaper/frappe-rem.png
Executable file
|
After Width: | Height: | Size: 6.7 MiB |
BIN
eggs/assets/wallpaper/hypr_anime.png
Executable file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
eggs/assets/wallpaper/hypr_anime2.png
Executable file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
eggs/assets/wallpaper/hypr_anime3.png
Executable file
|
After Width: | Height: | Size: 27 MiB |
BIN
eggs/assets/wallpaper/perfect-blue.png
Executable file
|
After Width: | Height: | Size: 16 MiB |
BIN
eggs/assets/wallpaper/spooky_spill.jpg
Executable file
|
After Width: | Height: | Size: 412 KiB |
BIN
eggs/assets/wallpaper/wallhaven-zmmkkv.png
Executable file
|
After Width: | Height: | Size: 2.2 MiB |
BIN
eggs/assets/wallpaper/waves_right_colored.png
Executable file
|
After Width: | Height: | Size: 72 KiB |
BIN
eggs/dconfNixMain/user
Normal file
467
eggs/dunst/dunstrc
Executable 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
@ -0,0 +1 @@
|
||||
5d0d4031-6c0d-4928-bf8d-63c20ef8e236
|
||||
BIN
eggs/fonts/Gilroy-Black.otf
Normal file
BIN
eggs/fonts/Gilroy-BlackItalic.otf
Normal file
BIN
eggs/fonts/Gilroy-Bold.otf
Normal file
BIN
eggs/fonts/Gilroy-BoldItalic.otf
Normal file
BIN
eggs/fonts/Gilroy-ExtraBold.otf
Normal file
BIN
eggs/fonts/Gilroy-Light.otf
Normal file
BIN
eggs/fonts/Gilroy-Medium.otf
Normal file
BIN
eggs/fonts/Gilroy-MediumItalic.otf
Normal file
BIN
eggs/fonts/Gilroy-SemiBold.otf
Normal file
BIN
eggs/fonts/Gilroy-SemiBoldItalic.otf
Normal file
BIN
eggs/fonts/Hind-Bold.otf
Normal file
BIN
eggs/fonts/Hind-Regular.otf
Normal file
BIN
eggs/fonts/calibri-bold-italic.ttf
Normal file
BIN
eggs/fonts/calibri-bold.ttf
Normal file
BIN
eggs/fonts/calibri-italic.ttf
Normal file
BIN
eggs/fonts/calibri-regular.ttf
Normal file
BIN
eggs/fonts/ljs-social-media.otf
Normal file
BIN
eggs/fonts/verdana-bold-italic.ttf
Normal file
BIN
eggs/fonts/verdana-bold.ttf
Normal file
BIN
eggs/fonts/verdana.ttf
Normal file
3
eggs/git/.gitconfig
Normal file
@ -0,0 +1,3 @@
|
||||
[user]
|
||||
name = Kyattsukuro
|
||||
email = nikl.free44@gmail.com
|
||||
66
eggs/htop/htoprc
Executable 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
@ -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
@ -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
@ -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
@ -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
|
||||
55
eggs/hypr/scripts/follow_workspace.sh
Executable 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;
|
||||
15
eggs/hypr/scripts/specia-workspace-movment-toggle.sh
Executable 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}
|
||||
57
eggs/hypr/scripts/workspace_manager.sh
Executable 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
|
||||
9
eggs/i2p_librewolf/i2p_librewolf.desktop
Normal 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
|
||||
1
eggs/i2p_librewolf/profile/addons.json
Normal 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}]}
|
||||
1
eggs/i2p_librewolf/profile/extension-preferences.json
Normal 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":[]}}
|
||||
1
eggs/i2p_librewolf/profile/extension-settings.json
Normal 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":{}}
|
||||
1
eggs/i2p_librewolf/profile/extensions.json
Normal file
196
eggs/i2p_librewolf/profile/prefs.js
Normal 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);
|
||||
BIN
eggs/i2p_librewolf/profile/settings/data.safe.bin
Normal 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.
|
||||
11
eggs/kde_config/autostart/Nextcloud.desktop
Normal 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
|
||||
0
eggs/kde_config/kactivitymanagerd-switcher
Normal file
31
eggs/kde_config/kde.org/UserFeedback.org.kde.discover.conf
Normal 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)
|
||||
30
eggs/kde_config/kde.org/UserFeedback.org.kde.dolphin.conf
Normal 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
|
||||
21
eggs/kde_config/kde.org/UserFeedback.org.kde.kate.conf
Normal 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
|
||||
21
eggs/kde_config/kde.org/UserFeedback.org.kde.kwrite.conf
Normal 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
|
||||
@ -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)
|
||||
@ -0,0 +1,2 @@
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=2
|
||||
12
eggs/kde_config/kde.org/elisa.conf
Normal 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
|
||||
8
eggs/kde_config/kdedefaults/kdeglobals
Normal file
@ -0,0 +1,8 @@
|
||||
[General]
|
||||
ColorScheme=CatppuccinFrappeBlue
|
||||
|
||||
[Icons]
|
||||
Theme=breeze-dark
|
||||
|
||||
[KDE]
|
||||
widgetStyle=Breeze
|
||||
1
eggs/kde_config/kdedefaults/package
Normal file
@ -0,0 +1 @@
|
||||
Catppuccin-Frappe-Blue
|
||||
163
eggs/kde_config/kdeglobals
Normal 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
|
||||
2
eggs/kde_config/knfsshare
Normal file
@ -0,0 +1,2 @@
|
||||
[General]
|
||||
exportsFile=/etc/exports
|
||||
15
eggs/kde_config/xsettingsd/xsettingsd.conf
Normal 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"
|
||||
|
||||
29
eggs/kde_locals/knewstuff3/konsole.knsregistry
Normal 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><p>----- Konsole Colourscheme for Catppuccin Frapp&eacute; -----</p>
|
||||
|
||||
<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/</p>
|
||||
|
||||
<p>Any issues can be reported here: https://github.com/catppuccin/konsole/issues</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>
|
||||
31
eggs/kde_locals/knewstuff3/ksplash.knsregistry
Normal 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><h1>Description</h1>
|
||||
|
||||
<p>Wake up your pc with Kuro the cat</p>
|
||||
|
||||
<h1>History</h1>
|
||||
|
||||
<p>My own code for replacing kuro that it seems to be abandoned.</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>
|
||||
64
eggs/kde_locals/knewstuff3/kwinscripts.knsregistry
Normal 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><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).</p>
|
||||
|
||||
<p>This is the Plasma 6 version. The Plasma 5 version can be found here: https://www.pling.com/p/2018573/</p>
|
||||
|
||||
<p>Based on (but not forked from) bahamondev/hide-titles https://store.kde.org/p/1354715</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><p>A kwin script that creates and deletes desktops as you move windows on the last one.</p>
|
||||
|
||||
<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:</p>
|
||||
|
||||
<ul>
|
||||
<li>There is always an empty desktop on the right</li>
|
||||
<li>When you move a window to that desktop, a new desktop is created</li>
|
||||
<li>When you move window away from last desktop, or close the window,
|
||||
the desktop is destroyed</li>
|
||||
</ul>
|
||||
|
||||
<p>If you encounter problems, file an issue at my github repo: https://github.com/d86leader/dynamic<em>workspaces
|
||||
If you don't encounter problems, file a star on my github repo: https://github.com/d86leader/dynamic</em>workspaces , why don't ya.</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>
|
||||
27
eggs/kde_locals/knewstuff3/plasmoids.knsregistry
Normal 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><p>Widget with window title and control buttons.</p>
|
||||
|
||||
<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-</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>
|
||||
31
eggs/kde_locals/knewstuff3/xcursor.knsregistry
Normal 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><p>----- Cursors for Catppuccin's Frappe -----</p>
|
||||
|
||||
<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!</p>
|
||||
|
||||
<p>This project is a modification of <a href="https://github.com/varlesh/volantes-cursors">Volantes Cursors</a> with the Catppuccin palettes.</p>
|
||||
|
||||
<p>Any issues can be reported here: https://github.com/catppuccin/cursors/issues</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>
|
||||
7
eggs/kde_locals/konsole/Cat.profile
Normal file
@ -0,0 +1,7 @@
|
||||
[Appearance]
|
||||
ColorScheme=Catppuccin-Frappe
|
||||
|
||||
[General]
|
||||
Directory=
|
||||
Name=Cat
|
||||
Parent=FALLBACK/
|
||||
96
eggs/kde_locals/konsole/Catppuccin-Frappe.colorscheme
Normal 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=
|
||||
BIN
eggs/kde_locals/kwalletd/kdewallet.kwl
Normal file
BIN
eggs/kde_locals/kwalletd/kdewallet.salt
Normal file
286
eggs/kde_locals/kwalletd/kdewallet_attributes.json
Normal 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"
|
||||
}
|
||||
}
|
||||
}
|
||||
29
eggs/kde_locals/kwin/scripts/dynamic_workspaces/LICENSE
Normal 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.
|
||||
51
eggs/kde_locals/kwin/scripts/dynamic_workspaces/README.md
Normal 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!
|
||||
@ -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);
|
||||
@ -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>
|
||||