Compare commits

...

27 commits

Author SHA1 Message Date
Quentin Godefroid
4e4aaba6fa
improve work config 2024-09-30 17:29:48 +02:00
Quentin Godefroid
c74f437756
update ozh 2024-09-30 17:18:57 +02:00
Quentin Godefroid
25f1373db7
wip 2024-09-30 17:18:29 +02:00
Quentin Godefroid
55637cda7b
recude alacritty font size 2024-09-30 17:17:34 +02:00
Quentin Godefroid
dd88ebc9b2
default shell 2024-09-30 17:17:34 +02:00
Quentin Godefroid
f3c2d3b930
update .ohmyzsh 2024-09-30 17:17:15 +02:00
Quentin Godefroid
090b744b82
add nano and update i3 status 2024-09-30 17:17:15 +02:00
Quentin Godefroid
81e178ff75
g 2024-09-30 17:13:20 +02:00
Quentin Godefroid
aa55391311
feat(i3): Add i3 config
feat(alacritty): Migrate to toml
2024-09-30 17:13:20 +02:00
Quentin Godefroid
a3331c0e51
feat(zsh) Add openstack alias 2024-09-30 17:04:24 +02:00
Hactarus
beca1f8ef1
htop add custom fields 2024-09-30 17:03:47 +02:00
Hactarus
88e8f9bc36
htop add custom fields 2024-09-30 17:03:47 +02:00
Hactarus
f74d170c2c
update htop config 2024-09-30 17:03:46 +02:00
Hactarus
134066fed9
Rename htop.cnf and remove duplicate entry on nanorc 2024-09-30 17:03:46 +02:00
Hactarus
6fa5c39356
update setup dirname 2024-09-30 17:03:46 +02:00
Hactarus
eedb41e00a
Update gitconfig gpg 2024-09-30 17:03:31 +02:00
Quentin Godefroid
e645b21718
add edefault user 2024-09-30 17:02:56 +02:00
Quentin Godefroid
3ab604fc62
add hx,alac update omz 2024-09-30 17:02:35 +02:00
Quentin Godefroid
5db4e092d6
adapt for work 2024-09-30 16:57:45 +02:00
Quentin Godefroid
977bc2aa49
Add ubuntu to modules, add .webhosting-dotfiles 2024-09-30 16:48:02 +02:00
Hactarus
fe0993358b WIP 2024-09-29 17:36:23 +02:00
Hactarus
1ff03eb4ca Add piucom and i3 with transparency 2024-09-03 15:35:42 +02:00
Hactarus
e1317d38ee add polybar 2024-08-24 02:04:50 +02:00
Hactarus
b751b5c492 add nehu i3 dotfiles to try 2024-08-24 02:01:28 +02:00
Hactarus
1d1396b34f update 2024-08-24 01:58:23 +02:00
Hactarus
375266a8e7 update 2024-08-24 01:58:13 +02:00
Hactarus
5e0d2135eb [pre-commit] Update toi 4.5.0
[nano] Remove draft§ folder
[i3status] Add Eth
[alactritty] Use 256 colors
2024-03-03 20:17:06 +01:00
34 changed files with 1630 additions and 1257 deletions

2
.gitignore vendored
View file

