Begin transition to niri
This commit is contained in:
parent
85d70e9346
commit
31099da025
16 changed files with 361 additions and 40 deletions
14
fish/conf.d/fish_frozen_key_bindings.fish
Normal file
14
fish/conf.d/fish_frozen_key_bindings.fish
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
# This file was created by fish when upgrading to version 4.3, to migrate
|
||||||
|
# the 'fish_key_bindings' variable from its old default scope (universal)
|
||||||
|
# to its new default scope (global). We recommend you delete this file
|
||||||
|
# and configure key bindings in ~/.config/fish/config.fish if needed.
|
||||||
|
|
||||||
|
# set --global fish_key_bindings fish_default_key_bindings
|
||||||
|
|
||||||
|
# Prior to version 4.3, fish shipped an event handler that runs
|
||||||
|
# `set --universal fish_key_bindings fish_default_key_bindings`
|
||||||
|
# whenever the fish_key_bindings variable is erased.
|
||||||
|
# This means that as long as any fish < 4.3 is still running on this system,
|
||||||
|
# we cannot complete the migration.
|
||||||
|
# As a workaround, erase the universal variable at every shell startup.
|
||||||
|
set --erase --universal fish_key_bindings
|
||||||
|
|
@ -42,7 +42,7 @@ if status is-interactive
|
||||||
abbr lla 'ls -la'
|
abbr lla 'ls -la'
|
||||||
|
|
||||||
# Custom colours
|
# Custom colours
|
||||||
cat ~/.local/state/caelestia/sequences.txt 2>/dev/null
|
#cat ~/.local/state/caelestia/sequences.txt 2>/dev/null
|
||||||
|
|
||||||
# For jumping between prompts in foot terminal
|
# For jumping between prompts in foot terminal
|
||||||
function mark_prompt_start --on-event fish_prompt
|
function mark_prompt_start --on-event fish_prompt
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
function fish_greeting
|
function fish_greeting
|
||||||
set num $(random 1 4)
|
set num $(random 1 4)
|
||||||
echo -ne '\x1b[38;5;16m' # Set colour to primary
|
echo -ne '\x1b[36;16m' # Set colour to primary
|
||||||
echo '▄▖ ▄▖ ▄▖▜ ▜ '
|
echo '▄▖ ▄▖ ▄▖▜ ▜ '
|
||||||
echo '▌ █▌▛▘█▌▛▘▄▖▚ █▌█▌▛▘▄▖▌▌▐ ▐ '
|
echo '▌ █▌▛▘█▌▛▘▄▖▚ █▌█▌▛▘▄▖▌▌▐ ▐ '
|
||||||
echo '▙▖▙▖▌ ▙▖▄▌ ▄▌▙▖▙▖▄▌ ▛▌▐▖▐▖'
|
echo '▙▖▙▖▌ ▙▖▄▌ ▄▌▙▖▙▖▄▌ ▛▌▐▖▐▖'
|
||||||
echo ''
|
echo ''
|
||||||
echo "$(cat ~/caelestia/fish/functions/$num)"
|
echo "$(cat ~/.caelestia/fish/functions/$num)"
|
||||||
glafetch
|
glafetch
|
||||||
end
|
end
|
||||||
|
|
|
||||||
21
foot/colours.ini
Normal file
21
foot/colours.ini
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
[colors]
|
||||||
|
foreground=F8E7D8
|
||||||
|
background=0C0E0E
|
||||||
|
|
||||||
|
regular0=373939
|
||||||
|
regular1=3F4849
|
||||||
|
regular2=6D7779
|
||||||
|
regular3=89756A
|
||||||
|
regular4=AF7A5D
|
||||||
|
regular5=959C9E
|
||||||
|
regular6=EBBC8F
|
||||||
|
regular7=EDD5BF
|
||||||
|
|
||||||
|
bright0=A69585
|
||||||
|
bright1=3F4849
|
||||||
|
bright2=6D7779
|
||||||
|
bright3=89756A
|
||||||
|
bright4=AF7A5D
|
||||||
|
bright5=959C9E
|
||||||
|
bright6=EBBC8F
|
||||||
|
bright7=EDD5BF
|
||||||
|
|
@ -17,6 +17,9 @@ beam-thickness=1.5
|
||||||
[colors]
|
[colors]
|
||||||
alpha=0.78
|
alpha=0.78
|
||||||
|
|
||||||
|
[main]
|
||||||
|
include=/home/ceres/.caelestia/foot/colours.ini
|
||||||
|
|
||||||
[key-bindings]
|
[key-bindings]
|
||||||
scrollback-up-page=Page_Up
|
scrollback-up-page=Page_Up
|
||||||
scrollback-down-page=Page_Down
|
scrollback-down-page=Page_Down
|
||||||
|
|
|
||||||
|
|
@ -162,6 +162,7 @@ bind = $kbFileExplorer, exec, app2unit -- $fileExplorer
|
||||||
bind = Super+Alt, E, exec, app2unit -- nemo
|
bind = Super+Alt, E, exec, app2unit -- nemo
|
||||||
bind = Ctrl+Alt, Escape, exec, app2unit -- qps
|
bind = Ctrl+Alt, Escape, exec, app2unit -- qps
|
||||||
bind = Ctrl+Alt, V, exec, app2unit -- pavucontrol
|
bind = Ctrl+Alt, V, exec, app2unit -- pavucontrol
|
||||||
|
bind = Super, P, exec, qs -c pass
|
||||||
|
|
||||||
# Utilities
|
# Utilities
|
||||||
bindl = , Print, exec, caelestia screenshot # Full screen capture > clipboard
|
bindl = , Print, exec, caelestia screenshot # Full screen capture > clipboard
|
||||||
|
|
|
||||||
7
niri/colours.kdl
Normal file
7
niri/colours.kdl
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
layout {
|
||||||
|
border {
|
||||||
|
active-color "#3F4849"
|
||||||
|
inactive-color "#191D1D"
|
||||||
|
urgent-color "#6D7779"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,11 +1,5 @@
|
||||||
// This config is in the KDL format: https://kdl.dev
|
include "colours.kdl"
|
||||||
// "/-" comments out the following node.
|
|
||||||
// Check the wiki for a full description of the configuration:
|
|
||||||
// https://yalter.github.io/niri/Configuration:-Introduction
|
|
||||||
|
|
||||||
// Input device configuration.
|
|
||||||
// Find the full list of options on the wiki:
|
|
||||||
// https://yalter.github.io/niri/Configuration:-Input
|
|
||||||
input {
|
input {
|
||||||
keyboard {
|
keyboard {
|
||||||
xkb {
|
xkb {
|
||||||
|
|
@ -62,11 +56,11 @@ input {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Uncomment this to make the mouse warp to the center of newly focused windows.
|
// Uncomment this to make the mouse warp to the center of newly focused windows.
|
||||||
// warp-mouse-to-focus
|
warp-mouse-to-focus
|
||||||
|
|
||||||
// Focus windows and outputs automatically when moving the mouse into them.
|
// Focus windows and outputs automatically when moving the mouse into them.
|
||||||
// Setting max-scroll-amount="0%" makes it work only on windows already fully on screen.
|
// Setting max-scroll-amount="0%" makes it work only on windows already fully on screen.
|
||||||
// focus-follows-mouse max-scroll-amount="0%"
|
focus-follows-mouse max-scroll-amount="100%"
|
||||||
}
|
}
|
||||||
|
|
||||||
// You can configure outputs by their name, which you can find
|
// You can configure outputs by their name, which you can find
|
||||||
|
|
@ -113,6 +107,21 @@ layout {
|
||||||
// Set gaps around windows in logical pixels.
|
// Set gaps around windows in logical pixels.
|
||||||
gaps 16
|
gaps 16
|
||||||
|
|
||||||
|
// These set global defaults for blur, however it needs to be enabled
|
||||||
|
// individually on a per-window or per-layer basis as well for it to have
|
||||||
|
// any effect.
|
||||||
|
//
|
||||||
|
// Certain apps that support the KDE blur protocol may blur themselves as well.
|
||||||
|
blur {
|
||||||
|
noise 0.1
|
||||||
|
passes 2
|
||||||
|
radius 6
|
||||||
|
|
||||||
|
// Sensible default, gets applied to blurred layer surfaces, as most of the
|
||||||
|
// time, the actual surface is bigger than what is rendered on screen.
|
||||||
|
ignore-alpha 0.8
|
||||||
|
}
|
||||||
|
|
||||||
// When to center a column when changing focus, options are:
|
// When to center a column when changing focus, options are:
|
||||||
// - "never", default behavior, focusing an off-screen column will keep at the left
|
// - "never", default behavior, focusing an off-screen column will keep at the left
|
||||||
// or right edge of the screen.
|
// or right edge of the screen.
|
||||||
|
|
@ -191,25 +200,9 @@ layout {
|
||||||
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
||||||
}
|
}
|
||||||
|
|
||||||
// You can also add a border. It's similar to the focus ring, but always visible.
|
|
||||||
border {
|
border {
|
||||||
// The settings are the same as for the focus ring.
|
|
||||||
// If you enable the border, you probably want to disable the focus ring.
|
|
||||||
on
|
on
|
||||||
|
|
||||||
width 4
|
width 4
|
||||||
active-color "#ffc87f"
|
|
||||||
inactive-color "#505050"
|
|
||||||
|
|
||||||
// Color of the border around windows that request your attention.
|
|
||||||
urgent-color "#9b0000"
|
|
||||||
|
|
||||||
// Gradients can use a few different interpolation color spaces.
|
|
||||||
// For example, this is a pastel rainbow gradient via in="oklch longer hue".
|
|
||||||
//
|
|
||||||
// active-gradient from="#e5989b" to="#ffb4a2" angle=45 relative-to="workspace-view" in="oklch longer hue"
|
|
||||||
|
|
||||||
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// You can enable drop shadows for windows.
|
// You can enable drop shadows for windows.
|
||||||
|
|
@ -268,14 +261,15 @@ layout {
|
||||||
// See the binds section below for more spawn examples.
|
// See the binds section below for more spawn examples.
|
||||||
|
|
||||||
// This line starts waybar, a commonly used bar for Wayland compositors.
|
// This line starts waybar, a commonly used bar for Wayland compositors.
|
||||||
spawn-at-startup "qs"
|
spawn-sh-at-startup "/home/ceres/.caelestia/niri/random-wallpaper.sh"
|
||||||
|
spawn-sh-at-startup "qs -c shell"
|
||||||
|
|
||||||
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
|
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
|
||||||
// spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
|
// spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
|
||||||
|
|
||||||
hotkey-overlay {
|
hotkey-overlay {
|
||||||
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
|
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
|
||||||
// skip-at-startup
|
skip-at-startup
|
||||||
}
|
}
|
||||||
|
|
||||||
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
|
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
|
||||||
|
|
@ -283,7 +277,7 @@ hotkey-overlay {
|
||||||
// Additionally, clients will be informed that they are tiled, removing some client-side rounded corners.
|
// Additionally, clients will be informed that they are tiled, removing some client-side rounded corners.
|
||||||
// This option will also fix border/focus ring drawing behind some semitransparent windows.
|
// This option will also fix border/focus ring drawing behind some semitransparent windows.
|
||||||
// After enabling or disabling this, you need to restart the apps for this to take effect.
|
// After enabling or disabling this, you need to restart the apps for this to take effect.
|
||||||
// prefer-no-csd
|
prefer-no-csd
|
||||||
|
|
||||||
// You can change the path where screenshots are saved.
|
// You can change the path where screenshots are saved.
|
||||||
// A ~ at the front will be expanded to the home directory.
|
// A ~ at the front will be expanded to the home directory.
|
||||||
|
|
@ -327,6 +321,22 @@ window-rule {
|
||||||
open-floating true
|
open-floating true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
// This app-id regular expression will work for both:
|
||||||
|
// - host Firefox (app-id is "firefox")
|
||||||
|
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
|
||||||
|
match title="^qs-pass$"
|
||||||
|
open-floating true
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
// This app-id regular expression will work for both:
|
||||||
|
// - host Firefox (app-id is "firefox")
|
||||||
|
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
|
||||||
|
match title="^wallpaper-selector$"
|
||||||
|
open-floating true
|
||||||
|
}
|
||||||
|
|
||||||
// Example: block out two password managers from screen capture.
|
// Example: block out two password managers from screen capture.
|
||||||
// (This example rule is commented out with a "/-" in front.)
|
// (This example rule is commented out with a "/-" in front.)
|
||||||
/-window-rule {
|
/-window-rule {
|
||||||
|
|
@ -345,7 +355,18 @@ window-rule {
|
||||||
geometry-corner-radius 12
|
geometry-corner-radius 12
|
||||||
clip-to-geometry true
|
clip-to-geometry true
|
||||||
draw-border-with-background false
|
draw-border-with-background false
|
||||||
opacity 0.95
|
blur {
|
||||||
|
on
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
layer-rule {
|
||||||
|
match namespace="^quickshell$"
|
||||||
|
place-within-backdrop true
|
||||||
|
}
|
||||||
|
|
||||||
|
overview {
|
||||||
|
backdrop-color "#1e1e2e"
|
||||||
}
|
}
|
||||||
|
|
||||||
binds {
|
binds {
|
||||||
|
|
@ -366,8 +387,9 @@ binds {
|
||||||
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||||
Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "foot"; }
|
Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "foot"; }
|
||||||
Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
|
Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
|
||||||
Mod+B { spawn "zen"; }
|
|
||||||
Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||||
|
Mod+B { spawn "zen"; }
|
||||||
|
Mod+P { spawn-sh "qs -c pass"; }
|
||||||
|
|
||||||
// Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
|
// Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
|
||||||
// Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`.
|
// Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`.
|
||||||
|
|
@ -589,10 +611,14 @@ binds {
|
||||||
Mod+V { toggle-window-floating; }
|
Mod+V { toggle-window-floating; }
|
||||||
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
|
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
|
||||||
|
|
||||||
// Toggle tabbed column display mode.
|
// Toggle tabbed tile display mode.
|
||||||
// Windows in this column will appear as vertical tabs,
|
// Windows can be moved into or out of this tile using the
|
||||||
// rather than stacked on top of each other.
|
// `move-window-into-or-out-of-group` action; example:
|
||||||
Mod+W { toggle-column-tabbed-display; }
|
Mod+W { toggle-group; }
|
||||||
|
Mod+Alt+H { move-window-into-or-out-of-group "left"; }
|
||||||
|
Mod+Alt+L { move-window-into-or-out-of-group "right"; }
|
||||||
|
Mod+Alt+K { move-window-into-or-out-of-group "up"; }
|
||||||
|
Mod+Alt+J { move-window-into-or-out-of-group "down"; }
|
||||||
|
|
||||||
// Actions to switch layouts.
|
// Actions to switch layouts.
|
||||||
// Note: if you uncomment these, make sure you do NOT have
|
// Note: if you uncomment these, make sure you do NOT have
|
||||||
|
|
|
||||||
6
niri/random-wallpaper.sh
Executable file
6
niri/random-wallpaper.sh
Executable file
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
wallpaper_path="$(find ~/.caelestia/wallpapers -type f | shuf -n 1)"
|
||||||
|
|
||||||
|
ln -sf ${wallpaper_path} "/home/ceres/.local/state/niri/wallpaper"
|
||||||
|
|
||||||
|
wallust run "${wallpaper_path}"
|
||||||
198
quickshell/pass/shell.qml
Normal file
198
quickshell/pass/shell.qml
Normal file
|
|
@ -0,0 +1,198 @@
|
||||||
|
import QtQuick
|
||||||
|
import QtQuick.Controls
|
||||||
|
import QtQuick.Layouts
|
||||||
|
import QtQuick.LocalStorage
|
||||||
|
import Quickshell
|
||||||
|
import Quickshell.Widgets
|
||||||
|
import Quickshell.Io
|
||||||
|
import Qt.labs.folderlistmodel
|
||||||
|
|
||||||
|
Window {
|
||||||
|
id: launcher
|
||||||
|
title: "qs-pass"
|
||||||
|
visible: true
|
||||||
|
flags: Qt.FramelessWindowHint | Qt.WindowStaysOnTopHint
|
||||||
|
color: Qt.rgba(0.117, 0.118, 0.180, 0.5)
|
||||||
|
width: 560
|
||||||
|
height: 360
|
||||||
|
|
||||||
|
property string query: ""
|
||||||
|
property string passLocation: ""
|
||||||
|
|
||||||
|
Process {
|
||||||
|
id: passCopy
|
||||||
|
running: false
|
||||||
|
command: ["pass", "-c", passLocation]
|
||||||
|
stdout: StdioCollector {
|
||||||
|
onStreamFinished: Qt.quit()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Process {
|
||||||
|
id: userCopy
|
||||||
|
running: false
|
||||||
|
command: ["pass", "-c2", passLocation]
|
||||||
|
}
|
||||||
|
|
||||||
|
function copyPass() {
|
||||||
|
if(list.currentItem.fileIsDir==true) {
|
||||||
|
folderModel.folder = folderModel.folder+"/"+list.currentItem.fileBaseName
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
passLocation = list.currentItem.filePath
|
||||||
|
passLocation = passLocation.replace("/home/ceres/.password-store/", "")
|
||||||
|
passLocation = passLocation.replace(".gpg", "")
|
||||||
|
passCopy.running = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function copyUser() {
|
||||||
|
if(list.currentItem.fileIsDir==true) {
|
||||||
|
folderModel.folder = folderModel.folder+"/"+list.currentItem.fileBaseName
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
passLocation = list.currentItem.filePath
|
||||||
|
passLocation = passLocation.replace("/home/ceres/.password-store/", "")
|
||||||
|
passLocation = passLocation.replace(".gpg", "")
|
||||||
|
userCopy.running = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ColumnLayout {
|
||||||
|
anchors.fill: parent
|
||||||
|
spacing: 8
|
||||||
|
|
||||||
|
RowLayout {
|
||||||
|
IconImage {
|
||||||
|
Layout.leftMargin: 10
|
||||||
|
source: Quickshell.iconPath("password-copy", true)
|
||||||
|
Layout.preferredWidth: 25
|
||||||
|
Layout.preferredHeight: 25
|
||||||
|
}
|
||||||
|
|
||||||
|
TextField {
|
||||||
|
id: input
|
||||||
|
Layout.fillWidth: true
|
||||||
|
font.pixelSize: 18
|
||||||
|
color: "white"
|
||||||
|
focus: true
|
||||||
|
|
||||||
|
padding: 15
|
||||||
|
|
||||||
|
onTextChanged: {
|
||||||
|
launcher.query = text;
|
||||||
|
// reset selection to first item of the filtered list
|
||||||
|
list.currentIndex = folderModel.length > 0 ? 0 : -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
background: Rectangle {
|
||||||
|
border.width: 0
|
||||||
|
color: "transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Quit
|
||||||
|
Keys.onEscapePressed: Qt.quit()
|
||||||
|
Keys.onPressed: event => {
|
||||||
|
const ctrl = event.modifiers & Qt.ControlModifier;
|
||||||
|
if (event.key == Qt.Key_Up || event.key == Qt.Key_P && ctrl) {
|
||||||
|
event.accepted = true;
|
||||||
|
if (list.currentIndex > 0)
|
||||||
|
list.currentIndex--;
|
||||||
|
} else if (event.key == Qt.Key_Down || event.key == Qt.Key_N && ctrl) {
|
||||||
|
event.accepted = true;
|
||||||
|
if (list.currentIndex < list.count - 1)
|
||||||
|
list.currentIndex++;
|
||||||
|
} else if (event.key == Qt.Key_U && ctrl) {
|
||||||
|
event.accepted = true;
|
||||||
|
launcher.copyUser();
|
||||||
|
} else if ([Qt.Key_Return, Qt.Key_Enter].includes(event.key)) {
|
||||||
|
event.accepted = true;
|
||||||
|
launcher.copyPass();
|
||||||
|
} else if (event.key == Qt.Key_C && ctrl) {
|
||||||
|
event.accepted = true;
|
||||||
|
Qt.quit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
FolderListModel {
|
||||||
|
function getQuery() {
|
||||||
|
return "*"+launcher.query+"*"
|
||||||
|
}
|
||||||
|
id: folderModel
|
||||||
|
folder: "file:///home/ceres/.password-store/"
|
||||||
|
showDirsFirst: true
|
||||||
|
caseSensitive: false
|
||||||
|
showDirs: launcher.query === "" ? true : false
|
||||||
|
nameFilters: [ getQuery() ]
|
||||||
|
}
|
||||||
|
|
||||||
|
ListView {
|
||||||
|
id: list
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.fillHeight: true
|
||||||
|
clip: true
|
||||||
|
model: folderModel
|
||||||
|
currentIndex: folderModel.length > 0 ? 0 : -1
|
||||||
|
keyNavigationWraps: true
|
||||||
|
preferredHighlightBegin: 0
|
||||||
|
preferredHighlightEnd: height
|
||||||
|
highlightRangeMode: ListView.ApplyRange
|
||||||
|
highlightMoveDuration: 80
|
||||||
|
highlight: Rectangle {
|
||||||
|
radius: 4
|
||||||
|
opacity: 0.45
|
||||||
|
color: input.palette.highlight
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
delegate: Item {
|
||||||
|
id: entry
|
||||||
|
required property string fileBaseName
|
||||||
|
required property string filePath
|
||||||
|
required property int index
|
||||||
|
required property bool fileIsDir
|
||||||
|
width: ListView.view.width
|
||||||
|
height: 36
|
||||||
|
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
onClicked: list.currentIndex = entry.index
|
||||||
|
onDoubleClicked: launcher.launchSelected()
|
||||||
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
anchors.fill: parent
|
||||||
|
anchors.margins: 8
|
||||||
|
spacing: 10
|
||||||
|
|
||||||
|
// IconImage {
|
||||||
|
// source: Quickshell.iconPath(modelData.icon, true)
|
||||||
|
// width: 23
|
||||||
|
// height: 23
|
||||||
|
// }
|
||||||
|
Text {
|
||||||
|
function genText() {
|
||||||
|
if(fileIsDir==true) {
|
||||||
|
return fileBaseName+"/"
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return fileBaseName
|
||||||
|
}
|
||||||
|
}
|
||||||
|
id: label
|
||||||
|
color: "white"
|
||||||
|
text: genText()
|
||||||
|
font.pointSize: 13
|
||||||
|
elide: Text.ElideRight
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Enter also works while ListView has focus
|
||||||
|
Keys.onReturnPressed: launcher.copyUser()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
import Quickshell
|
import Quickshell
|
||||||
import QtQuick
|
import QtQuick
|
||||||
|
import Quickshell.Wayland
|
||||||
|
|
||||||
PanelWindow {
|
PanelWindow {
|
||||||
id: background
|
id: background
|
||||||
|
|
@ -9,12 +10,12 @@ PanelWindow {
|
||||||
bottom: true
|
bottom: true
|
||||||
top: true
|
top: true
|
||||||
}
|
}
|
||||||
aboveWindows: false
|
WlrLayershell.layer: WlrLayer.Background
|
||||||
|
|
||||||
Image {
|
Image {
|
||||||
width: background.width
|
width: background.width
|
||||||
height: background.height
|
height: background.height
|
||||||
source: "/home/ceres/Pictures/Wallpapers/current"
|
source: "/home/ceres/.local/state/niri/wallpaper"
|
||||||
fillMode: Image.PreserveAspectCrop
|
fillMode: Image.PreserveAspectCrop
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
/home/ceres/Pictures/Wallpapers/arcade.jpg
|
/home/ceres/Pictures/Wallpapers/eclipse.jpg
|
||||||
21
wallust/templates/foot
Normal file
21
wallust/templates/foot
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
[colors]
|
||||||
|
foreground={{ foreground | strip }}
|
||||||
|
background={{ background | strip }}
|
||||||
|
|
||||||
|
regular0={{ color0 | strip }}
|
||||||
|
regular1={{ color1 | strip }}
|
||||||
|
regular2={{ color2 | strip }}
|
||||||
|
regular3={{ color3 | strip }}
|
||||||
|
regular4={{ color4 | strip }}
|
||||||
|
regular5={{ color5 | strip }}
|
||||||
|
regular6={{ color6 | strip }}
|
||||||
|
regular7={{ color7 | strip }}
|
||||||
|
|
||||||
|
bright0={{ color8 | strip }}
|
||||||
|
bright1={{ color9 | strip }}
|
||||||
|
bright2={{ color10 | strip }}
|
||||||
|
bright3={{ color11 | strip }}
|
||||||
|
bright4={{ color12 | strip }}
|
||||||
|
bright5={{ color13 | strip }}
|
||||||
|
bright6={{ color14 | strip }}
|
||||||
|
bright7={{ color15 | strip }}
|
||||||
7
wallust/templates/niri
Normal file
7
wallust/templates/niri
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
layout {
|
||||||
|
border {
|
||||||
|
active-color "{{ color1 }}"
|
||||||
|
inactive-color "{{ color1 | darken(0.6) }}"
|
||||||
|
urgent-color "{{ color2 }}"
|
||||||
|
}
|
||||||
|
}
|
||||||
16
wallust/wallust.toml
Normal file
16
wallust/wallust.toml
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
backend = "full"
|
||||||
|
|
||||||
|
color_space = "lab-mixed"
|
||||||
|
|
||||||
|
palette = "dark"
|
||||||
|
|
||||||
|
check_contrast = true
|
||||||
|
|
||||||
|
[templates]
|
||||||
|
# NOTE: prefer '' over "" for paths, avoids escaping.
|
||||||
|
# template: A RELATIVE path that points to `~/.config/wallust/template` (depends on platform)
|
||||||
|
# target: ABSOLUTE path in which to place a file with generated templated values.
|
||||||
|
# ¡ If either one is a directory, then both SHOULD be one. !
|
||||||
|
# zathura = { template = 'zathura', target = '~/.config/zathura/zathurarc' }
|
||||||
|
niri = { template = 'niri', target = '~/.caelestia/niri/colours.kdl' }
|
||||||
|
foot = { template = 'foot', target = '~/.caelestia/foot/colours.ini' }
|
||||||
Loading…
Add table
Add a link
Reference in a new issue