@ -1,2 +1,4 @@
git/.gitconfig-work git/.gitconfig-work
zsh/.oh-my-zsh
home/ home/
nano/.cache/nano/*

View file

@ -1,10 +1,10 @@
# See https://pre-commit.com for more information # See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks # See https://pre-commit.com/hooks.html for more hooks
repos: repos:
- repo: https://github.com/pre-commit/pre-commit-hooks - repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.2.0 rev: v4.5.0
hooks: hooks:
- id: trailing-whitespace - id: trailing-whitespace
- id: end-of-file-fixer - id: end-of-file-fixer
- id: check-yaml - id: check-yaml
- id: check-added-large-files - id: check-added-large-files

View file

@ -0,0 +1,12 @@
import = ["~/.config/alacritty/dracula.toml", "~/.config/alacritty/qgodefro.toml"]
[env]
TERM = "xterm-256color"
decorations = "none"
startup_mode = "Maximized"
[window]
opacity = 0.70
[scrolling]
history = 100000

View file

@ -1,905 +0,0 @@
# Configuration for Alacritty, the GPU enhanced terminal emulator.
# Import additional configuration files
#
# Imports are loaded in order, skipping all missing files, with the importing
# file being loaded last. If a field is already present in a previous import, it
# will be replaced.
#
# All imports must either be absolute paths starting with `/`, or paths relative
# to the user's home directory starting with `~/`.
#import:
# - /path/to/alacritty.yml
import:
- ~/.config/alacritty/dracula.yml
- ~/.config/alacritty/qgodefro.yml
#import:
# - /path/to/alacritty.yml
# Any items in the `env` entry below will be added as
# environment variables. Some entries may override variables
# set by alacritty itself.
env:
TERM: xterm
# TERM variable
#
# This value is used to set the `$TERM` environment variable for
# each instance of Alacritty. If it is not present, alacritty will
# check the local terminfo database and use `alacritty` if it is
# available, otherwise `xterm-256color` is used.
#TERM: alacritty
#window:
# Window dimensions (changes require restart)
#
# Number of lines/columns (not pixels) in the terminal. Both lines and columns
# must be non-zero for this to take effect. The number of columns must be at
# least `2`, while using a value of `0` for columns and lines will fall back
# to the window manager's recommended size
#dimensions:
# columns: 0
# lines: 0
# Window position (changes require restart)
#
# Specified in number of pixels.
# If the position is not set, the window manager will handle the placement.
#position:
# x: 0
# y: 0
# Window padding (changes require restart)
#
# Blank space added around the window in pixels. This padding is scaled
# by DPI and the specified value is always added at both opposing sides.
#padding:
# x: 0
# y: 0
# Spread additional padding evenly around the terminal content.
#dynamic_padding: false
# Window decorations
#
# Values for `decorations`:
# - full: Borders and title bar
# - none: Neither borders nor title bar
#
# Values for `decorations` (macOS only):
# - transparent: Title bar, transparent background and title bar buttons
# - buttonless: Title bar, transparent background and no title bar buttons
decorations: none
# Background opacity
#
# Window opacity as a floating point number from `0.0` to `1.0`.
# The value `0.0` is completely transparent and `1.0` is opaque.
opacity: "0.9"
# Startup Mode (changes require restart)
#
# Values for `startup_mode`:
# - Windowed
# - Maximized
# - Fullscreen
#
# Values for `startup_mode` (macOS only):
# - SimpleFullscreen
startup_mode: Maximized
# Window title
#title: Alacritty
# Allow terminal applications to change Alacritty's window title.
#dynamic_title: true
# Window class (Linux/BSD only):
#class:
# Application instance name
#instance: Alacritty
# General application class
#general: Alacritty
# Decorations theme variant (Linux/BSD only)
#
# Override the variant of the GTK theme/Wayland client side decorations.
# Commonly supported values are `dark` and `light`. Set this to `None` to use
# the default theme variant.
#decorations_theme_variant: None
scrolling:
# Maximum number of lines in the scrollback buffer.
# Specifying '0' will disable scrolling.
history: 100000
# Scrolling distance multiplier.
#multiplier: 3
# Font configuration
#font:
# Normal (roman) font face
#normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Regular
# Bold font face
#bold:
# Font family
#
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold
# Italic font face
#italic:
# Font family
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Italic
# Bold italic font face
#bold_italic:
# Font family
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold Italic
# Point size
#size: 11.0
# Offset is the extra space around each character. `offset.y` can be thought
# of as modifying the line spacing, and `offset.x` as modifying the letter
# spacing.
#offset:
# x: 0
# y: 0
# Glyph offset determines the locations of the glyphs within their cells with
# the default being at the bottom. Increasing `x` moves the glyph to the
# right, increasing `y` moves the glyph upward.
#glyph_offset:
# x: 0
# y: 0
# Use built-in font for box drawing characters.
#
# If `true`, Alacritty will use a custom built-in font for box drawing
# characters (Unicode points 2500 - 259f).
#
#builtin_box_drawing: true
# If `true`, bold text is drawn using the bright color variants.
#draw_bold_text_with_bright_colors: false
# Colors (Tomorrow Night)
#colors:
# Default colors
#primary:
# background: '#1d1f21'
# foreground: '#c5c8c6'
# Bright and dim foreground colors
#
# The dimmed foreground color is calculated automatically if it is not
# present. If the bright foreground color is not set, or
# `draw_bold_text_with_bright_colors` is `false`, the normal foreground
# color will be used.
#dim_foreground: '#828482'
#bright_foreground: '#eaeaea'
# Cursor colors
#
# Colors which should be used to draw the terminal cursor.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#cursor:
# text: CellBackground
# cursor: CellForeground
# Vi mode cursor colors
#
# Colors for the cursor when the vi mode is active.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#vi_mode_cursor:
# text: CellBackground
# cursor: CellForeground
# Search colors
#
# Colors used for the search bar and match highlighting.
#search:
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#matches:
# foreground: '#000000'
# background: '#ffffff'
#focused_match:
# foreground: '#ffffff'
# background: '#000000'
# Keyboard hints
#hints:
# First character in the hint label
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#start:
# foreground: '#1d1f21'
# background: '#e9ff5e'
# All characters after the first one in the hint label
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#end:
# foreground: '#e9ff5e'
# background: '#1d1f21'
# Line indicator
#
# Color used for the indicator displaying the position in history during
# search and vi mode.
#
# By default, these will use the opposing primary color.
#line_indicator:
# foreground: None
# background: None
# Footer bar
#
# Color used for the footer bar on the bottom, used by search regex input,
# hyperlink URI preview, etc.
#
#footer_bar:
# background: '#c5c8c6'
# foreground: '#1d1f21'
# Selection colors
#
# Colors which should be used to draw the selection area.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#selection:
# text: CellBackground
# background: CellForeground
# Normal colors
#normal:
# black: '#1d1f21'
# red: '#cc6666'
# green: '#b5bd68'
# yellow: '#f0c674'
# blue: '#81a2be'
# magenta: '#b294bb'
# cyan: '#8abeb7'
# white: '#c5c8c6'
# Bright colors
#bright:
# black: '#666666'
# red: '#d54e53'
# green: '#b9ca4a'
# yellow: '#e7c547'
# blue: '#7aa6da'
# magenta: '#c397d8'
# cyan: '#70c0b1'
# white: '#eaeaea'
# Dim colors
#
# If the dim colors are not set, they will be calculated automatically based
# on the `normal` colors.
#dim:
# black: '#131415'
# red: '#864343'
# green: '#777c44'
# yellow: '#9e824c'
# blue: '#556a7d'
# magenta: '#75617b'
# cyan: '#5b7d78'
# white: '#828482'
# Indexed Colors
#
# The indexed colors include all colors from 16 to 256.
# When these are not set, they're filled with sensible defaults.
#
# Example:
# `- { index: 16, color: '#ff00ff' }`
#
#indexed_colors: []
# Transparent cell backgrounds
#
# Whether or not `window.opacity` applies to all cell backgrounds or only to
# the default background. When set to `true` all cells will be transparent
# regardless of their background color.
#transparent_background_colors: false
# Bell
#
# The bell is rung every time the BEL control character is received.
#bell:
# Visual Bell Animation
#
# Animation effect for flashing the screen when the visual bell is rung.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#animation: EaseOutExpo
# Duration of the visual bell flash in milliseconds. A `duration` of `0` will
# disable the visual bell animation.
#duration: 0
# Visual bell animation color.
#color: '#ffffff'
# Bell Command
#
# This program is executed whenever the bell is rung.
#
# When set to `command: None`, no command will be executed.
#
# Example:
# command:
# program: notify-send
# args: ["Hello, World!"]
#
#command: None
#selection:
# This string contains all characters that are used as separators for
# "semantic words" in Alacritty.
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
#save_to_clipboard: false
#cursor:
# Cursor style
#style:
# Cursor shape
#
# Values for `shape`:
# - ▇ Block
# - _ Underline
# - | Beam
#shape: Block
# Cursor blinking state
#
# Values for `blinking`:
# - Never: Prevent the cursor from ever blinking
# - Off: Disable blinking by default
# - On: Enable blinking by default
# - Always: Force the cursor to always blink
#blinking: Off
# Vi mode cursor style
#
# If the vi mode cursor style is `None` or not specified, it will fall back to
# the style of the active value of the normal cursor.
#
# See `cursor.style` for available options.
#vi_mode_style: None
# Cursor blinking interval in milliseconds.
#blink_interval: 750
# Time after which cursor stops blinking, in seconds.
#
# Specifying '0' will disable timeout for blinking.
#blink_timeout: 5
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
#unfocused_hollow: true
# Thickness of the cursor relative to the cell width as floating point number
# from `0.0` to `1.0`.
#thickness: 0.15
# Live config reload (changes require restart)
#live_config_reload: true
# Shell
#
# You can set `shell.program` to the path of your favorite shell, e.g.
# `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the
# shell.
#
# Default:
# - (Linux/BSD/macOS) `$SHELL` or the user's login shell, if `$SHELL` is unset
# - (Windows) powershell
#shell:
# program: /bin/bash
# args:
# - --login
# Startup directory
#
# Directory the shell is started in. If this is unset, or `None`, the working
# directory of the parent process will be used.
#working_directory: None
# Send ESC (\x1b) before characters when alt is pressed.
#alt_send_esc: true
# Offer IPC using `alacritty msg` (unix only)
#ipc_socket: true
#mouse:
# Click settings
#
# The `double_click` and `triple_click` settings control the time
# alacritty should wait for accepting multiple clicks as one double
# or triple click.
#double_click: { threshold: 300 }
#triple_click: { threshold: 300 }
# If this is `true`, the cursor is temporarily hidden when typing.
#hide_when_typing: false
# Hints
#
# Terminal hints can be used to find text or hyperlink in the visible part of
# the terminal and pipe it to other applications.
#hints:
# Keys used for the hint labels.
#alphabet: "jfkdls;ahgurieowpq"
# List with all available hints
#
# Each hint must have any of `regex` or `hyperlinks` field and either an
# `action` or a `command` field. The fields `mouse`, `binding` and
# `post_processing` are optional.
#
# The `hyperlinks` option will cause OSC 8 escape sequence hyperlinks to be
# highlighted.
#
# The fields `command`, `binding.key`, `binding.mods`, `binding.mode` and
# `mouse.mods` accept the same values as they do in the `key_bindings` section.
#
# The `mouse.enabled` field controls if the hint should be underlined while
# the mouse with all `mouse.mods` keys held or the vi mode cursor is above it.
#
# If the `post_processing` field is set to `true`, heuristics will be used to
# shorten the match if there are characters likely not to be part of the hint
# (e.g. a trailing `.`). This is most useful for URIs and applies only to
# `regex` matches.
#
# Values for `action`:
# - Copy
# Copy the hint's text to the clipboard.
# - Paste
# Paste the hint's text to the terminal or search.
# - Select
# Select the hint's text.
# - MoveViModeCursor
# Move the vi mode cursor to the beginning of the hint.
#enabled:
# - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
# [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
# hyperlinks: true
# command: xdg-open
# post_processing: true
# mouse:
# enabled: true
# mods: None
# binding:
# key: U
# mods: Control|Shift
# Mouse bindings
#
# Mouse bindings are specified as a list of objects, much like the key
# bindings further below.
#
# To trigger mouse bindings when an application running within Alacritty
# captures the mouse, the `Shift` modifier is automatically added as a
# requirement.
#
# Each mouse binding will specify a:
#
# - `mouse`:
#
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# - `action` (see key bindings for actions not exclusive to mouse mode)
#
# - Mouse exclusive actions:
#
# - ExpandSelection
# Expand the selection to the current mouse cursor location.
#
# And optionally:
#
# - `mods` (see key bindings)
#mouse_bindings:
# - { mouse: Right, action: ExpandSelection }
# - { mouse: Right, mods: Control, action: ExpandSelection }
# - { mouse: Middle, mode: ~Vi, action: PasteSelection }
# Key bindings
#
# Key bindings are specified as a list of objects. For example, this is the
# default paste binding:
#
# `- { key: V, mods: Control|Shift, action: Paste }`
#
# Each key binding will specify a:
#
# - `key`: Identifier of the key pressed
#
# - A-Z
# - F1-F24
# - Key0-Key9
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number. This command will allow you to display the hex scancodes
# for certain keys:
#
# `showkey --scancodes`.
#
# Then exactly one of:
#
# - `chars`: Send a byte sequence to the running application
#
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences. To find escape codes for bindings
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
# of tmux. Note that applications use terminfo to map escape sequences back
# to keys. It is therefore required to update the terminfo when changing an
# escape sequence.
#
# - `action`: Execute a predefined action
#
# - ToggleViMode
# - SearchForward
# Start searching toward the right of the search origin.
# - SearchBackward
# Start searching toward the left of the search origin.
# - Copy
# - Paste
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollHalfPageUp
# - ScrollHalfPageDown
# - ScrollLineUp
# - ScrollLineDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# Remove the terminal's scrollback history.
# - Hide
# Hide the Alacritty window.
# - Minimize
# Minimize the Alacritty window.
# - Quit
# Quit Alacritty.
# - ToggleFullscreen
# - SpawnNewInstance
# Spawn a new instance of Alacritty.
# - CreateNewWindow
# Create a new Alacritty window from the current process.
# - ClearLogNotice
# Clear Alacritty's UI warning and error notice.
# - ClearSelection
# Remove the active selection.
# - ReceiveChar
# - None
#
# - Vi mode exclusive actions:
#
# - Open
# Perform the action of the first matching hint under the vi mode cursor
# with `mouse.enabled` set to `true`.
# - ToggleNormalSelection
# - ToggleLineSelection
# - ToggleBlockSelection
# - ToggleSemanticSelection
# Toggle semantic selection based on `selection.semantic_escape_chars`.
# - CenterAroundViCursor
# Center view around vi mode cursor
#
# - Vi mode exclusive cursor motion actions:
#
# - Up
# One line up.
# - Down
# One line down.
# - Left
# One character left.
# - Right
# One character right.
# - First
# First column, or beginning of the line when already at the first column.
# - Last
# Last column, or beginning of the line when already at the last column.
# - FirstOccupied
# First non-empty cell in this terminal row, or first non-empty cell of
# the line when already at the first cell of the row.
# - High
# Top of the screen.
# - Middle
# Center of the screen.
# - Low
# Bottom of the screen.
# - SemanticLeft
# Start of the previous semantically separated word.
# - SemanticRight
# Start of the next semantically separated word.
# - SemanticLeftEnd
# End of the previous semantically separated word.
# - SemanticRightEnd
# End of the next semantically separated word.
# - WordLeft
# Start of the previous whitespace separated word.
# - WordRight
# Start of the next whitespace separated word.
# - WordLeftEnd
# End of the previous whitespace separated word.
# - WordRightEnd
# End of the next whitespace separated word.
# - Bracket
# Character matching the bracket at the cursor's location.
# - SearchNext
# Beginning of the next match.
# - SearchPrevious
# Beginning of the previous match.
# - SearchStart
# Start of the match to the left of the vi mode cursor.
# - SearchEnd
# End of the match to the right of the vi mode cursor.
#
# - Search mode exclusive actions:
# - SearchFocusNext
# Move the focus to the next search match.
# - SearchFocusPrevious
# Move the focus to the previous search match.
# - SearchConfirm
# - SearchCancel
# - SearchClear
# Reset the search regex.
# - SearchDeleteWord
# Delete the last word in the search regex.
# - SearchHistoryPrevious
# Go to the previous regex in the search history.
# - SearchHistoryNext
# Go to the next regex in the search history.
#
# - macOS exclusive actions:
# - ToggleSimpleFullscreen
# Enter fullscreen without occupying another space.
#
# - Linux/BSD exclusive actions:
#
# - CopySelection
# Copy from the selection buffer.
# - PasteSelection
# Paste from the selection buffer.
#
# - `command`: Fork and execute a specified command plus arguments
#
# The `command` field must be a map containing a `program` string and an
# `args` array of command line parameter strings. For example:
# `{ program: "alacritty", args: ["-e", "vttest"] }`
#
# And optionally:
#
# - `mods`: Key modifiers to filter binding actions
#
# - Command
# - Control
# - Option
# - Super
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this:
# `mods: Control|Shift`.
# Whitespace and capitalization are relevant and must match the example.
#
# - `mode`: Indicate a binding for only specific terminal reported modes
#
# This is mainly used to send applications the correct escape sequences
# when in different modes.
#
# - AppCursor
# - AppKeypad
# - Search
# - Alt
# - Vi
#
# A `~` operator can be used before a mode to apply the binding whenever
# the mode is *not* active, e.g. `~Alt`.
#
# Bindings are always filled by default, but will be replaced when a new
# binding with the same triggers is defined. To unset a default binding, it can
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
# a no-op if you do not wish to receive input characters for that binding.
#
# If the same trigger is assigned to multiple actions, all of them are executed
# in the order they were defined in.
#key_bindings:
#- { key: Paste, action: Paste }
#- { key: Copy, action: Copy }
#- { key: L, mods: Control, action: ClearLogNotice }
#- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" }
#- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp }
#- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown }
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop }
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
# Vi Mode
#- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode }
#- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom }
#- { key: Escape, mode: Vi|~Search, action: ClearSelection }
#- { key: I, mode: Vi|~Search, action: ToggleViMode }
#- { key: I, mode: Vi|~Search, action: ScrollToBottom }
#- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode }
#- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp }
#- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown }
#- { key: G, mode: Vi|~Search, action: ScrollToTop }
#- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom }
#- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp }
#- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown }
#- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp }
#- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown }
#- { key: Y, mode: Vi|~Search, action: Copy }
#- { key: Y, mode: Vi|~Search, action: ClearSelection }
#- { key: Copy, mode: Vi|~Search, action: ClearSelection }
#- { key: V, mode: Vi|~Search, action: ToggleNormalSelection }
#- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection }
#- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection }
#- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection }
#- { key: Return, mode: Vi|~Search, action: Open }
#- { key: Z, mode: Vi|~Search, action: CenterAroundViCursor }
#- { key: K, mode: Vi|~Search, action: Up }
#- { key: J, mode: Vi|~Search, action: Down }
#- { key: H, mode: Vi|~Search, action: Left }
#- { key: L, mode: Vi|~Search, action: Right }
#- { key: Up, mode: Vi|~Search, action: Up }
#- { key: Down, mode: Vi|~Search, action: Down }
#- { key: Left, mode: Vi|~Search, action: Left }
#- { key: Right, mode: Vi|~Search, action: Right }
#- { key: Key0, mode: Vi|~Search, action: First }
#- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last }
#- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied }
#- { key: H, mods: Shift, mode: Vi|~Search, action: High }
#- { key: M, mods: Shift, mode: Vi|~Search, action: Middle }
#- { key: L, mods: Shift, mode: Vi|~Search, action: Low }
#- { key: B, mode: Vi|~Search, action: SemanticLeft }
#- { key: W, mode: Vi|~Search, action: SemanticRight }
#- { key: E, mode: Vi|~Search, action: SemanticRightEnd }
#- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft }
#- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight }
#- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd }
#- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket }
#- { key: Slash, mode: Vi|~Search, action: SearchForward }
#- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward }
#- { key: N, mode: Vi|~Search, action: SearchNext }
#- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious }
# Search Mode
#- { key: Return, mode: Search|Vi, action: SearchConfirm }
#- { key: Escape, mode: Search, action: SearchCancel }
#- { key: C, mods: Control, mode: Search, action: SearchCancel }
#- { key: U, mods: Control, mode: Search, action: SearchClear }
#- { key: W, mods: Control, mode: Search, action: SearchDeleteWord }
#- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious }
#- { key: N, mods: Control, mode: Search, action: SearchHistoryNext }
#- { key: Up, mode: Search, action: SearchHistoryPrevious }
#- { key: Down, mode: Search, action: SearchHistoryNext }
#- { key: Return, mode: Search|~Vi, action: SearchFocusNext }
#- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious }
# (Windows, Linux, and BSD only)
#- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste }
#- { key: C, mods: Control|Shift, action: Copy }
#- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward }
#- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward }
#- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection }
#- { key: Insert, mods: Shift, action: PasteSelection }
#- { key: Key0, mods: Control, action: ResetFontSize }
#- { key: Equals, mods: Control, action: IncreaseFontSize }
#- { key: Plus, mods: Control, action: IncreaseFontSize }
#- { key: NumpadAdd, mods: Control, action: IncreaseFontSize }
#- { key: Minus, mods: Control, action: DecreaseFontSize }
#- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize }
# (Windows only)
#- { key: Return, mods: Alt, action: ToggleFullscreen }
# (macOS only)
#- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
#- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }
#- { key: Key0, mods: Command, action: ResetFontSize }
#- { key: Equals, mods: Command, action: IncreaseFontSize }
#- { key: Plus, mods: Command, action: IncreaseFontSize }
#- { key: NumpadAdd, mods: Command, action: IncreaseFontSize }
#- { key: Minus, mods: Command, action: DecreaseFontSize }
#- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize }
#- { key: V, mods: Command, action: Paste }
#- { key: C, mods: Command, action: Copy }
#- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection }
#- { key: H, mods: Command, action: Hide }
#- { key: H, mods: Command|Alt, action: HideOtherApplications }
#- { key: M, mods: Command, action: Minimize }
#- { key: Q, mods: Command, action: Quit }
#- { key: W, mods: Command, action: Quit }
#- { key: N, mods: Command, action: SpawnNewInstance }
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
#- { key: F, mods: Command, mode: ~Search, action: SearchForward }
#- { key: B, mods: Command, mode: ~Search, action: SearchBackward }
#debug:
# Display the time it takes to redraw each frame.
#render_timer: false
# Keep the log file after quitting Alacritty.
#persistent_logging: false
# Log level
#
# Values for `log_level`:
# - Off
# - Error
# - Warn
# - Info
# - Debug
# - Trace
#log_level: Warn
# Print all received window events.
#print_events: false
# Highlight window damage information.
#highlight_damage: false

View file

@ -0,0 +1,78 @@
[colors.bright]
black = "#6272a4"
blue = "#d6acff"
cyan = "#a4ffff"
green = "#69ff94"
magenta = "#ff92df"
red = "#ff6e6e"
white = "#ffffff"
yellow = "#ffffa5"
[colors.cursor]
cursor = "CellForeground"
text = "CellBackground"
[colors.footer_bar]
background = "#282a36"
foreground = "#f8f8f2"
[colors.hints.end]
background = "#282a36"
foreground = "#f1fa8c"
[colors.hints.start]
background = "#f1fa8c"
foreground = "#282a36"
[colors.line_indicator]
background = "None"
foreground = "None"
[colors.normal]
black = "#21222c"
blue = "#bd93f9"
cyan = "#8be9fd"
green = "#50fa7b"
magenta = "#ff79c6"
red = "#ff5555"
white = "#f8f8f2"
yellow = "#f1fa8c"
[colors.primary]
background = "0x0e1419"
bright_foreground = "#ffffff"
foreground = "0xf8f8f2"
[colors.search.focused_match]
background = "#ffb86c"
foreground = "#44475a"
[colors.search.matches]
background = "#50fa7b"
foreground = "#44475a"
[colors.selection]
background = "#44475a"
text = "CellForeground"
[colors.vi_mode_cursor]
cursor = "CellForeground"
text = "CellBackground"
[bell]
color = "0xf8f8f2"
[font]
size = 8.0
[font.bold]
family = "Hack Nerd Font Mono"
style = "Bold"
[font.normal]
family = "Hack Nerd Font Mono"
style = "Regular"
[font.offset]
x = 1
y = 1

View file

@ -1,145 +0,0 @@
abspaces: 4
font:
# Normal (roman) font face
normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
family: monospace
# The `style` can be specified to pick a specific face.
style: Regular
# Bold font face
bold:
# Font family
#
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
family: monospace
# The `style` can be specified to pick a specific face.
style: Bold
# Italic font face
#italic:
# Font family
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Italic
# Bold italic font face
#bold_italic:
# Font family
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold Italic
# Point size
# size: 8.0
# Offset is the extra space around each character. `offset.y` can be thought of
# as modifying the line spacing, and `offset.x` as modifying the letter spacing.
offset:
x: 1
y: 1
# Glyph offset determines the locations of the glyphs within their cells with
# the default being at the bottom. Increasing `x` moves the glyph to the right,
# increasing `y` moves the glyph upwards.
#glyph_offset:
# x: 0
# y: 0
# Thin stroke font rendering (macOS only)
#
# Thin strokes are suitable for retina displays, but for non-retina screens
# it is recommended to set `use_thin_strokes` to `false`
#
# macOS >= 10.14.x:
#
# If the font quality on non-retina display looks bad then set
# `use_thin_strokes` to `true` and enable font smoothing by running the
# following command:
# `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
#
# This is a global setting and will require a log out or restart to take
# effect.
#use_thin_strokes: true
# If `true`, bold text is drawn using the bright color variants.
#draw_bold_text_with_bright_colors: true
# Dracula theme for Alacritty
# https://draculatheme.com/alacritty
#
# Color palette
# https://spec.draculatheme.com
#
# Template
# https://github.com/alacritty/alacritty/blob/master/alacritty.yml
colors:
primary:
background: "0x0e1419"
bright_foreground: '#ffffff'
foreground: "0xf8f8f2"
normal:
black: '#21222c'
red: '#ff5555'
green: '#50fa7b'
yellow: '#f1fa8c'
blue: '#bd93f9'
magenta: '#ff79c6'
cyan: '#8be9fd'
white: '#f8f8f2'
bright:
black: '#6272a4'
red: '#ff6e6e'
green: '#69ff94'
yellow: '#ffffa5'
blue: '#d6acff'
magenta: '#ff92df'
cyan: '#a4ffff'
white: '#ffffff'
cursor:
text: CellBackground
cursor: CellForeground
vi_mode_cursor:
text: CellBackground
cursor: CellForeground
search:
matches:
foreground: '#44475a'
background: '#50fa7b'
focused_match:
foreground: '#44475a'
background: '#ffb86c'
footer_bar:
background: '#282a36'
foreground: '#f8f8f2'
hints:
start:
foreground: '#282a36'
background: '#f1fa8c'
end:
foreground: '#f1fa8c'
background: '#282a36'
line_indicator:
foreground: None
background: None
selection:
text: CellForeground
background: '#44475a'

View file

@ -0,0 +1,34 @@
live_config_reload = true
[window]
dynamic_padding = true
decorations = 'None'
opacity = 0.8
dynamic_title = true
[bell]
animation = "EaseOutQuad"
duration = 150
[colors]
draw_bold_text_with_bright_colors = true
[scrolling]
history = 100000
multiplier = 3
[selection]
save_to_clipboard = true
semantic_escape_chars = ",│`|:\"' ()[]{}<>\t"
#[windows]
#decorations = "none"
#dynamic_title = true
#opacity = 0.8
#[windows.class]
#general = "alacritty"
#[windows.dimensions]
#columns = 0
#lines = 0

View file

@ -1,26 +0,0 @@
windows:
decorations: none
opacity: 0.8
dynamic_title: true
dimensions:
columns: 0
lines: 0
class:
general: alacritty
scrolling:
history: 10000
multiplier: 1
draw_bold_text_with_bright_colors: true
bell:
animation: EaseOutExpo
duration: 2
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
save_to_clipboard: true
live_config_reload: true

View file

@ -11,7 +11,7 @@ local naughty = require("naughty")
local menubar = require("menubar") local menubar = require("menubar")
local hotkeys_popup = require("awful.hotkeys_popup").widget local hotkeys_popup = require("awful.hotkeys_popup").widget
local battery_widget = require("awesome.battery-widget/battery-widget") -- local battery_widget = require("awesome.battery-widget/battery-widget")
-- Enable hotkeys help widget for VIM and other apps -- Enable hotkeys help widget for VIM and other apps
-- when client with a matching name is opened: -- when client with a matching name is opened:
require("awful.hotkeys_popup.keys") require("awful.hotkeys_popup.keys")
@ -19,7 +19,8 @@ require("awful.hotkeys_popup.keys")
-- Load Debian menu entries -- Load Debian menu entries
local debian = require("debian.menu") local debian = require("debian.menu")
local has_fdo, freedesktop = pcall(require, "freedesktop") local has_fdo, freedesktop = pcall(require, "freedesktop")
local battery_widget = require("battery-widget") -- local battery_widget = require("battery-widget")
-- {{{ Error handling -- {{{ Error handling
-- Check if awesome encountered an error during startup and fell back to -- Check if awesome encountered an error during startup and fell back to
-- another config (This code will only ever execute for the fallback config) -- another config (This code will only ever execute for the fallback config)
@ -51,7 +52,7 @@ beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua")
-- This is used later as the default terminal and editor to run. -- This is used later as the default terminal and editor to run.
-- terminal = "x-terminal-emulator" -- terminal = "x-terminal-emulator"
terminal = "~/bins/alacritty/usr/bin/alacritty" terminal = "/home/qgodefro/.cargo/bin/alacritty"
editor = os.getenv("EDITOR") or "editor" editor = os.getenv("EDITOR") or "editor"
editor_cmd = terminal .. " -e " .. editor editor_cmd = terminal .. " -e " .. editor
@ -62,11 +63,11 @@ editor_cmd = terminal .. " -e " .. editor
-- However, you can use another modifier like Mod1, but it may interact with others. -- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4" modkey = "Mod4"
lain.layout.termfair.center.nmaster = 4 -- lain.layout.termfair.center.nmaster = 4
lain.layout.termfair.center.ncol = 2 -- lain.layout.termfair.center.ncol = 2
-- Table of layouts to cover with awful.layout.inc, order matters. -- Table of layouts to cover with awful.layout.inc, order matters.
awful.layout.set(lain.layout.termfair, tag) -- awful.layout.set(lain.layout.termfair, tag)
awful.layout.layouts = { awful.layout.layouts = {
awful.layout.suit.floating, awful.layout.suit.floating,
awful.layout.suit.tile, awful.layout.suit.tile,
@ -81,7 +82,7 @@ awful.layout.layouts = {
awful.layout.suit.max.fullscreen, awful.layout.suit.max.fullscreen,
awful.layout.suit.magnifier, awful.layout.suit.magnifier,
awful.layout.suit.corner.nw, awful.layout.suit.corner.nw,
lain.layout.termfair, -- lain.layout.termfair,
-- awful.layout.suit.corner.ne, -- awful.layout.suit.corner.ne,
-- awful.layout.suit.corner.sw, -- awful.layout.suit.corner.sw,
-- awful.layout.suit.corner.se, -- awful.layout.suit.corner.se,
@ -144,8 +145,6 @@ mykeyboardlayout = awful.widget.keyboardlayout()
-- {{{ Wibar -- {{{ Wibar
-- Create a textclock widget -- Create a textclock widget
mytextclock = wibox.widget.textclock()
-- Create a wibox for each screen and add it -- Create a wibox for each screen and add it
local taglist_buttons = gears.table.join( local taglist_buttons = gears.table.join(
awful.button({ }, 1, function(t) t:view_only() end), awful.button({ }, 1, function(t) t:view_only() end),
@ -204,6 +203,10 @@ end
-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) -- Re-set wallpaper when a screen's geometry changes (e.g. different resolution)
screen.connect_signal("property::geometry", set_wallpaper) screen.connect_signal("property::geometry", set_wallpaper)
mytextclock = wibox.widget.textclock()
myutcclock = wibox.widget.textclock({format="%H:%m", timezone="UTC"})
mymtlclock = wibox.widget.textclock({format="%H:%M", timezone="Canada/Montreal"})
awful.screen.connect_for_each_screen(function(s) awful.screen.connect_for_each_screen(function(s)
-- Wallpaper -- Wallpaper
set_wallpaper(s) set_wallpaper(s)
@ -244,6 +247,8 @@ awful.screen.connect_for_each_screen(function(s)
layout = wibox.layout.fixed.horizontal, layout = wibox.layout.fixed.horizontal,
mykeyboardlayout, mykeyboardlayout,
wibox.widget.systray(), wibox.widget.systray(),
mymtlclock,
myutcclock,
mytextclock, mytextclock,
s.mylayoutbox, s.mylayoutbox,
}, },
@ -360,12 +365,13 @@ globalkeys = gears.table.join(
{description = "show the menubar", group = "launcher"}) {description = "show the menubar", group = "launcher"})
) )
clientkeys = gears.table.join( clientkeys = gears.table.join(
awful.key({ modkey, }, "f", awful.key({ modkey, }, "f",
function (c) function (c)
c.fullscreen = not c.fullscreen c.fullscreen = not c.fullscreen
c:raise() c:raise()
end, end ,
{description = "toggle fullscreen", group = "client"}), {description = "toggle fullscreen", group = "client"}),
awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end, awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end,
{description = "close", group = "client"}), {description = "close", group = "client"}),
@ -401,9 +407,10 @@ clientkeys = gears.table.join(
c.maximized_horizontal = not c.maximized_horizontal c.maximized_horizontal = not c.maximized_horizontal
c:raise() c:raise()
end , end ,
{description = "(un)maximize horizontally", group = "client"}) {description = "(un)maximize horizontally", group = "client"}),
awful.key({ modkey, "Control" }, "l", function (c)
awful.key({ modkey, "Control" }, "l", function () awful.util.spawn("/home/qgodefro/.local/bin/lock", false) end) c.util.spawn{"/home/qgodefro/.local/bin/lock", false}
end)
) )
-- Bind all key numbers to tags. -- Bind all key numbers to tags.

326
dunst/.config/dunst/dunstrc Normal file
View file

@ -0,0 +1,326 @@
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 2
# 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
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "300x5-30+20"
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = no
# 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.).
transparency = 20
# The height of the entire notification. If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 6
# Padding between text and separator.
padding = 6
# Horizontal padding.
horizontal_padding = 8
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 2
# Defines color of the frame around the notification window.
frame_color = "#6272A4"
# 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 = auto
# Sort messages by urgency.
sort = yes
# 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.
# Transient notifications ignore this setting.
idle_threshold = 120
### Text ###
font = Hack 10
# 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
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.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
format = "<big>%s</big> <i>%a</i>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Split notifications into multiple lines if they don't fit into
# geometry.
word_wrap = yes
# When word_wrap is set to no, specify where to ellipsize long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Merge multiple notifications with the same content
stack_duplicates = true
# Hide the count of merged notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Align icons left/right/off
icon_position = left
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128
# Paths to default icons.
icon_path = /run/current-system/sw/share/icons/hicolor/128x128/status:/run/current-system/sw/share/icons/hicolor/128x128/devices:/run/current-system/sw/share/icons/hicolor/128x128/actions:/usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### 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 = /run/current-system/sw/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /etc/profiles/per-user/hactario/bin/firefox -new-tab
# 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
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = true
### 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
# 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
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = ctrl+mod1+space
# Close all notifications.
close_all = ctrl+shift+space
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
history = ctrl+dead_acute
# Context menu.
context = ctrl+shift+period
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#282A36"
foreground = "#F8F8F2"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#icon = /path/to/icon
[urgency_normal]
background = "#44475A"
foreground = "#F8F8F2"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#icon = /path/to/icon
[urgency_critical]
background = "#6272A4"
foreground = "#FF5555"
frame_color = "#FF5555"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#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", "summary", "body", "icon", "category",
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
# "background", "new_icon" and "format".
# Shell-like globbing will get expanded.
#
# 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: if you don't want a notification to be displayed, set the format
# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# format = ""
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = 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
#
# vim: ft=cfg

2
dunst/.config/dunst/spotify.sh Executable file
View file

@ -0,0 +1,2 @@
#!/usr/bin/env bash
/usr/bin/spotifycli --statusshort > ~/.config/i3status/spotify.log

View file

@ -12,7 +12,7 @@
}; };
dotfiles = { dotfiles = {
url = "git.ood.ovh:hactarus/dotfiles"; url = "git.ood.ovh:hactarus/dotfiles";
flake = false; flake = true;
}; };
outputs = { self, nixpkgs, home-manager, ... } @inputs: { outputs = { self, nixpkgs, home-manager, ... } @inputs: {
homeConfigurations.foodogsquared = home-manager.lib.homeManagerConfiguration { homeConfigurations.foodogsquared = home-manager.lib.homeManagerConfiguration {

View file

@ -1,8 +1,8 @@
[user] [user]
name = "Hactarus" name = "Hactarus"
email = "859868+Hactarus@users.noreply.github.com" email = Hactarus@users.noreply.github.com
signingkey = E78C926AFF8835F1D31D63E0004635081CCE8F11 signingkey = 53A726B989BDD7DA617933C0D03D25D1292719AC
[alias] [alias]
pushdev = !git push --set-upstream origin "`git branch --no-color 2>/dev/null | grep '*' | sed -e 's/\\* //'`:dev/hactarus/`git branch --no-color 2>/dev/null | grep '*' | sed -e 's/\\* //'`" pushdev = !git push --set-upstream origin "`git branch --no-color 2>/dev/null | grep '*' | sed -e 's/\\* //'`:dev/hactarus/`git branch --no-color 2>/dev/null | grep '*' | sed -e 's/\\* //'`"

6
git/.gitconfig-github Normal file
View file

@ -0,0 +1,6 @@
[user]
name = "Hactarus"
email = "859868+Hactarus@users.noreply.github.com"
signingkey = E78C926AFF8835F1D31D63E0004635081CCE8F11
[commit]
gpgsign = true

View file

@ -1 +1 @@
/home/qgodefro/projects/helix/runtime/ /etc/profiles/per-user/hactario/lib/runtime

39
htop/.config/htop/htoprc Normal file
View file

@ -0,0 +1,39 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=46
sort_direction=-1
tree_sort_key=0
tree_sort_direction=1
hide_kernel_threads=0
hide_userland_threads=0
shadow_other_users=0
show_thread_names=0
show_program_path=1
highlight_base_name=1
highlight_megabytes=1
highlight_threads=1
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
tree_view=0
tree_view_always_by_pid=1
header_margin=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
left_meters=AllCPUs Memory Swap
left_meter_modes=1 1 1
right_meters=Tasks LoadAverage Uptime DiskIO NetworkIO Battery
right_meter_modes=2 2 2 2 2 2
hide_function_bar=0

View file

@ -1,25 +0,0 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=46
sort_direction=1
hide_threads=0
hide_kernel_threads=1
hide_userland_threads=0
shadow_other_users=0
show_thread_names=0
highlight_base_name=0
highlight_megabytes=1
highlight_threads=0
tree_view=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_zero=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
delay=15
left_meters=LeftCPUs Memory Swap
left_meter_modes=1 1 1
right_meters=RightCPUs Tasks LoadAverage Uptime
right_meter_modes=1 2 2 2

246
i3/.config/config Normal file
View file

@ -0,0 +1,246 @@
#!#sh-like
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
#
# This config file uses keycodes (bindsym) and was written for the QWERTY
# layout.
#
# To get a config file with the same key positions, but for your current
# layout, use the i3-config-wizard
#
set $mod Mod4
set $term wezterm
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
#font pango:monospace 8
font pango:Noto Sans 10
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# https://wiki.archlinux.org/title/Picom
# https://github.com/chjj/compton/issues/402
# Inspect windows with: `xwininfo -tree -root`
exec --no-startup-id picom --backend=egl \
--blur-method=dual_kawase --blur-strength=12 \
--corner-radius=24 --rounded-corners-exclude='class_g = "Polybar" || class_g = "dmenu"' \
--unredir-if-possible-delay=1000 \
--shadow --shadow-exclude='class_g = "dmenu"'
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
exec --no-startup-id dex --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
exec --no-startup-id feh --bg-fill /home/nehu/Pictures/matcha-set.jpg
exec --no-startup-id pipewire
exec --no-startup-id pipewire-pulse
exec --no-startup-id wireplumber
# Focus with keyboard or by clicking only
focus_follows_mouse no
default_border none
gaps inner 8
gaps outer 0
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
#bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
#bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
#bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
#bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
bindsym XF86KbdBrightnessUp exec sudo keyboard-backlight up
bindsym XF86KbdBrightnessDown exec sudo keyboard-backlight down
bindsym XF86AudioRaiseVolume exec pamixer -i 5
bindsym XF86AudioLowerVolume exec pamixer -d 5
bindsym XF86AudioMute exec pamixer --toggle-mute
bindsym XF86MonBrightnessDown exec sudo brightnessctl set 10%-
bindsym XF86MonBrightnessUp exec sudo brightnessctl set 10%+
# Switch between light/dark mode
# `darkman` doesn't seem to change the color-scheme value on sway, but `gettings` does...
bindsym $mod+XF86MonBrightnessDown exec gsettings set org.gnome.desktop.interface color-scheme prefer-dark
bindsym $mod+XF86MonBrightnessUp exec gsettings set org.gnome.desktop.interface color-scheme prefer-light
bindsym $mod+Shift+s exec spectacle -f
#bindsym $mod+Shift+s exec flameshot full
# use these keys for focus, movement, and resize directions when reaching for
# the arrows is not convenient
set $up l
set $down k
set $left j
set $right semicolon
# use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# move tiling windows via drag & drop by left-clicking into the title bar,
# or left-clicking anywhere into the window while holding the floating modifier.
tiling_drag modifier titlebar
# start a terminal
bindsym $mod+Return exec $term
#bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+q kill
bindsym $mod+q kill
# `i3-dmenu-desktop` is a wrapper around `dmenu` which only displays ".desktop" apps;
# override the `dmenu` command to match the polybar style
bindsym $mod+d exec --no-startup-id i3-dmenu-desktop \
--dmenu="dmenu -i -nb #282A2E -sb #373B41 -sf #F0C674"
# change focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+h split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
bindsym $mod+minus scratchpad show
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym $left resize shrink width 10 px or 10 ppt
bindsym $down resize grow height 10 px or 10 ppt
bindsym $up resize shrink height 10 px or 10 ppt
bindsym $right resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
#bar {
# i3bar_command polybar
# #status_command i3status
#}
exec_always --no-startup-id start-polybar

189
i3/.config/config.keycodes Normal file
View file

@ -0,0 +1,189 @@
# WARNING
# WARNING: This configuration file is a template for the i3-config-wizard to
# WARNING: generate a config which uses keysyms in your current layout. It does
# WARNING: not get loaded by i3. Please do not change it.
# WARNING
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod1
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:monospace 8
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
exec --no-startup-id dex --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# move tiling windows via drag & drop by left-clicking into the title bar,
# or left-clicking anywhere into the window while holding the floating modifier.
tiling_drag modifier titlebar
# start a terminal
bindcode $mod+36 exec i3-sensible-terminal
# kill focused window
bindcode $mod+Shift+24 kill
# start dmenu (a program launcher)
bindcode $mod+40 exec --no-startup-id dmenu_run
# A more modern dmenu replacement is rofi:
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
# change focus
bindcode $mod+44 focus left
bindcode $mod+45 focus down
bindcode $mod+46 focus up
bindcode $mod+47 focus right
# alternatively, you can use the cursor keys:
bindcode $mod+113 focus left
bindcode $mod+116 focus down
bindcode $mod+111 focus up
bindcode $mod+114 focus right
# move focused window
bindcode $mod+Shift+44 move left
bindcode $mod+Shift+45 move down
bindcode $mod+Shift+46 move up
bindcode $mod+Shift+47 move right
# alternatively, you can use the cursor keys:
bindcode $mod+Shift+113 move left
bindcode $mod+Shift+116 move down
bindcode $mod+Shift+111 move up
bindcode $mod+Shift+114 move right
# split in horizontal orientation
bindcode $mod+43 split h
# split in vertical orientation
bindcode $mod+55 split v
# enter fullscreen mode for the focused container
bindcode $mod+41 fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindcode $mod+39 layout stacking
bindcode $mod+25 layout tabbed
bindcode $mod+26 layout toggle split
# toggle tiling / floating
bindcode $mod+Shift+65 floating toggle
# change focus between tiling / floating windows
bindcode $mod+65 focus mode_toggle
# focus the parent container
bindcode $mod+38 focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindcode $mod+10 workspace number $ws1
bindcode $mod+11 workspace number $ws2
bindcode $mod+12 workspace number $ws3
bindcode $mod+13 workspace number $ws4
bindcode $mod+14 workspace number $ws5
bindcode $mod+15 workspace number $ws6
bindcode $mod+16 workspace number $ws7
bindcode $mod+17 workspace number $ws8
bindcode $mod+18 workspace number $ws9
bindcode $mod+19 workspace number $ws10
# move focused container to workspace
bindcode $mod+Shift+10 move container to workspace number $ws1
bindcode $mod+Shift+11 move container to workspace number $ws2
bindcode $mod+Shift+12 move container to workspace number $ws3
bindcode $mod+Shift+13 move container to workspace number $ws4
bindcode $mod+Shift+14 move container to workspace number $ws5
bindcode $mod+Shift+15 move container to workspace number $ws6
bindcode $mod+Shift+16 move container to workspace number $ws7
bindcode $mod+Shift+17 move container to workspace number $ws8
bindcode $mod+Shift+18 move container to workspace number $ws9
bindcode $mod+Shift+19 move container to workspace number $ws10
# reload the configuration file
bindcode $mod+Shift+54 reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindcode $mod+Shift+27 restart
# exit i3 (logs you out of your X session)
bindcode $mod+Shift+26 exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindcode 44 resize shrink width 10 px or 10 ppt
bindcode 45 resize grow height 10 px or 10 ppt
bindcode 46 resize shrink height 10 px or 10 ppt
bindcode 47 resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindcode 113 resize shrink width 10 px or 10 ppt
bindcode 116 resize grow height 10 px or 10 ppt
bindcode 111 resize shrink height 10 px or 10 ppt
bindcode 114 resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindcode 36 mode "default"
bindcode 9 mode "default"
bindcode $mod+27 mode "default"
}
bindcode $mod+27 mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
}

View file

@ -14,7 +14,7 @@ set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font # Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below. # is used in the bar {} block below.
#font pango:monospace 8 #font pango:monospace 8
font 'FiraCode Nerd Font Mono' 8 font pango:Hack Nerd Font Regular 12
# This font is widely installed, provides lots of unicode glyphs, right-to-left # This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango). # text rendering and scalability on retina/hidpi displays (thanks to pango).
@ -29,7 +29,7 @@ exec --no-startup-id dex --autostart --environment i3
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen. # screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork exec --no-startup-id xss-lock --transfer-sleep-lock -- ~/.config/i3/lock.sh --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux, # NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it. # and nm-applet is a desktop environment-independent system tray GUI for it.
@ -41,28 +41,20 @@ bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
bindsym XF86AudioPlay exec "spotifycli --playpause && spotifycli --statusshort > /var/log/scripts/spotify.log"
bindsym XF86AudioNext exec "spotifycli --next && spotifycli --statusshort > /var/log/scripts/spotify.log"
bindsym XF86AudioPrev exec "spotifycli --prev && spotifycli --statusshort > /var/log/scripts/spotify.log"
# Use Mouse+$mod to drag floating windows to their wanted position # Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod floating_modifier $mod
tiling_drag modifier titlebar
bindsym $mod+Return exec alacritty
bindsym $mod+d exec "dmenu_run -nf '#F8F8F2' -nb '#282A36' -sb '#6272A4' -sf '#F8F8F2' -fn 'Hack-10.5' -l 5 -p '  '"
# move tiling windows via drag & drop by left-clicking into the title bar, # move tiling windows via drag & drop by left-clicking into the title bar,
# or left-clicking anywhere into the window while holding the floating modifier. # or left-clicking anywhere into the window while holding the floating modifier.
tiling_drag modifier titlebar # tiling_drag modifier titlebar
# start a terminal
bindsym $mod+Return exec /etc/profiles/per-user/hactario/bin/alacritty
# kill focused window
bindsym $mod+Shift+a kill
# start dmenu (a program launcher)
# bindsym $mod+d exec --no-startup-id dmenu_run
# A more modern dmenu replacement is rofi:
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
bindsym $mod+d exec "dmenu_run -nf '#F8F8F2' -nb '#282A36' -sb '#6272A4' -sf '#F8F8F2' -fn 'Hack-10.5' -p 'launch% '"
# change focus # change focus
bindsym $mod+j focus left bindsym $mod+j focus left
@ -116,16 +108,16 @@ bindsym $mod+q focus parent
# Define names for default workspaces for which we configure key bindings later on. # Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places. # We use variables to avoid repeating the names in multiple places.
set $ws1 "1" set $ws1 "1:󰖟 "
set $ws2 "2" set $ws2 "2: "
set $ws3 "3" set $ws3 "3:󰈮 "
set $ws4 "4" set $ws4 "4: "
set $ws5 "5" set $ws5 "5:󰕧 "
set $ws6 "6" set $ws6 "6:󰺵 "
set $ws7 "7" set $ws7 "7:󰭹 "
set $ws8 "8" set $ws8 "8:󰙯 "
set $ws9 "9" set $ws9 "9: "
set $ws10 "10" set $ws10 "10:󰕧 "
# switch to workspace # switch to workspace
bindsym $mod+ampersand workspace number $ws1 bindsym $mod+ampersand workspace number $ws1
@ -151,12 +143,29 @@ bindsym $mod+Shift+exclam move container to workspace number $ws8
bindsym $mod+Shift+ccedilla move container to workspace number $ws9 bindsym $mod+Shift+ccedilla move container to workspace number $ws9
bindsym $mod+Shift+agrave move container to workspace number $ws10 bindsym $mod+Shift+agrave move container to workspace number $ws10
set $monitor_main "DP-1-1"
set $monitor_vertical "DP-2"
set $monitor_integrated "eDP-1"
workspace $ws1 output $monitor_main
workspace $ws2 output $monitor_main
workspace $ws3 output $monitor_main
workspace $ws4 output $monitor_main
workspace $ws5 output $monitor_main
workspace $ws6 output $monitor_main
workspace $ws7 output $monitor_vertical
workspace $ws8 output $monitor_vertical
workspace $ws9 output $monitor_integrated
workspace $ws10 output $monitor_integrated
bindsym $mod+x [urgent=latest] focus
# reload the configuration file # reload the configuration file
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session) # exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that) # resize window (you can also use the mouse for that)
mode "resize" { mode "resize" {
@ -185,6 +194,29 @@ mode "resize" {
bindsym $mod+r mode "resize" bindsym $mod+r mode "resize"
include ~/.config/i3/config.d/*.conf
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
font pango:Hack Nerd Font Mono, FontAwesome 10
status_command i3status -c ~/.config/i3status/config
position bottom
workspace_buttons yes
# tray_output none
colors {
background #282A36
statusline #F8F8F2
separator #44475A
focused_workspace #44475A #44475A #F8F8F2
active_workspace #282A36 #44475A #F8F8F2
inactive_workspace #282A36 #282A36 #BFBFBF
urgent_workspace #FF5555 #FF5555 #F8F8F2
binding_mode #FF5555 #FF5555 #F8F8F2
}
bindsym --release button3 exec --no-startup-id import ~/screenshot-$(date +%F-%T).png
}
client.focused #6272A4 #6272A4 #F8F8F2 #6272A4 #6272A4 client.focused #6272A4 #6272A4 #F8F8F2 #6272A4 #6272A4
client.focused_inactive #44475A #44475A #F8F8F2 #44475A #44475A client.focused_inactive #44475A #44475A #F8F8F2 #44475A #44475A
client.unfocused #282A36 #282A36 #BFBFBF #282A36 #282A36 client.unfocused #282A36 #282A36 #BFBFBF #282A36 #282A36
@ -192,18 +224,6 @@ client.urgent #44475A #FF5555 #F8F8F2 #FF5555 #FF5555
client.placeholder #282A36 #282A36 #F8F8F2 #282A36 #282A36 client.placeholder #282A36 #282A36 #F8F8F2 #282A36 #282A36
client.background #F8F8F2 client.background #F8F8F2
bar {
font 'FiraCode Nerd Font Mono',FontAwesome 12
position bottom exec --no-startup-id feh --bg-fill ~/.dotfiles/i3/.wallpapers/mr-robot-hacker-10000x5625-15768.png
status_command i3status ~/.config/i3status-rust/config.toml
colors {
background #282A36
statusline #F8F8F2
separator #44475A
focused_workspace #44475A #44475A #F8F8F2
active_workspace #282A36 #44475A #F8F8F2
inactive_workspace #282A36 #282A36 #BFBFBF
urgent_workspace #FF5555 #FF5555 #F8F8F2
binding_mode #FF5555 #FF5555 #F8F8F2
}
}

View file

@ -0,0 +1,24 @@
# set $ws1 "1:󰖟 "
# set $ws2 "2: "
# set $ws3 "3:󰈮 "
# set $ws4 "4: "
# set $ws5 "5:󰕧 "
# set $ws6 "6:󰺵 "
# set $ws7 "7:󰭹 "
# set $ws8 "8:󰙯 "
# set $ws9 "9: "
# set $ws10 "10:󰕧 "
assign [class="firefox"] $ws1
assign [class="chromium-browser"] $ws8
assign [class="chromium"] $ws8
assign [class="Thunderbird"] $ws7
assign [class="vscodium"] $ws3
assign [class="Alacritty"] $ws2
assign [class="Moonlight"] $ws6
assign [class="plex-bin"] $ws5
assign [class="vlc"] $ws5
assign [class="Spotify"] $ws9
for_window [class="Alert"] floating enable
for_window [class="dunst"] floating enable

View file

@ -2,6 +2,4 @@
label=⚡ label=⚡
command=/run/current-system/sw/libexec/i3blocks/battery command=/run/current-system/sw/libexec/i3blocks/battery
interval=10 interval=10
instance=1 instance=1

37
i3/.config/i3/lock.sh Executable file
View file

@ -0,0 +1,37 @@
#!/bin/sh
BLANK='#F8F8F2'
CLEAR='#44475A'
DEFAULT='#6272A4'
TEXT='#6272A4'
WRONG='#44475A'
VERIFYING='#6272A4'
i3lock \
--insidever-color=$CLEAR \
--ringver-color=$VERIFYING \
\
--insidewrong-color=$CLEAR \
--ringwrong-color=$WRONG \
\
--inside-color=$BLANK \
--ring-color=$DEFAULT \
--line-color=$BLANK \
--separator-color=$DEFAULT \
\
--verif-color=$TEXT \
--wrong-color=$TEXT \
--time-color=$TEXT \
--date-color=$TEXT \
--layout-color=$TEXT \
--keyhl-color=$WRONG \
--bshl-color=$WRONG \
\
--screen 1 \
--blur 9 \
--clock \
--indicator \
--time-str="%H:%M:%S" \
--date-str="%A, %Y-%m-%d" \
--keylayout 1 \
${@}

View file

@ -3,13 +3,10 @@ theme = "dracula"
[icons] [icons]
icons = "material-nf" icons = "material-nf"
[general]
[icons.overrides] colors = true
bat = [ color_good = "#a3be8c"
"| |", color_degraded = "#ebcb8b"
"|¼|", color_bad = "#bf616a"
"|½|", interval = 1
"|¾|", separator = "*"
"|X|",
]
bat_charging = "|^|"

View file

@ -1,46 +1,74 @@
general { general {
// output_format = "i3bar"
output_format = "i3bar" colors = true
colors = true color_good = "#a3be8c"
color_good = "#50FA7B" color_degraded = "#ebcb8b"
color_degraded = "#F1FA8C" color_bad = "#bf616a"
color_bad = "#FF5555" separator = ""
interval = 5 output_format = "i3bar"
interval = 5
separator = "󰭆"
} }
order += "ipv6" // order += "ipv6"
order += "volume master"
order += "read_file spotify"
order += "disk /" order += "disk /"
order += "disk /nix"
order += "disk /home"
// order += "run_watch DHCP"
// order += "run_watch VPNC"
// order += "path_exists VPN"
order += "wireless wlp2s0"
order += "ethernet enp0s31f6"
order += "ethernet enxd8d09030b06b"
order += "ethernet"
order += "ipv6"
order += "wireless _first_"
order += "ethernet _first_"
order += "disk /home"
order += "load"
order += "memory"
order += "run_watch DHCP" order += "run_watch DHCP"
order += "run_watch VPNC" order += "run_watch VPNC"
order += "path_exists VPN" order += "path_exists VPN"
order += "wireless wlan0"
order += "ethernet eth0"
order += "battery 0" order += "battery 0"
order += "cpu_temperature 0" order += "cpu_temperature 0"
order += "memory"
order += "load"
order += "tztime local" order += "tztime local"
order += "tztime berlin" order += "tztime Montreal"
order += "tztime Brussels"
wireless wlan0 { wireless _first_ {
format_up = "W: (%quality at %essid, %bitrate) %ip" format_up = "W: (%quality at %essid) %ip (%speed)"
format_down = "W: down" format_down = "W: down"
} }
ethernet eth0 { ethernet enp0s31f6 {
format_up = "E: %ip (%speed)" format_up = "󰈀 %ip"
format_down = "E: down" format_down = "󰈀 "
}
ethernet enp0s20f0u3c2 {
format_up = "󰈁 %ip"
format_down = "󰈁 "
battery all {
format = "%status %percentage %remaining"
} }
battery 0 { battery 0 {
format = "%status %percentage %remaining %emptytime" format = "%status %percentage %remaining"
format_down = "No battery" format_down = ""
status_chr = "⚡ CHR" last_full_capacity = true
status_bat = "🔋 BAT" integer_battery_capacity = true
status_unk = "? UNK" low_threshold = 11
status_full = "☻ FULL" threshold_type = percentage
hide_seconds = true
status_chr = " ⚡ "
status_bat = " 🪫 "
status_unk = " 🔌 "
status_full = " 🔋 "
path = "/sys/class/power_supply/BAT%d/uevent" path = "/sys/class/power_supply/BAT%d/uevent"
low_threshold = 10
} }
run_watch DHCP { run_watch DHCP {
@ -58,34 +86,94 @@ path_exists VPN {
} }
tztime local { tztime local {
format = "%Y-%m-%d %H:%M:%S" format = "📅 %V %a 󰃭 %Y-%m-%d %H:%M:%S %Z"
hide_if_equals_localtime = true hide_if_equals_localtime = true
} }
tztime berlin { tztime Brussels {
format = "%Y-%m-%d %H:%M:%S %Z" format = "%Y-%m-%d %H:%M:%S %Z"
timezone = "Europe/Berlin" timezone = "Europe/Brussels"
}
tztime Montreal {
format = "%H:%M %Z"
timezone = "America/Montreal"
hide_if_equals_localtime = true
} }
load { load {
format = "%5min" format = "%5min"
} }
cpu_temperature 0 { cpu_temperature 0 {
format = "T: %degrees °C" format = "🌡️ %degrees"
path = "/sys/devices/platform/coretemp.0/temp1_input" path = "/sys/devices/platform/coretemp.0/hwmon/hwmon5/temp1_input"
} }
memory { memory {
format = "%used" format = "%used"
threshold_degraded = "10%" threshold_degraded = "10%"
format_degraded = "MEMORY: %free" format_degraded = "MEMORY: %free"
} }
disk "/" { disk "/" {
format = " / %free"
prefix_type = custom
low_threshold = 20
threshold_type = percentage_avail
}
disk "/nix" {
format = "💻 /nix %free"
prefix_type = custom
low_threshold = 15
threshold_type = percentage_avail
}
disk "/home" {
format = "💾 /home %free"
prefix_type = custom
low_threshold = 10
threshold_type = percentage_avail
}
disk "/home" {
format = "%free" format = "%free"
} }
read_file uptime { read_file uptime {
path = "/proc/uptime" path = "/proc/uptime"
} }
volume master {
format = "%volume 󰕾 "
format_muted = "󰖁 "
// device = "pulse:1"pavuc
device = "default"
mixer = "Master"
mixer_idx = 0
}
read_file spotify {
format = "🔊%content"
path = "~/.config/i3status/spotify.log"
format = "%status %percentage %remaining"
}
disk "/" {
format = "%avail"
}
load {
format = "%1min"
}
memory {
format = "%used | %available"
threshold_degraded = "1G"
format_degraded = "MEMORY < %available"
}
tztime local {
format = "%Y-%m-%d %H:%M:%S"
}

View file

0
nano/.cache/nano/.keep Normal file
View file

View file

@ -5,7 +5,7 @@
set backupdir "~/.cache/nano/" set backupdir "~/.cache/nano/"
# set backwards # set backwards
# set boldtext # set boldtext
set brackets ""')>]}" set brackets "\"')>]}"
# set casesensitive # set casesensitive
set constantshow set constantshow
# set cutfromcursor # set cutfromcursor
@ -59,9 +59,8 @@ set statuscolor brightwhite,red
#set numbercolor magenta #set numbercolor magenta
# set keycolor brightmagenta # set keycolor brightmagenta
# set functioncolor magenta # set functioncolor magenta
include "/usr/share/nano/*.nanorc" #include "/usr/share/nano/*.nanorc"
# bind ^S savefile main # bind ^S savefile main
# bind M-B cutwordleft main # bind M-B cutwordleft main
# bind M-N cutwordright main # bind M-N cutwordright main
# bind Del backspace all # bind Del backspace all
set nonewlines

View file

@ -0,0 +1,14 @@
# Default opacity of active windows.
active-opacity = 1.0;
# Default opacity of inactive windows.
inactive-opacity = 1.0;
# Opacity of window titlebars and borders.
frame-opacity = 1.0;
# Application-specific settings; these override the default `active-opacity`
opacity-rule = [
"95:class_g = 'Alacritty' && focused",
"80:class_g = 'Alacritty' && !focused"
];

View file

@ -0,0 +1,336 @@
;==========================================================
;
;
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
;
;
; To learn more about how to configure Polybar
; go to https://github.com/polybar/polybar
;
; The README contains a lot of information
;
;==========================================================
[colors]
background = #282A36
background-alt = #BFBFBF
foreground = #F8F8F2
primary = #F8F8F2
secondary = #282A36
alert = #44475A
disabled = #44475A
[bar/main]
monitor = "DP-1-2"
# Last component is the vertical offset
#font-0 = Fira Code:size=10;4
; font-0 = FiraMono Nerd Font:size=12;4
#fc-match FontAwesome:pixelsize=14 FontAwesome.otf: "FontAwesome" "Regular"
; font-3 = FontAwesome:pixelsize=14;0
#font-0 = Overpass Nerd Font,Overpass Nerd Font SemBd:size=10;4
#font-0 = FiraCode:size=10;4
#font-0 = Overpass Nerd Font:size=10;4
#font-1 = Noto Sans:size=10;4
font-0 = fixed:pixelsize=12;1
font-1 = unifont:fontformat=truetype:size=10:antialias=false;0
font-2 = "FiraCode Nerd Font:pixelsize=12;1"
width = 100%
height = 16pt
radius = 0
#dpi = 192
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 2pt
border-size = 0pt
border-color = #00000000
padding-left = 0
padding-right = 1
module-margin = 1
separator = |
separator-foreground = ${colors.disabled}
modules-left = xworkspaces xwindow
modules-right = filesystem pulseaudio xkeyboard memory cpu wlan eth battery date
#modules-right = pulseaudio wlan eth battery date
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true
tray-position = right
; wm-restack = generic
; wm-restack = bspwm
wm-restack = i3
; override-redirect = true
[module/xworkspaces]
type = internal/xworkspaces
label-active = %name%
label-active-background = ${colors.background-alt}
label-active-underline= ${colors.primary}
label-active-padding = 1
label-occupied = %name%
label-occupied-padding = 1
label-urgent = %name%
label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %name%
label-empty-foreground = ${colors.disabled}
label-empty-padding = 1
[module/xwindow]
type = internal/xwindow
label = %title:0:60:...%
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.disabled}
[module/pulseaudio]
type = internal/pulseaudio
format-volume-prefix = " "
format-volume-prefix-foreground = ${colors.primary}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = " muted"
label-muted-foreground = ${colors.disabled}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = %layout%
label-layout-foreground = ${colors.primary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-foreground = ${colors.background}
label-indicator-background = ${colors.secondary}
[module/memory]
type = internal/memory
interval = 2
format-prefix = "RAM "
format-prefix-foreground = ${colors.primary}
label = %percentage_used:2%%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = "CPU "
format-prefix-foreground = ${colors.primary}
label = %percentage:2%%
[network-base]
type = internal/network
interval = 5
format-connected = <label-connected>
format-disconnected = <label-disconnected>
[module/wlan]
inherit = network-base
interface-type = wireless
format-connected = <ramp-signal> <label-connected>
label-connected = %local_ip%
#label-connected = %{F#F0C674} %{F-} %local_ip%
#label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip%
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected 
ramp-signal-0 = %{F#F0C674}󰤯 %{F-}
ramp-signal-1 = %{F#F0C674}󰤟 %{F-}
ramp-signal-2 = %{F#F0C674}󰤢 %{F-}
ramp-signal-3 = %{F#F0C674}󰤥 %{F-}
ramp-signal-4 = %{F#F0C674}󰤨 %{F-}
ramp-signal-5 = %{F#F0C674} %{F-}
[module/eth]
inherit = network-base
interface-type = wired
label-connected = %{F#F0C674}%ifname% 󱚽 %{F-} %local_ip%
#label-connected = %{F#F0C674}%ifname%%{F-} %local_ip%
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
[module/battery]
type = internal/battery
# $ ls -1 /sys/class/power_supply/
battery = BAT0
adapter = ADP1
low-at = 15
# If an inotify event haven't been reported in this many
# seconds, manually poll for new values.
#
# Needed as a fallback for systems that don't report events
# on sysfs/procfs.
#
# Disable polling by setting the interval to 0.
#
# Default: 5
#poll-interval = 5
# Available tags:
# <label-charging> (default)
# <bar-capacity>
# <ramp-capacity>
# <animation-charging>
format-charging = <animation-charging> <label-charging>
# Available tags:
# <label-discharging> (default)
# <bar-capacity>
# <ramp-capacity>
# <animation-discharging>
#format-discharging = <animation-discharging> <label-discharging>
format-discharging = <ramp-capacity> <label-discharging>
# Available tokens:
# %percentage% (default) - is set to 100 if full-at is reached
# %percentage_raw%
# %time%
# %consumption% (shows current charge rate in watts)
label-charging = %percentage%%
#label-charging = Charging %percentage%%
# Available tokens:
# %percentage% (default) - is set to 100 if full-at is reached
# %percentage_raw%
# %time%
# %consumption% (shows current discharge rate in watts)
label-discharging = %percentage%%
#label-discharging = Discharging %percentage%%
# Available tokens:
# %percentage% (default) - is set to 100 if full-at is reached
# %percentage_raw%
label-full = "%{F#F0C674}󰂅 %{F-}"
# Available tokens:
# %percentage% (default) - is set to 100 if full-at is reached
# %percentage_raw%
# %time%
# %consumption% (shows current discharge rate in watts)
# New in version 3.6.0
label-low = BATTERY LOW
# Only applies if <ramp-capacity> is used
ramp-capacity-0 = "%{F#F04020} %{F-}"
ramp-capacity-1 = "%{F#F0C674} %{F-}"
ramp-capacity-2 = "%{F#F0C674} %{F-}"
ramp-capacity-3 = "%{F#F0C674} %{F-}"
ramp-capacity-4 = "%{F#F0C674} %{F-}"
# Only applies if <bar-capacity> is used
bar-capacity-width = 10
# Only applies if <animation-charging> is used
animation-charging-0 = "%{F#F0C674}󰢜 %{F-}"
animation-charging-1 = "%{F#F0C674}󰂆 %{F-}"
animation-charging-2 = "%{F#F0C674}󰂈 %{F-}"
animation-charging-3 = "%{F#F0C674}󰂉 %{F-}"
animation-charging-4 = "%{F#F0C674}󰂊 %{F-}"
# Framerate in milliseconds
animation-charging-framerate = 750
# Only applies if <animation-discharging> is used
animation-discharging-0 = " "
animation-discharging-1 = " "
animation-discharging-2 = " "
animation-discharging-3 = " "
animation-discharging-4 = " "
# Framerate in milliseconds
animation-discharging-framerate = 500
[module/date]
type = internal/date
interval = 1
date = %H:%M
date-alt = %Y-%m-%d %H:%M:%S
label = %date%
#label-foreground = ${colors.primary}
[settings]
screenchange-reload = true
pseudo-transparency = true
[module/i3]
type = internal/i3
; Only show workspaces defined on the same output as the bar
;
; Useful if you want to show monitor specific workspaces
; on different bars
;
; Default: false
pin-workspaces = false
; Show urgent workspaces regardless of whether the workspace is actually hidden
; by pin-workspaces.
;
; Default: false
; New in version 3.6.0
show-urgent = true
; This will split the workspace name on ':'
; Default: false
strip-wsnumbers = true
; Sort the workspaces by index instead of the default
; sorting that groups the workspaces by output
; Default: false
index-sort = true
; Create click handler used to focus workspace
; Default: true
enable-click = false
; Create scroll handlers used to cycle workspaces
; Default: true
enable-scroll = false
; Wrap around when reaching the first/last workspace
; Default: true
wrapping-scroll = false
; Set the scroll cycle direction
; Default: true
reverse-scroll = false
; Use fuzzy (partial) matching for wc-icon.
; Example: code;♚ will apply the icon to all workspaces
; containing 'code' in the name
; Changed in version 3.7.0: Selects longest string match instead of the first match.
; Default: false
fuzzy-match = true
; vim:ft=dosini

View file

@ -1,14 +1,13 @@
#!/usr/bin/env bash #!/usr/bin/env bash
cd "$( dirname "$0" )" cd $(dirname $0) || exit
# make sure we have pulled in and updated any submodules # make sure we have pulled in and updated any submodules
git submodule init git submodule init
git submodule update git submodule update
# what directories should be installable by all users including the root user # what directories should be installable by all users including the root user
base=( base=(
dracula dunst
git git
helix helix
htop htop
@ -16,8 +15,6 @@ base=(
nix nix
puppet puppet
ssh ssh
i3
sway
terminfo terminfo
tmux tmux
vim vim
@ -29,6 +26,10 @@ useronly=(
alacritty alacritty
asciinema asciinema
awesome awesome
dracula
i3
picom
polybar
) )
# run the stow command for the passed in directory ($2) in location $1 # run the stow command for the passed in directory ($2) in location $1

View file

@ -104,10 +104,10 @@ if-shell '\( #{$TMUX_VERSION_MAJOR} -eq 2 -a #{$TMUX_VERSION_MINOR} -ge 1\)' 'se
if-shell '\( #{$TMUX_VERSION_MAJOR} -eq 2 -a #{$TMUX_VERSION_MINOR} -lt 1\) -o #{$TMUX_VERSION_MAJOR} -le 1' 'set -g mode-mouse off' if-shell '\( #{$TMUX_VERSION_MAJOR} -eq 2 -a #{$TMUX_VERSION_MINOR} -lt 1\) -o #{$TMUX_VERSION_MAJOR} -le 1' 'set -g mode-mouse off'
# fix pane_current_path on new window and splits # fix pane_current_path on new window and splits
if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind c; bind c new-window -c "#{pane_current_path}"' #if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind c; bind c new-window -c "#{pane_current_path}"'
if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" "unbind '\"'; bind '\"' split-window -v -c '#{pane_current_path}'" #if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" "unbind '\"'; bind '\"' split-window -v -c '#{pane_current_path}'"
if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind v; bind v split-window -h -c "#{pane_current_path}"' #if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind v; bind v split-window -h -c "#{pane_current_path}"'
if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind %; bind % split-window -h -c "#{pane_current_path}"' #if-shell "test '#{$TMUX_VERSION_MAJOR} -gt 1 -o \( #{$TMUX_VERSION_MAJOR} -eq 1 -a #{$TMUX_VERSION_MINOR} -ge 8 \)'" 'unbind %; bind % split-window -h -c "#{pane_current_path}"'
set -g history-limit 90000 set -g history-limit 90000
set -g alternate-screen on set -g alternate-screen on

@ -1 +1 @@
Subproject commit 6768906d07151140db901510b2c8b1ce2622f365 Subproject commit a72a26406ad3aa9a47c3f5227291bad23494bed0

View file

@ -1,21 +1,29 @@
export PATH=$HOME/bins/toolbox:$HOME/.local/bin:/usr/local/bin:$HOME/.pyenv/bin:$PATH #zmodload zsh/zprof
export PATH=$HOME/bins/toolbox:$HOME/.cargo/bin:$HOME/.local/bin:/usr/local/bin:$HOME/.pyenv/bin:$HOME/hosting-run-scripts/:$HOME/bins/alexis/.local/bin/:$PATH
export ZSH=$HOME/.oh-my-zsh export ZSH=$HOME/.oh-my-zsh
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes # See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="agnoster" ZSH_THEME="agnoster"
DEFAULT_USER=$USER DEFAULT_USER=$USER
HOST_COLOR=$(hostname -f | xxd -u -ps -s 5 -l 3 || 'FF0000')
# CASE_SENSITIVE="true" # CASE_SENSITIVE="true"
# HYPHEN_INSENSITIVE="true" # HYPHEN_INSENSITIVE="true"
DISABLE_AUTO_UPDATE="true" DISABLE_AUTO_UPDATE="false"
DEFAULT_USER=$USER
# export UPDATE_ZSH_DAYS=13 # export UPDATE_ZSH_DAYS=13
# DISABLE_LS_COLORS="true" # DISABLE_LS_COLORS="true"
# DISABLE_AUTO_TITLE="true" # DISABLE_AUTO_TITLE="true"
# ENABLE_CORRECTION="true" # ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion. # Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true" COMPLETION_WAITING_DOTS="true"
# DISABLE_UNTRACKED_FILES_DIRTY="true" # DISABLE_UNTRACKED_FILES_DIRTY="true"
HIST_STAMPS="yyyy-mm-dd" HIST_STAMPS="yyyy-mm-dd"
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
# Would you like to use another custom folder than $ZSH/custom? # Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder # ZSH_CUSTOM=/path/to/new-custom-folder
@ -24,11 +32,11 @@ HIST_STAMPS="yyyy-mm-dd"
# Example format: plugins=(rails git textmate ruby lighthouse) # Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup. # Add wisely, as too many plugins slow down shell startup.
plugins=( plugins=(
adb #adb
#ant #ant
#apache2-macports #apache2-macports
#arcanist #arcanist
archlinux #archlinux
#asdf #asdf
#autoenv #autoenv
#autojump #autojump
@ -38,7 +46,7 @@ archlinux
#bbedit #bbedit
#bgnotify #bgnotify
#boot2docker #boot2docker
bower #bower
branch branch
#brew #brew
#bundler #bundler
@ -62,11 +70,11 @@ colorize
#command-not-found #command-not-found
#common-aliases #common-aliases
#compleat #compleat
composer #composer
#copybuffer #copybuffer
#copydir #copydir
#copyfile #copyfile
cp #cp
#cpanm #cpanm
debian debian
#dircycle #dircycle
@ -74,15 +82,15 @@ debian
#dirpersist #dirpersist
#django #django
#dnf #dnf
docker #docker
docker-compose #docker-compose
#docker-machine #docker-machine
#dotenv #dotenv
#droplr #droplr
#eecms #eecms
#emacs #emacs
#ember-cli #ember-cli
emoji #emoji
#emoji-clock #emoji-clock
#emotty #emotty
encode64 encode64
@ -126,7 +134,7 @@ gpg-agent
history history
#history-substring-search #history-substring-search
#httpie #httpie
iterm2 #iterm2
#iwhois #iwhois
#jake-node #jake-node
#jhbuild #jhbuild
@ -164,9 +172,9 @@ nanoc
#ng #ng
#nix #nix
#nmap #nmap
node #node
#nomad #nomad
npm #npm
#npx #npx
#nvm #nvm
#nyan #nyan
@ -179,16 +187,16 @@ npm
#perl #perl
#perms #perms
#phing #phing
pip #pip
#pj #pj
#pod #pod
postgres #postgres
#pow #pow
#powder #powder
#powify #powify
#profiles #profiles
pyenv pyenv
pylint #pylint
python python
#rails #rails
#rake #rake
@ -198,7 +206,7 @@ python
#rbfu #rbfu
#react-native #react-native
#rebar #rebar
redis-cli #redis-cli
#repo #repo
rsync rsync
#ruby #ruby
@ -219,7 +227,7 @@ ssh-agent
#stack #stack
#sublime #sublime
sudo sudo
supervisor #supervisor
#suse #suse
#svn #svn
#svn-fast-info #svn-fast-info
@ -227,7 +235,7 @@ supervisor
#symfony #symfony
#symfony2 #symfony2
#systemadmin #systemadmin
systemd #systemd
#taskwarrior #taskwarrior
#terminalapp #terminalapp
#terminitor #terminitor
@ -246,7 +254,7 @@ tmux
#ubuntu #ubuntu
#urltools #urltools
#vagrant #vagrant
vault #vault
#vi-mode #vi-mode
#vim-interaction #vim-interaction
#virtualenv #virtualenv
@ -268,8 +276,9 @@ vault
) )
zstyle :omz:plugins:ssh-agent agent-forwarding on zstyle :omz:plugins:ssh-agent agent-forwarding on
zstyle :omz:plugins:ssh-agent identities auberge zstyle :omz:plugins:ssh-agent lazy yes
zstyle :omz:plugins:ssh-agent lifetime 4h zstyle :omz:plugins:ssh-agent lifetime 4h
zstyle :omz:plugins:ssh-agent quiet yes
source $ZSH/oh-my-zsh.sh source $ZSH/oh-my-zsh.sh
@ -283,7 +292,7 @@ source $ZSH/oh-my-zsh.sh
# else # else
# export EDITOR='mvim' # export EDITOR='mvim'
# fi # fi
export EDITOR='hx'
# Compilation flags # Compilation flags
# export ARCHFLAGS="-arch x86_64" # export ARCHFLAGS="-arch x86_64"
@ -322,21 +331,31 @@ status() {
print "" print ""
} }
alias kbe='setxkbmap be' alias bat='batcat'
alias kus='setxkbmap us'
alias dl='wget -r -k -T 5 -t 2 -U '\''Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0'\'' ' alias dl='wget -r -k -T 5 -t 2 -U '\''Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0'\'' '
alias egrep='egrep --color=auto' alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto' alias fgrep='fgrep --color=auto'
alias flip='shuf -i 0-1 -n 1 | sed -e '\''s/1/Pile/'\'' -e '\''s/0/Face/'\''' alias flip='shuf -i 0-1 -n 1 | sed -e '\''s/1/Pile/'\'' -e '\''s/0/Face/'\'''
alias grep='grep --color=auto' alias grep='grep --color=auto'
alias ls='ls --classify --tabsize=0 --literal --color=auto --show-control-chars --human-readable' alias ip="ip --color"
alias kbe='setxkbmap be'
alias kus='setxkbmap us'
alias l='ls -CF' alias l='ls -CF'
alias la='ls -A' alias la='ls -A'
alias ll='ls -lah' alias ll='ls -lah'
alias osj='openstack -f json' alias ls='ls --classify --tabsize=0 --literal --color=auto --show-control-chars --human-readable'
alias osc='openstack console log show' alias osc='openstack console log show'
alias osj='openstack -f json'
alias osm="openstack --os-cloud management_stack"
alias osmb="openstack --os-cloud management_stack_sbg"
alias osmd="openstack --os-cloud management_stack_de"
alias oss='openstack server' alias oss='openstack server'
alias psa='ps auxwwwf' alias psa='ps auxwwwf'
alias toph='top -cHd1' alias toph='top -cHd1'
alias ip="ip --color" alias vdir='vdir --color=auto'
VAULT_ADDR="https://vault.ood.ovh:8200" export BASTION_CONF_FILE=~/.config/ovh/bastion.env
source ~/.webhosting/activate
autoload -Uz compinit
zstyle ':completion:*' menu select
fpath+=~/.zfunc
fpath+=${ZDOTDIR:-~}/.zsh_functions