diff --git a/.config/MangoHud/MangoHud.conf b/.config/MangoHud/MangoHud.conf new file mode 100644 index 0000000..6194032 --- /dev/null +++ b/.config/MangoHud/MangoHud.conf @@ -0,0 +1,241 @@ +### MangoHud configuration file +### Uncomment any options you wish to enable. Default options are left uncommented +### Use some_parameter=0 to disable a parameter (only works with on/off parameters) +### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead + +################ PERFORMANCE ################# + +### Limit the application FPS. Comma-separated list of one or more FPS values (e.g. 0,30,60). 0 means unlimited (unless VSynced) +fps_limit=144 + +### VSync [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on +# vsync= +vsync=1 + +### OpenGL VSync [0-N] 0 = off; >=1 = wait for N v-blanks, N > 1 acts as a FPS limiter (FPS = display refresh rate / N) +# gl_vsync= +gl_vsync=0 + +################### VISUAL ################### + +### Legacy layout +# legacy_layout=false + +### Display custom centered text, useful for a header +# custom_text_center= + +### Display the current system time +# time + +### Time formatting examples +# time_format=%H:%M +# time_format=[ %T %F ] +# time_format=%X # locally formatted time, because of limited glyph range, missing characters may show as '?' (e.g. Japanese) + +### Display MangoHud version +# version + +### Display the current GPU information +gpu_stats +gpu_temp +gpu_core_clock +gpu_mem_clock +gpu_power +# gpu_text=GPU +gpu_load_change +gpu_load_value=60,90 +gpu_load_color=39F900,FDFD09,B22222 + +### Display the current CPU information +cpu_stats +cpu_temp +cpu_power +# cpu_text=CPU +cpu_mhz +cpu_load_change +cpu_load_value=60,90 +cpu_load_color=39F900,FDFD09,B22222 + +### Display the current CPU load & frequency for each core +# core_load +# core_load_change + +### Display IO read and write for the app (not system) +io_stats +io_read +io_write + +### Display system vram / ram / swap space usage +vram +ram +swap + +### Display per process memory usage +## Show resident memory and other types, if enabled +# procmem +# procmem_shared +# procmem_virt + +### Display battery information +# battery +# battery_icon +# gamepad_battery +# gamepad_battery_icon + +### Display FPS and frametime +fps +# fps_sampling_period=500 +fps_color_change +fps_value=60,90 +fps_color=B22222,FDFD09,39F900 +frametime +# frame_count + +### Display miscellaneous information +#engine_version +#gpu_name +#vulkan_driver +#wine + +### Display loaded MangoHud architecture +# arch + +### Display the frametime line graph +frame_timing +histogram + +### Display GameMode / vkBasalt running status +gamemode +#vkbasalt + +### Display current FPS limit +# show_fps_limit + +### Display the current resolution +# resolution + +### Display custom text +# custom_text= +### Display output of Bash command in next column +# exec= + +### Display media player metadata +# media_player +# media_player_name=spotify +## Format metadata, lines are delimited by ; (wip) +# media_player_format={title};{artist};{album} +# media_player_format=Track:;{title};By:;{artist};From:;{album} + +### Change the hud font size +# font_size=24 +# font_scale=1.0 +# font_size_text=24 +# font_scale_media_player=0.55 +# no_small_font + +### Change default font (set location to TTF/OTF file) +## Set font for the whole hud +# font_file= + +## Set font only for text like media player metadata +# font_file_text= + +## Set font glyph ranges. Defaults to Latin-only. Don't forget to set font_file/font_file_text to font that supports these +## Probably don't enable all at once because of memory usage and hardware limits concerns +## If you experience crashes or text is just squares, reduce glyph range or reduce font size +# font_glyph_ranges=korean,chinese,chinese_simplified,japanese,cyrillic,thai,vietnamese,latin_ext_a,latin_ext_b + +### Change the hud position +# position=top-left + +### Change the corner roundness +# round_corners= + +### Disable / hide the hud by default +no_display + +### Hud position offset +# offset_x= +# offset_y= + +### Hud dimensions +# width= +# height= +# table_columns= +# cellpadding_y= + +### Hud transparency / alpha +# background_alpha=0.5 +# alpha= + +### FCAT overlay +### This enables an FCAT overlay to perform frametime analysis on the final image stream. +### Enable the overlay +# fcat +### Set the width of the FCAT overlay. +### 24 is a performance optimization on AMD GPUs that should not have adverse effects on nVidia GPUs. +### A minimum of 20 pixels is recommended by nVidia. +# fcat_overlay_width=24 +### Set the screen edge, this can be useful for special displays that don't update from top edge to bottom. This goes from 0 (left side) to 3 (top edge), counter-clockwise. +# fcat_screen_edge=0 + +### Color customization +# text_color=FFFFFF +# gpu_color=2E9762 +# cpu_color=2E97CB +# vram_color=AD64C1 +# ram_color=C26693 +# engine_color=EB5B5B +# io_color=A491D3 +# frametime_color=00FF00 +# background_color=020202 +# media_player_color=FFFFFF +# wine_color=EB5B5B +# battery_color=FF9078 + +### Specify GPU with PCI bus ID for AMDGPU and NVML stats +### Set to 'domain:bus:slot.function' +# pci_dev=0:0a:0.0 + +### Blacklist +# blacklist= + +### Control over socket +### Enable and set socket name, '%p' is replaced with process id +# control = mangohud +# control = mangohud-%p + +################ WORKAROUNDS ################# +### Options starting with "gl_*" are for OpenGL +### Specify what to use for getting display size. Options are "viewport", "scissorbox" or disabled. Defaults to using glXQueryDrawable +# gl_size_query=viewport + +### (Re)bind given framebuffer before MangoHud gets drawn. Helps with Crusader Kings III +# gl_bind_framebuffer=0 + +### Don't swap origin if using GL_UPPER_LEFT. Helps with Ryujinx +# gl_dont_flip=1 + +################ INTERACTION ################# + +### Change toggle keybinds for the hud & logging +# toggle_hud=Shift_R+F12 +# toggle_fps_limit=Shift_L+F1 +# toggle_logging=Shift_L+F2 +# reload_cfg=Shift_L+F4 +# upload_log=Shift_L+F3 + +#################### LOG ##################### +### Automatically start the log after X seconds +# autostart_log=1 +### Set amount of time in seconds that the logging will run for +# log_duration= +### Change the default log interval, 100 is default +# log_interval=100 +### Set location of the output files (required for logging) +output_folder=/home/wizardlink/.config/MangoHud +### Permit uploading logs directly to FlightlessMango.com +# permit_upload=1 +### Define a '+'-separated list of percentiles shown in the benchmark results +### Use "AVG" to get a mean average. Default percentiles are 97+AVG+1+0.1 +# benchmark_percentiles=97,AVG,1,0.1 diff --git a/.config/btop/btop.conf b/.config/btop/btop.conf new file mode 100644 index 0000000..afad96b --- /dev/null +++ b/.config/btop/btop.conf @@ -0,0 +1,212 @@ +#? Config file for btop v. 1.2.13 + +#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. +#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" +color_theme = "/usr/share/btop/themes/dracula.theme" + +#* If the theme set background should be shown, set to False if you want terminal background transparency. +theme_background = False + +#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. +truecolor = True + +#* Set to true to force tty mode regardless if a real tty has been detected or not. +#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. +force_tty = False + +#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. +#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. +#* Use whitespace " " as separator between different presets. +#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" +presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" + +#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. +#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. +vim_keys = False + +#* Rounded corners on boxes, is ignored if TTY mode is ON. +rounded_corners = True + +#* Default symbols to use for graph creation, "braille", "block" or "tty". +#* "braille" offers the highest resolution but might not be included in all fonts. +#* "block" has half the resolution of braille but uses more common characters. +#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. +#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. +graph_symbol = "braille" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_cpu = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_mem = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_net = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_proc = "default" + +#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace. +shown_boxes = "cpu proc mem net" + +#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. +update_ms = 2000 + +#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", +#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. +proc_sorting = "cpu lazy" + +#* Reverse sorting order, True or False. +proc_reversed = False + +#* Show processes as a tree. +proc_tree = False + +#* Use the cpu graph colors in the process list. +proc_colors = True + +#* Use a darkening gradient in the process list. +proc_gradient = True + +#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. +proc_per_core = False + +#* Show process memory as bytes instead of percent. +proc_mem_bytes = True + +#* Show cpu graph for each process. +proc_cpu_graphs = True + +#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) +proc_info_smaps = False + +#* Show proc box on left side of screen instead of right. +proc_left = False + +#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). +proc_filter_kernel = False + +#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_upper = "total" + +#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_lower = "total" + +#* Toggles if the lower CPU graph should be inverted. +cpu_invert_lower = True + +#* Set to True to completely disable the lower CPU graph. +cpu_single_graph = False + +#* Show cpu box at bottom of screen instead of top. +cpu_bottom = False + +#* Shows the system uptime in the CPU box. +show_uptime = True + +#* Show cpu temperature. +check_temp = True + +#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. +cpu_sensor = "Auto" + +#* Show temperatures for cpu cores also if check_temp is True and sensors has been found. +show_coretemp = True + +#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. +#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. +#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. +#* Example: "4:0 5:1 6:3" +cpu_core_map = "" + +#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". +temp_scale = "celsius" + +#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. +base_10_sizes = False + +#* Show CPU frequency. +show_cpu_freq = True + +#* Draw a clock at top of screen, formatting according to strftime, empty string to disable. +#* Special formatting: /host = hostname | /user = username | /uptime = system uptime +clock_format = "%X" + +#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. +background_update = True + +#* Custom cpu model name, empty string to disable. +custom_cpu_name = "" + +#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". +#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user". +disks_filter = "" + +#* Show graphs instead of meters for memory values. +mem_graphs = True + +#* Show mem box below net box instead of above. +mem_below_net = False + +#* Count ZFS ARC in cached and available memory. +zfs_arc_cached = True + +#* If swap memory should be shown in memory box. +show_swap = True + +#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. +swap_disk = True + +#* If mem box should be split to also show disks info. +show_disks = True + +#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. +only_physical = True + +#* Read disks list from /etc/fstab. This also disables only_physical. +use_fstab = True + +#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) +zfs_hide_datasets = False + +#* Set to true to show available disk space for privileged users. +disk_free_priv = False + +#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. +show_io_stat = True + +#* Toggles io mode for disks, showing big graphs for disk read/write speeds. +io_mode = False + +#* Set to True to show combined read/write io graphs in io mode. +io_graph_combined = False + +#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". +#* Example: "/mnt/media:100 /:20 /boot:1". +io_graph_speeds = "" + +#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. +net_download = 100 + +net_upload = 100 + +#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. +net_auto = True + +#* Sync the auto scaling for download and upload to whichever currently has the highest scale. +net_sync = True + +#* Starts with the Network Interface specified here. +net_iface = "" + +#* Show battery stats in top right if battery is present. +show_battery = True + +#* Which battery to use if multiple are present. "Auto" for auto detection. +selected_battery = "Auto" + +#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". +#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. +log_level = "WARNING" \ No newline at end of file diff --git a/.config/doom/config.el b/.config/doom/config.el new file mode 100644 index 0000000..1aad4ef --- /dev/null +++ b/.config/doom/config.el @@ -0,0 +1,170 @@ +;;; $DOOMDIR/config.el -*- lexical-binding: t; -*- + +;; Place your private configuration here! Remember, you do not need to run 'doom +;; sync' after modifying this file! + +;; Some functionality uses this to identify you, e.g. GPG configuration, email +;; clients, file templates and snippets. +(setq user-full-name "Alexandre Cavalheiro S. Tiago da Silva" + user-mail-address "contact@thewizard.link") + +;; Doom exposes five (optional) variables for controlling fonts in Doom. Here +;; are the three important ones: +;; +;; + `doom-font' +;; + `doom-variable-pitch-font' +;; + `doom-big-font' -- used for `doom-big-font-mode'; use this for +;; presentations or streaming. +;; +;; They all accept either a font-spec, font string ("Input Mono-12"), or xlfd +;; font string. You generally only need these two: +;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light) +;; doom-variable-pitch-font (font-spec :family "sans" :size 13)) + +(setq doom-font (font-spec :family "FantasqueSansMono NF" :size 15)) +;;(setq doom-font (font-spec :family "Hasklig" :size 12 :weight 'regular)) + +;;(setq doom-unicode-font doom-font) ; extend glyphs + +;; There are two ways to load a theme. Both assume the theme is installed and +;; available. You can either set `doom-theme' or manually load a theme with the +;; `load-theme' function. This is the default: +(setq doom-theme 'doom-dracula) + +;; If you use `org' and don't want your org files in the default location below, +;; change `org-directory'. It must be set before org loads! +(setq org-directory "~/Documents/notes" + org-agenda-files (doom-files-in `(,org-directory, "~/Documents/zettelkasten") :type 'files :match "\\.org\\'")) + +;; This determines the style of line numbers in effect. If set to `nil', line +;; numbers are disabled. For relative line numbers, set this to `relative'. +(setq display-line-numbers-type 'relative) + + +;; Here are some additional functions/macros that could help you configure Doom: +;; +;; - `load!' for loading external *.el files relative to this one +;; - `use-package!' for configuring packages +;; - `after!' for running code after a package has loaded +;; - `add-load-path!' for adding directories to the `load-path', relative to +;; this file. Emacs searches the `load-path' when you load packages with +;; `require' or `use-package'. +;; - `map!' for binding new keys +;; +;; To get information about any of these functions/macros, move the cursor over +;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k'). +;; This will open documentation for it, including demos of how they are used. +;; +;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how +;; they are implemented. + +;; Set the tab size to 2 +(setq tab-width 2) + +;; Make sure hl-line-mode doesn't overrides rainbow-mode +(add-hook! 'rainbow-mode-hook + (hl-line-mode (if rainbow-mode -1 +1))) + +;; Show gravatars on commits +(setq magit-revision-show-gravatars '("^Author: " . "^Commit: ")) + +;; Enable fullscreen when activating zen mode +(setq writeroom-fullscreen-effect t) + +;; Configure elcord +(setq elcord-client-id "794300845000228897" + elcord-mode-text-alist '( + (cpp-mode . "C++") + (emacs-lisp-mode . "Elisp") + (gdscript-mode . "GDScript") + (js-mode . ":(") + (json-mode . "D:") + (lua-mode . "PLEASE") + (org-mode . "c:") + (sh-mode . ":c") + (typescript-mode . ":)") + (magit-mode . "Git magic") + (elixir-mode . "Elixir") + (nim-mode "Nim") + ) + elcord-mode-icon-alist '( + (cpp-mode . "cpp_mode") + (emacs-lisp-mode . "elisp_mode") + (gdscript-mode . "gdscript_mode") + (js-mode . "js_mode") + (json-mode . "json_mode") + (lua-mode . "lua_mode") + (org-mode . "org_mode") + (sh-mode . "sh_mode") + (typescript-mode . "typescript_mode") + (magit-mode . "magit_mode") + (elixir-mode . "elixir_mode") + (nim-mode . "nim_mode") + ) + elcord-editor-icon "elmo_fire" + elcord--editor-name "Coding is overrated." + ) + +;; Configure initial major mode for the scratch buffer +(setq initial-major-mode 'org-mode) + +;; Configure orm-roam +(setq org-roam-v2-ack t) ; flag that it has been successfully migrated +(setq org-roam-directory "~/Documents/zettelkasten") +(map! (:leader :desc "Opens a daily note through the calendar" :n "nrdF" #'org-roam-dailies-find-date)) + +(use-package! websocket + :after org-roam) +(use-package! org-roam-ui + :after org-roam + :config + (setq org-roam-ui-sync-theme t + org-roam-ui-follow t + org-roam-ui-update-on-save t + org-roam-ui-open-on-start t)) + +;; Function to add directories done by hlissner (Henrik) https://github.com/hlissner/doom-emacs/issues/5305#issuecomment-923996238 +(defun doom/add-directory-as-project (dir) + "Register an arbitrary directory as a project. +If DIR is not a valid project, a .project file will be created within it. This +command will throw an error if a parent of DIR is a valid project (which would +mask DIR)." + (interactive "D") + (let ((short-dir (abbreviate-file-name dir)) + (proj-dir (doom-project-root dir))) + (unless (and proj-dir (file-equal-p proj-dir dir)) + (with-temp-file (doom-path dir ".project"))) + (setq proj-dir (doom-project-root dir)) + (unless (and proj-dir (file-equal-p proj-dir dir)) + (user-error "Can't add %S as a project, because %S is already a project" + short-dir (abbreviate-file-name proj-dir))) + (message "%S was not a project; adding .project file to it" short-dir) + (projectile-add-known-project dir))) + +;; Setup elixir-ls +(setq lsp-clients-elixir-server-executable '("~/.local/share/elixir-ls/release/language_server.sh")) + +;; Configure elfeed +(setq rmh-elfeed-org-files '("/home/wizardlink/Documents/zettelkasten/20220610215118-elfeed.org")) + +;; Configure doom-themes with treemacs +(with-eval-after-load 'doom-themes + (doom-themes-treemacs-config)) + +;; Configure doom-gruvbox +(setq + doom-gruvbox-brighter-comments nil + doom-gruvbox-dark-variant "medium" + doom-gruvbox-padded-modeline nil) + +;; Configure formaters +(setq +format-on-save-enabled-modes + '(not emacs-lisp-mode + javascript-mode + typescript-mode + web-mode)) + +;; Configure org-reveal +(setq + org-reveal-root "https://cdn.jsdelivr.net/npm/reveal.js" + org-reveal-klipsify-src 'nil) diff --git a/.config/doom/custom.el b/.config/doom/custom.el new file mode 100644 index 0000000..afb9450 --- /dev/null +++ b/.config/doom/custom.el @@ -0,0 +1,13 @@ +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(org-agenda-files + '("/home/wizardlink/Documents/zettelkasten/20230123221042-ledger_cli.org" "/home/wizardlink/Documents/zettelkasten/20230123220741-glsl.org" "/home/wizardlink/Documents/zettelkasten/20230123214951-veloren.org" "/home/wizardlink/Documents/zettelkasten/20230123214806-learning_investing.org" "/home/wizardlink/Documents/zettelkasten/20230123214158-novelai_amazing_ai_art_and_story_generation.org" "/home/wizardlink/Documents/zettelkasten/20230123214028-librivox_free_public_domain_audio_books.org" "/home/wizardlink/Documents/zettelkasten/20230121131947-life_goals.org" "/home/wizardlink/Documents/zettelkasten/20230121131536-2023_goals.org" "/home/wizardlink/Documents/zettelkasten/20230117233020-shit_i_need_to_do_before_argentina.org" "/home/wizardlink/Documents/zettelkasten/20230115222859-what_parents_owe_me_feb_2023.org" "/home/wizardlink/Documents/zettelkasten/20230108115138-what_parents_owe_me_jan_2023.org" "/home/wizardlink/Documents/zettelkasten/20221222000213-december_2022_vacation.org" "/home/wizardlink/Documents/zettelkasten/20221202091117-december_first_half_sprint_demo.org" "/home/wizardlink/Documents/zettelkasten/20221121153159-what_parents_owe_me_nov_2022.org" "/home/wizardlink/Documents/zettelkasten/20221114202149-497151_create_the_cloud_render_backgrounds_list.org" "/home/wizardlink/Documents/zettelkasten/20220930204427-october_2022_cult_meet_up.org" "/home/wizardlink/Documents/zettelkasten/20220822172845-482471_spike_on_the_react_tooltip_library.org" "/home/wizardlink/Documents/zettelkasten/20220717231652-routine.org" "/home/wizardlink/Documents/zettelkasten/20220708123800-programming_languages.org" "/home/wizardlink/Documents/zettelkasten/20220708123359-yofukashi_no_uta.org" "/home/wizardlink/Documents/zettelkasten/20220708123338-anime.org" "/home/wizardlink/Documents/zettelkasten/20220708115729-a_day_when_a_solar_flare_erupted_to_reach_all_planets_in_it_s_reach.org" "/home/wizardlink/Documents/zettelkasten/20220708115014-dreams.org" "/home/wizardlink/Documents/zettelkasten/20220707225350-github.org" "/home/wizardlink/Documents/zettelkasten/20220707225203-bevy.org" "/home/wizardlink/Documents/zettelkasten/20220629165111-akita_neru.org" "/home/wizardlink/Documents/zettelkasten/20220622172237-68188_correct_the_errors_generated_by_the_new_eslint_configuration.org" "/home/wizardlink/Documents/zettelkasten/20220622165045-sway_issue_with_specific_input_device_id.org" "/home/wizardlink/Documents/zettelkasten/20220613100650-67251_configure_eslint_for_mooble.org" "/home/wizardlink/Documents/zettelkasten/20220612032328-supressing_microphone_noise_in_linux.org" "/home/wizardlink/Documents/zettelkasten/20220611014136-hydractify.org" "/home/wizardlink/Documents/zettelkasten/20220610225857-aug_2022_cult_meeting.org" "/home/wizardlink/Documents/zettelkasten/20220610221532-programming_tools.org" "/home/wizardlink/Documents/zettelkasten/20220610215118-elfeed.org" "/home/wizardlink/Documents/zettelkasten/20220610181141-mooble.org" "/home/wizardlink/Documents/zettelkasten/20220606213630-zipf_mistery.org" "/home/wizardlink/Documents/zettelkasten/20220604164104-electronic_mail.org" "/home/wizardlink/Documents/zettelkasten/20220525172625-babel_js.org" "/home/wizardlink/Documents/zettelkasten/20220525172558-webpack.org" "/home/wizardlink/Documents/zettelkasten/20220525172231-cli.org" "/home/wizardlink/Documents/zettelkasten/20220525165500-rust.org" "/home/wizardlink/Documents/zettelkasten/20220525165450-go.org" "/home/wizardlink/Documents/zettelkasten/20220525165343-nodejs.org" "/home/wizardlink/Documents/zettelkasten/20220525164627-monorepo.org" "/home/wizardlink/Documents/zettelkasten/20220525164415-nx_monorepo.org" "/home/wizardlink/Documents/zettelkasten/20220507054552-computer_science.org" "/home/wizardlink/Documents/zettelkasten/20220507054425-ensino_medio.org" "/home/wizardlink/Documents/zettelkasten/20220507053943-carteira_de_trabalho.org" "/home/wizardlink/Documents/zettelkasten/20220507053746-cadastro_de_pessoa_fisica.org" "/home/wizardlink/Documents/zettelkasten/20220507050817-brazil.org" "/home/wizardlink/Documents/zettelkasten/20220507045138-personal_information.org" "/home/wizardlink/Documents/zettelkasten/20220116161730-the_dragon_cult.org" "/home/wizardlink/Documents/zettelkasten/20210908222339-tecnicas_de_programacao.org" "/home/wizardlink/Documents/notes/talk_with_maxime.org" "/home/wizardlink/Documents/notes/reveal_cheatsheet.org" "/home/wizardlink/Documents/notes/open_links.org" "/home/wizardlink/Documents/notes/important.org" "/home/wizardlink/Documents/notes/elfeed.org" "/home/wizardlink/Documents/notes/cheatsheet.org" "/home/wizardlink/Documents/notes/cult/ideas.org" "/home/wizardlink/Documents/notes/cult/game_keys.org" "/home/wizardlink/Documents/notes/cult/2021/may.org" "/home/wizardlink/Documents/notes/cult/2021/july.org" "/home/wizardlink/Documents/notes/cult/2021/august/meeting_1.org" "/home/wizardlink/Documents/notes/cult/2021/december/referral.org" "/home/wizardlink/Documents/notes/cult/2021/december/plan.org" "/home/wizardlink/Documents/notes/cult/2021/december/announcement.org" "/home/wizardlink/Documents/notes/cult/2021/september/bounties.org" "/home/wizardlink/Documents/notes/cult/2022/rebrand.org" "/home/wizardlink/Documents/notes/cult/2022/february/plan.org" "/home/wizardlink/Documents/notes/cult/2022/january/plan.org" "/home/wizardlink/Documents/notes/cult/2022/march/plan.org" "/home/wizardlink/Documents/notes/finances/recurring_spendings.org" "/home/wizardlink/Documents/notes/finances/fairy.org" "/home/wizardlink/Documents/notes/finances/2021/november.org" "/home/wizardlink/Documents/notes/finances/2021/december.org" "/home/wizardlink/Documents/notes/hydractify/kanna_kobayashi/v5/plan.org" "/home/wizardlink/Documents/notes/hydractify/kanna_kobayashi/v5/akita_neru.org" "/home/wizardlink/Documents/notes/study/plan.org" "/home/wizardlink/Documents/notes/study/computer_science/grades.org" "/home/wizardlink/Documents/notes/study/computer_science/algorithms_and_programming/chapter_1.org" "/home/wizardlink/Documents/notes/study/computer_science/computing_fundamentals/chapter_2.org" "/home/wizardlink/Documents/notes/study/computer_science/computing_fundamentals/chapter_1.org" "/home/wizardlink/Documents/notes/work/2020/tasks/67251.org" "/home/wizardlink/Documents/notes/work/basis/tarefa_estagiarios.org" "/home/wizardlink/Documents/notes/work/basis/analise_infraestrutura.org" "/home/wizardlink/Documents/notes/work/basis/analise_atualizacao_infra.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-05-31.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-04-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-04-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-13.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-03-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-24.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-23.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-17.org" "/home/wizardlink/Documents/zettelkasten/daily/2023-01-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-30.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-05.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-12-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-11-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-11-11.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-10-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-08-30.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-19.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-13.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-09.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-06.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-07-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-24.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-23.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-15.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-13.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-11.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-06-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-05-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-05-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-05-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-09.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-03-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-23.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-17.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-09.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-02-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-26.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-24.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-19.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-17.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-13.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-12.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-11.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-06.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-05.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2022-01-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-29.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-23.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-17.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-16.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-15.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-13.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-09.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-06.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-12-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-30.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-29.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-26.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-24.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-19.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-16.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-12.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-11.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-10.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-09.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-05.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-11-03.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-30.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-29.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-26.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-25.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-20.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-19.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-17.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-15.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-14.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-08.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-07.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-06.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-05.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-04.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-02.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-10-01.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-30.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-29.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-28.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-27.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-24.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-23.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-22.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-21.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-19.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-18.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-16.org" "/home/wizardlink/Documents/zettelkasten/daily/2021-09-15.org"))) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + ) diff --git a/modules/emacs/doom/init.el b/.config/doom/init.el similarity index 74% rename from modules/emacs/doom/init.el rename to .config/doom/init.el index fcafad3..b4827a6 100644 --- a/modules/emacs/doom/init.el +++ b/.config/doom/init.el @@ -4,8 +4,8 @@ ;; in. Remember to run 'doom sync' after modifying it! ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's -;; documentation. There you'll find a link to Doom's Module Index where all -;; of our modules are listed, including what flags they support. +;; documentation. There you'll find a "Module Index" link where you'll find +;; a comprehensive list of Doom's modules and what flags they support. ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or ;; 'C-c c k' for non-vim users) to view its documentation. This works on @@ -15,25 +15,23 @@ ;; directory (for easy access to its source code). (doom! :input - ;;bidi ; (tfel ot) thgir etirw uoy gnipleh ;;chinese ;;japanese ;;layout ; auie,ctsrnm is the superior home row :completion company ; the ultimate code completion backend - ;;(corfu +orderless) ; complete with cap(f), cape and a flying feather! ;;helm ; the *other* search engine for love and life ;;ido ; the other *other* search engine... - ;;ivy ; a search engine for love and life - vertico ; the search engine of the future + ;;(ivy +fuzzy) ; a search engine for love and life + (vertico +icons) ; the search engine of the future :ui ;;deft ; notational velocity for Emacs doom ; what makes DOOM look the way it does doom-dashboard ; a nifty splash screen for Emacs ;;doom-quit ; DOOM quit-message prompts when you quit Emacs - ;;(emoji +unicode) ; 🙂 + (emoji +unicode) ; 🙂 hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW ;;hydra indent-guides ; highlighted indent columns @@ -43,11 +41,13 @@ nav-flash ; blink cursor line after big motions ;;neotree ; a project drawer, like NERDTree for vim ophints ; highlight the region an operation acts on - (popup +defaults) ; tame sudden yet inevitable temporary windows + (popup ; tame sudden yet inevitable temporary windows + +all + +defaults) ;;tabs ; a tab bar for Emacs - treemacs ; a project drawer, like neotree but cooler + (treemacs +lsp) ; a project drawer, like neotree but cooler unicode ; extended unicode support for various languages - (vc-gutter +pretty) ; vcs diff in the fringe + vc-gutter ; vcs diff in the fringe vi-tilde-fringe ; fringe tildes to mark beyond EOB ;;window-select ; visually switch windows workspaces ; tab emulation, persistence & separate workspaces @@ -68,8 +68,8 @@ ;;word-wrap ; soft wrapping with language-aware indent :emacs - dired ; making dired pretty [functional] - electric ; smarter, keyword-based electric-indent + (dired +ranger) ; making dired pretty [functional] + (electric +icons) ; smarter, keyword-based electric-indent ;;ibuffer ; interactive buffer management undo ; persistent, smarter undo for your inevitable mistakes vc ; version-control and Emacs, sitting in a tree @@ -77,47 +77,47 @@ :term ;;eshell ; the elisp shell that works everywhere ;;shell ; simple shell REPL for Emacs - term ; basic terminal emulator for Emacs - ;;vterm ; the best terminal emulation in Emacs + ;;term ; basic terminal emulator for Emacs + vterm ; the best terminal emulation in Emacs :checkers syntax ; tasing you for every semicolon you forget - (spell ; tasing you for misspelling mispelling - +aspell - +flyspell) + (spell + +flyspell) ; FIXME tasing you for misspelling mispelling ;;grammar ; tasing grammar mistake every you make :tools ;;ansible ;;biblio ; Writes a PhD for you (citation needed) - ;;collab ; buffers with friends - ;;debugger ; FIXME stepping through code, to help you add bugs + (debugger +lsp) ; FIXME stepping through code, to help you add bugs ;;direnv ;;docker - editorconfig ; let someone else argue about tabs vs spaces + editorconfig ; let someone else argue about tabs vs spaces ;;ein ; tame Jupyter notebooks with emacs (eval +overlay) ; run code, run (also, repls) + ;;gist ; interacting with github gists lookup ; navigate your code and its documentation - ;lsp ; M-x vscode - ;;magit ; a git porcelain for Emacs - ;;make ; run make tasks from Emacs + lsp + magit ; a git porcelain for Emacs + make ; run make tasks from Emacs ;;pass ; password manager for nerds ;;pdf ; pdf enhancements ;;prodigy ; FIXME managing external services & code builders - ;;taskrunner ; taskrunner for all your projects + rgb ; creating color strings + taskrunner ; taskrunner for all your projects ;;terraform ; infrastructure as code ;;tmux ; an API for interacting with tmux tree-sitter ; syntax and parsing, sitting in a tree... ;;upload ; map local to remote projects via ssh/ftp :os - (:if (featurep :system 'macos) macos) ; improve compatibility with macOS + (:if IS-MAC macos) ; improve compatibility with macOS ;;tty ; improve the terminal Emacs experience :lang ;;agda ; types of types of types of types... ;;beancount ; mind the GAAP - ;;(cc +lsp) ; C > C++ == 1 + (cc +lsp) ; C/C++/Obj-C madness ;;clojure ; java with a lisp ;;common-lisp ; if you've seen one lisp, you've seen them all ;;coq ; proofs-as-programs @@ -126,43 +126,44 @@ ;;data ; config/data formats ;;(dart +flutter) ; paint ui and not much else ;;dhall - ;;elixir ; erlang done right + (elixir +lsp) ; erlang done right ;;elm ; care for a cup of TEA? emacs-lisp ; drown in parentheses ;;erlang ; an elegant language for a more civilized age ;;ess ; emacs speaks statistics ;;factor - ;;faust ; dsp, but you get to keep your soul ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER) + ;;faust ; dsp, but you get to keep your soul ;;fsharp ; ML stands for Microsoft's Language ;;fstar ; (dependent) types and (monadic) effects and Z3 - ;;gdscript ; the language you waited for + (gdscript +lsp) ; the language you waited for ;;(go +lsp) ; the hipster dialect ;;(graphql +lsp) ; Give queries a REST - ;;(haskell +lsp) ; a language that's lazier than I am + ;;(haskell +dante) ; a language that's lazier than I am ;;hy ; readability of scheme w/ speed of python ;;idris ; a language you can depend on - ;;json ; At least it ain't XML - ;;(java +lsp) ; the poster child for carpal tunnel syndrome - ;;javascript ; all(hope(abandon(ye(who(enter(here)))))) + (json +lsp) ; At least it ain't XML + ;;(java +lsp) ; the poster child for carpal tunnel syndrome + (javascript +lsp) ; all(hope(abandon(ye(who(enter(here)))))) ;;julia ; a better, faster MATLAB ;;kotlin ; a better, slicker Java(Script) (latex ; writing papers in Emacs has never been so fun - +lsp - +cdlatex) - ;;lean ; for folks with too much to prove - ledger ; be audit you can be - ;;lua ; one-based indices? one-based indices + +lsp + +cdlatex) ; math snippets + ;;lean + ;;factor + ledger ; an accounting system in Emacs + ;;(lua +lsp) ; one-based indices? one-based indices markdown ; writing docs for people to ignore - ;;nim ; python + lisp at the speed of c + nim ; python + lisp at the speed of c ;;nix ; I hereby declare "nix geht mehr!" ;;ocaml ; an objective camel (org ; organize your plain life in plain text - +gnuplot - +pandoc - +pretty - +roam2) - ;;php ; perl's insecure younger brother + +pretty ; adds flair to org mode + +gnuplot ; graph magic + +pandoc + +roam2) ; Enable org-roam v2 integration + ;;(php +lsp) ; perl's insecure younger brother ;;plantuml ; diagrams for confusing people more ;;purescript ; javascript, but functional ;;python ; beautiful is better than ugly @@ -172,20 +173,20 @@ ;;rest ; Emacs as a REST client ;;rst ; ReST in peace ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} - ;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() + (rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() ;;scala ; java, but good - ;;(scheme +guile) ; a fully conniving family of lisps + ;;scheme ; a fully conniving family of lisps sh ; she sells {ba,z,fi}sh shells on the C xor ;;sml ;;solidity ; do you need a blockchain? No. ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. - ;;web ; the tubes - ;;yaml ; JSON, but readable + (web +lsp) ; the tubes + (yaml +lsp) ; JSON, but readable ;;zig ; C, but simpler :email - ;;(mu4e +org +gmail) + ;;(mu4e +gmail) ;;notmuch ;;(wanderlust +gmail) diff --git a/modules/emacs/doom/packages.el b/.config/doom/packages.el similarity index 57% rename from modules/emacs/doom/packages.el rename to .config/doom/packages.el index f7bb06c..6c251be 100644 --- a/modules/emacs/doom/packages.el +++ b/.config/doom/packages.el @@ -7,51 +7,64 @@ ;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror: -;; (package! some-package) +;(package! some-package) ;; To install a package directly from a remote git repo, you must specify a ;; `:recipe'. You'll find documentation on what `:recipe' accepts here: -;; https://github.com/radian-software/straight.el#the-recipe-format -;; (package! another-package -;; :recipe (:host github :repo "username/repo")) +;; https://github.com/raxod502/straight.el#the-recipe-format +;(package! another-package +; :recipe (:host github :repo "username/repo")) ;; If the package you are trying to install does not contain a PACKAGENAME.el ;; file, or is located in a subdirectory of the repo, you'll need to specify ;; `:files' in the `:recipe': -;; (package! this-package -;; :recipe (:host github :repo "username/repo" -;; :files ("some-file.el" "src/lisp/*.el"))) +;(package! this-package +; :recipe (:host github :repo "username/repo" +; :files ("some-file.el" "src/lisp/*.el"))) ;; If you'd like to disable a package included with Doom, you can do so here ;; with the `:disable' property: -;; (package! builtin-package :disable t) +;(package! builtin-package :disable t) ;; You can override the recipe of a built in package without having to specify ;; all the properties for `:recipe'. These will inherit the rest of its recipe ;; from Doom or MELPA/ELPA/Emacsmirror: -;; (package! builtin-package :recipe (:nonrecursive t)) -;; (package! builtin-package-2 :recipe (:repo "myfork/package")) +;(package! builtin-package :recipe (:nonrecursive t)) +;(package! builtin-package-2 :recipe (:repo "myfork/package")) ;; Specify a `:branch' to install a package from a particular branch or tag. ;; This is required for some packages whose default branch isn't 'master' (which -;; our package manager can't deal with; see radian-software/straight.el#279) -;; (package! builtin-package :recipe (:branch "develop")) +;; our package manager can't deal with; see raxod502/straight.el#279) +;(package! builtin-package :recipe (:branch "develop")) ;; Use `:pin' to specify a particular commit to install. -;; (package! builtin-package :pin "1a2b3c4d5e") - +;(package! builtin-package :pin "1a2b3c4d5e") ;; Doom's packages are pinned to a specific commit and updated from release to ;; release. The `unpin!' macro allows you to unpin single packages... -;; (unpin! pinned-package) +;(unpin! pinned-package) ;; ...or multiple packages -;; (unpin! pinned-package another-pinned-package) +;(unpin! pinned-package another-pinned-package) ;; ...Or *all* packages (NOT RECOMMENDED; will likely break things) -;; (unpin! t) +;(unpin! t) -;; Add org-roam-ui so I can see the node graph of my notes. +;; Install and enable Discord RPC +(package! elcord) + +;; Install and enable Org Roam +(package! org-roam + :recipe (:host github :repo "org-roam/org-roam" + :files (:defaults "extensions/*"))) + +;; Install and enable powershell.el +(package! powershell) + +;; Install and enable graphviz-dot-mode +(package! graphviz-dot-mode) + +;; Install org-roam (unpin! org-roam) (package! org-roam-ui) -;; Add catppuccin theme. -(package! catppuccin-theme) +;; Install org-reveal +(package! org-reveal) diff --git a/.config/doom/snippets/org-mode/cult_bounty_message b/.config/doom/snippets/org-mode/cult_bounty_message new file mode 100644 index 0000000..a64606f --- /dev/null +++ b/.config/doom/snippets/org-mode/cult_bounty_message @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name: cult_bounty_message +# key: cultBountyMessage +# -- +« **$1** » + +╫ +║ **Requirements** +║ $2 +║ +║ **\$3 Reward \$4** +║ <@574657462603612160>; +╫ \ No newline at end of file diff --git a/.config/doom/snippets/org-mode/cult_event b/.config/doom/snippets/org-mode/cult_event new file mode 100644 index 0000000..26ccd2e --- /dev/null +++ b/.config/doom/snippets/org-mode/cult_event @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: cult_event +# key: cultEvent +# -- +* TODO $1 :cult_event: + SCHEDULED: <`(current-time-string)`> + - HOST: $2 + - HOW LONG: $3 + - LINK: $4 + + $5 \ No newline at end of file diff --git a/modules/emacs/doom/snippets/org-mode/daily.org b/.config/doom/snippets/org-mode/daily similarity index 100% rename from modules/emacs/doom/snippets/org-mode/daily.org rename to .config/doom/snippets/org-mode/daily diff --git a/modules/emacs/doom/templates/roam/daily.org b/.config/doom/templates/roam/daily.org similarity index 99% rename from modules/emacs/doom/templates/roam/daily.org rename to .config/doom/templates/roam/daily.org index ae34e9a..bf02164 100644 --- a/modules/emacs/doom/templates/roam/daily.org +++ b/.config/doom/templates/roam/daily.org @@ -23,3 +23,4 @@ ** Amazing things that happend ** What did you learn today? + diff --git a/.config/fish/conf.d/aliases.fish b/.config/fish/conf.d/aliases.fish new file mode 100644 index 0000000..87f7207 --- /dev/null +++ b/.config/fish/conf.d/aliases.fish @@ -0,0 +1,3 @@ +# Dev +alias e '~/.local/bin/lvim' +alias edit '~/.local/bin/lvim' diff --git a/.config/fish/conf.d/dracula.fish b/.config/fish/conf.d/dracula.fish new file mode 100644 index 0000000..90a5132 --- /dev/null +++ b/.config/fish/conf.d/dracula.fish @@ -0,0 +1,50 @@ +# Dracula Color Palette +set -l foreground f8f8f2 +set -l selection 44475a +set -l comment 6272a4 +set -l red ff5555 +set -l orange ffb86c +set -l yellow f1fa8c +set -l green 50fa7b +set -l purple bd93f9 +set -l cyan 8be9fd +set -l pink ff79c6 + +# Syntax Highlighting Colors +set -gx fish_color_normal $foreground +set -gx fish_color_command $cyan +set -gx fish_color_keyword $pink +set -gx fish_color_quote $yellow +set -gx fish_color_redirection $foreground +set -gx fish_color_end $orange +set -gx fish_color_error $red +set -gx fish_color_param $purple +set -gx fish_color_comment $comment +set -gx fish_color_selection --background=$selection +set -gx fish_color_search_match --background=$selection +set -gx fish_color_operator $green +set -gx fish_color_escape $pink +set -gx fish_color_autosuggestion $comment +set -gx fish_color_cancel $red --reverse +set -gx fish_color_option $orange + +# Default Prompt Colors +set -gx fish_color_cwd $green +set -gx fish_color_host $purple +set -gx fish_color_host_remote $purple +set -gx fish_color_user $cyan + +# Completion Pager Colors +set -gx fish_pager_color_progress $comment +set -gx fish_pager_color_background +set -gx fish_pager_color_prefix $cyan +set -gx fish_pager_color_completion $foreground +set -gx fish_pager_color_description $comment +set -gx fish_pager_color_selected_background --background=$selection +set -gx fish_pager_color_selected_prefix $cyan +set -gx fish_pager_color_selected_completion $foreground +set -gx fish_pager_color_selected_description $comment +set -gx fish_pager_color_secondary_background +set -gx fish_pager_color_secondary_prefix $cyan +set -gx fish_pager_color_secondary_completion $foreground +set -gx fish_pager_color_secondary_description $comment diff --git a/.config/fish/conf.d/variables.fish b/.config/fish/conf.d/variables.fish new file mode 100644 index 0000000..2bff6b2 --- /dev/null +++ b/.config/fish/conf.d/variables.fish @@ -0,0 +1,17 @@ +fish_add_path /home/wizardlink/.local/share/scripts \ + /home/wizardlink/.config/emacs/bin \ + /home/wizardlink/.spicetify \ + /home/wizardlink/.nimble/bin \ + /home/wizardlink/.cargo/bin \ + /home/wizardlink/.local/bin \ + /lib/flatpak/exports/bin \ + /home/wizardlink/.local/share/scripts/burrito + +# Set the default editor +set -x EDITOR lvim + +# Configure FZF +set -x FZF_DEFAULT_OPTS '--color=fg:#f8f8f2,hl:#bd93f9 --color=fg+:#f8f8f2,bg+:#44475a,hl+:#bd93f9 --color=info:#ffb86c,prompt:#50fa7b,pointer:#ff79c6 --color=marker:#ff79c6,spinner:#ffb86c,header:#6272a4 --layout=reverse --height 50%' + +# Remove welcome message +set -x fish_greeting '' diff --git a/.config/fish/config.fish b/.config/fish/config.fish new file mode 100644 index 0000000..fa33ba6 --- /dev/null +++ b/.config/fish/config.fish @@ -0,0 +1,7 @@ +## Set theme +##if status is-interactive + ##theme_gruvbox dark hard +##end + +## Set vim mode +set -g fish_key_bindings fish_vi_key_bindings diff --git a/.config/fish/fish_variables b/.config/fish/fish_variables new file mode 100644 index 0000000..7f68c24 --- /dev/null +++ b/.config/fish/fish_variables @@ -0,0 +1,32 @@ +# This file contains fish universal variable definitions. +# VERSION: 3.0 +SETUVAR __fish_initialized:3400 +SETUVAR fish_color_autosuggestion:555\x1ebrblack +SETUVAR fish_color_cancel:\x2dr +SETUVAR fish_color_command:blue +SETUVAR fish_color_comment:red +SETUVAR fish_color_cwd:green +SETUVAR fish_color_cwd_root:red +SETUVAR fish_color_end:green +SETUVAR fish_color_error:brred +SETUVAR fish_color_escape:brcyan +SETUVAR fish_color_history_current:\x2d\x2dbold +SETUVAR fish_color_host:normal +SETUVAR fish_color_host_remote:yellow +SETUVAR fish_color_normal:normal +SETUVAR fish_color_operator:brcyan +SETUVAR fish_color_param:cyan +SETUVAR fish_color_quote:yellow +SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold +SETUVAR fish_color_search_match:\x2d\x2dbackground\x3d111 +SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_status:red +SETUVAR fish_color_user:brgreen +SETUVAR fish_color_valid_path:\x2d\x2dunderline +SETUVAR --export fish_key_bindings:fish_default_key_bindings +SETUVAR fish_pager_color_completion:normal +SETUVAR fish_pager_color_description:B3A06D\x1eyellow\x1e\x2di +SETUVAR fish_pager_color_prefix:cyan\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan +SETUVAR fish_pager_color_selected_background:\x2dr +SETUVAR fish_user_paths:/home/wizardlink/\x2elocal/share/scripts/burrito\x1e/home/wizardlink/\x2econfig/emacs/bin\x1e/home/wizardlink/\x2espicetify\x1e/home/wizardlink/\x2elocal/share/scripts\x1e/home/wizardlink/\x2eemacs\x2ed/bin\x1e/home/wizardlink/\x2enimble/bin\x1e/home/wizardlink/\x2ecargo/bin\x1e/home/wizardlink/\x2elocal/bin diff --git a/.config/fish/functions/fish_prompt.fish b/.config/fish/functions/fish_prompt.fish new file mode 100644 index 0000000..fcea75e --- /dev/null +++ b/.config/fish/functions/fish_prompt.fish @@ -0,0 +1,4 @@ +function fish_prompt + set_color 7400FF + echo '%' (set_color normal) +end diff --git a/.config/fish/functions/fzf_edit.fish b/.config/fish/functions/fzf_edit.fish new file mode 100644 index 0000000..6e5f8aa --- /dev/null +++ b/.config/fish/functions/fzf_edit.fish @@ -0,0 +1,3 @@ +function fzf_edit + fzf --multi --bind 'enter:become(edit {+})' +end diff --git a/.config/fish/functions/n.fish b/.config/fish/functions/n.fish new file mode 100644 index 0000000..7eb3b61 --- /dev/null +++ b/.config/fish/functions/n.fish @@ -0,0 +1,32 @@ +function n --wraps nnn --description 'support nnn quit and change directory' + # Block nesting of nnn in subshells + if test -n "$NNNLVL" + if [ (expr $NNNLVL + 0) -ge 1 ] + echo "nnn is already running" + return + end + end + + # The behaviour is set to cd on quit (nnn checks if NNN_TMPFILE is set) + # If NNN_TMPFILE is set to a custom path, it must be exported for nnn to + # see. To cd on quit only on ^G, remove the "-x" from both lines below, + # without changing the paths. + if test -n "$XDG_CONFIG_HOME" + set -x NNN_TMPFILE "$XDG_CONFIG_HOME/nnn/.lastd" + else + set -x NNN_TMPFILE "$HOME/.config/nnn/.lastd" + end + + # Unmask ^Q (, ^V etc.) (if required, see `stty -a`) to Quit nnn + # stty start undef + # stty stop undef + # stty lwrap undef + # stty lnext undef + + nnn $argv + + if test -e $NNN_TMPFILE + source $NNN_TMPFILE + rm $NNN_TMPFILE + end +end diff --git a/.config/fish/functions/theme_gruvbox.fish b/.config/fish/functions/theme_gruvbox.fish new file mode 100644 index 0000000..2102411 --- /dev/null +++ b/.config/fish/functions/theme_gruvbox.fish @@ -0,0 +1,141 @@ +#!/usr/bin/fish +function theme_gruvbox --description 'Apply gruvbox theme' + set -l mode 'light' + if test (count $argv) -gt 0 + set mode $argv[1] + end + + set -g contrast 'medium' + if test (count $argv) -gt 1 + set contrast $argv[2] + end + + switch $contrast + case 'soft' + case 'medium' + case 'hard' + case '*' + set_color $fish_color_error + echo 'Unknown contrast $contrast, choose soft, medium or hard' + set_color $fish_color_normal + return 1 + end + + switch $mode + case 'light' + __theme_gruvbox_base + __theme_gruvbox_light + case 'dark' + __theme_gruvbox_base + __theme_gruvbox_dark + case '*' + set_color $fish_color_error + echo 'Unknown mode $mode, choose light or dark' + set_color $fish_color_normal + return 1 + end + __theme_gruvbox_palette + return 0 +end + +function __theme_gruvbox_base + __printf_color 1 'cc/24/1d' + __printf_color 2 '98/97/1a' + __printf_color 3 'd7/99/21' + __printf_color 4 '45/85/88' + __printf_color 5 'b1/62/86' + __printf_color 6 '68/9d/6a' +end + +function __theme_gruvbox_light + set -l bg 'fb/f1/c7' + switch $contrast + case "soft" + set bg 'f2/e5/bc' + case "hard" + set bg 'f9/f5/d7' + end + command printf "\033]11;rgb:$bg\007" + + set -l fg '3c/38/36' + command printf "\033]10;rgb:$fg\007" + + __printf_color 0 $bg + __printf_color 7 '7c/6f/64' + __printf_color 8 '92/83/74' + __printf_color 9 '9d/00/06' + __printf_color 10 '79/74/0e' + __printf_color 11 'b5/76/14' + __printf_color 12 '07/66/78' + __printf_color 13 '8f/3f/71' + __printf_color 14 '42/7b/58' + __printf_color 15 $fg +end + +function __theme_gruvbox_dark + set -l bg '28/28/28' + switch $contrast + case "soft" + set bg '32/30/2f' + case "hard" + set bg '1d/20/21' + end + command printf "\033]11;rgb:$bg\007" + + set -l fg 'eb/db/b2' + command printf "\033]10;rgb:$fg\007" + + __printf_color 0 $bg + __printf_color 7 'a8/99/84' + __printf_color 8 '92/83/74' + __printf_color 9 'fb/59/34' + __printf_color 10 'b8/bb/26' + __printf_color 11 'fa/bd/2f' + __printf_color 12 '83/a5/98' + __printf_color 13 'd3/86/9b' + __printf_color 14 '8e/c0/7c' + __printf_color 15 $fg +end + +function __theme_gruvbox_palette + __printf_color 236 '32/30/2f' + __printf_color 234 '1d/20/21' + + __printf_color 235 '28/28/28' + __printf_color 237 '3c/38/36' + __printf_color 239 '50/49/45' + __printf_color 241 '66/5c/54' + __printf_color 243 '7c/6f/64' + + __printf_color 244 '92/83/74' + __printf_color 245 '92/83/74' + + __printf_color 228 'f2/e5/bc' + __printf_color 230 'f9/f5/d7' + + __printf_color 229 'fb/f1/c7' + __printf_color 223 'eb/db/b2' + __printf_color 250 'd5/c4/a1' + __printf_color 248 'bd/ae/93' + __printf_color 246 'a8/99/84' + + __printf_color 167 'fb/49/34' + __printf_color 142 'b8/bb/26' + __printf_color 214 'fa/bd/2f' + __printf_color 109 '83/a5/98' + __printf_color 175 'd3/86/9b' + __printf_color 108 '8e/c0/7c' + __printf_color 208 'fe/80/19' + + __printf_color 88 '9d/00/06' + __printf_color 100 '79/74/0e' + __printf_color 136 'b5/76/14' + __printf_color 24 '07/66/78' + __printf_color 96 '8f/3f/71' + __printf_color 66 '42/7b/58' + __printf_color 130 'af/3a/03' +end + +function __printf_color + command printf "\033]4;$argv[1];rgb:$argv[2]\007" +end diff --git a/shared/home-manager/dotfiles/gamemode.ini b/.config/gamemode.ini similarity index 98% rename from shared/home-manager/dotfiles/gamemode.ini rename to .config/gamemode.ini index de3d6c0..30a13ab 100644 --- a/shared/home-manager/dotfiles/gamemode.ini +++ b/.config/gamemode.ini @@ -14,13 +14,13 @@ softrealtime=off ; GameMode can renice game processes. You can put any value between 0 and 20 here, the value ; will be negated and applied as a nice value (0 means no change). Defaults to 0. -renice=0 +renice=5 ; By default, GameMode adjusts the iopriority of clients to BE/0, you can put any value ; between 0 and 7 here (with 0 being highest priority), or one of the special values ; "off" (to disable) or "reset" (to restore Linux default behavior based on CPU priority), ; currently, only the best-effort class is supported thus you cannot set it here -ioprio=reset +ioprio=2 ; Sets whether gamemode will inhibit the screensaver when active ; Defaults to 1 @@ -45,14 +45,14 @@ inhibit_screensaver=0 ;apply_gpu_optimisations=accept-responsibility ; The DRM device number on the system (usually 0), ie. the number in /sys/class/drm/card0/ -;gpu_device=1 +;gpu_device=0 ; AMD specific settings ; Requires a relatively up to date AMDGPU kernel module ; See: https://dri.freedesktop.org/docs/drm/gpu/amdgpu.html#gpu-power-thermal-controls-and-monitoring ; It is also highly recommended you use lm-sensors (or other available tools) to verify card temperatures ; This corresponds to power_dpm_force_performance_level, "manual" is not supported for now -;amd_performance_level=auto +amd_performance_level=auto [supervisor] ; This section controls the new gamemode functions gamemode_request_start_for and gamemode_request_end_for diff --git a/.config/lvim/config.lua b/.config/lvim/config.lua new file mode 100644 index 0000000..fe74a5e --- /dev/null +++ b/.config/lvim/config.lua @@ -0,0 +1,255 @@ +--[[ +lvim is the global options object + +Linters should be +filled in as strings with either +a global executable or a path to +an executable +]] +-- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT + +-- general +lvim.log.level = "warn" +lvim.format_on_save.enabled = true +lvim.colorscheme = "dracula" +lvim.transparent_window = true +-- to disable icons and use a minimalist setup, uncomment the following +-- lvim.use_icons = false + +-- keymappings [view all the defaults by pressing Lk] +lvim.leader = "space" +-- add your own keymapping +lvim.keys.normal_mode[""] = ":w" +lvim.keys.normal_mode[""] = ":BufferLineCycleNext" +lvim.keys.normal_mode[""] = ":BufferLineCyclePrev" +-- unmap a default keymapping +-- vim.keymap.del("n", "") +-- override a default keymapping +-- lvim.keys.normal_mode[""] = ":q" -- or vim.keymap.set("n", "", ":q" ) + +-- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode. +-- we use protected-mode (pcall) just in case the plugin wasn't loaded yet. +-- local _, actions = pcall(require, "telescope.actions") +-- lvim.builtin.telescope.defaults.mappings = { +-- -- for input mode +-- i = { +-- [""] = actions.move_selection_next, +-- [""] = actions.move_selection_previous, +-- [""] = actions.cycle_history_next, +-- [""] = actions.cycle_history_prev, +-- }, +-- -- for normal mode +-- n = { +-- [""] = actions.move_selection_next, +-- [""] = actions.move_selection_previous, +-- }, +-- } + +-- Change theme settings +-- lvim.builtin.theme.options.dim_inactive = true +-- lvim.builtin.theme.options.style = "storm" + +-- Use which-key to add extra bindings with the leader-key prefix +-- lvim.builtin.which_key.mappings["P"] = { "Telescope projects", "Projects" } +-- lvim.builtin.which_key.mappings["t"] = { +-- name = "+Trouble", +-- r = { "Trouble lsp_references", "References" }, +-- f = { "Trouble lsp_definitions", "Definitions" }, +-- d = { "Trouble document_diagnostics", "Diagnostics" }, +-- q = { "Trouble quickfix", "QuickFix" }, +-- l = { "Trouble loclist", "LocationList" }, +-- w = { "Trouble workspace_diagnostics", "Workspace Diagnostics" }, +-- } + +-- VIM general settings +vim.opt.relativenumber = true +vim.opt.title = false + +-- TODO: User Config for predefined plugins +-- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile +lvim.builtin.alpha.active = true +lvim.builtin.alpha.mode = "dashboard" +lvim.builtin.terminal.active = true +lvim.builtin.nvimtree.setup.view.side = "left" +lvim.builtin.nvimtree.setup.renderer.icons.show.git = false + +-- if you don't want all the parsers change this to a table of the ones you want +lvim.builtin.treesitter.ensure_installed = { + "bash", + "c", + "javascript", + "json", + "lua", + "python", + "typescript", + "tsx", + "css", + "rust", + "java", + "yaml", + "gdscript" +} + +lvim.builtin.treesitter.ignore_install = { "haskell" } +lvim.builtin.treesitter.highlight.enable = true + +-- generic LSP settings + +-- -- make sure server will always be installed even if the server is in skipped_servers list +-- lvim.lsp.installer.setup.ensure_installed = { +-- "sumneko_lua", +-- "jsonls", +-- } +-- -- change UI setting of `LspInstallInfo` +-- -- see +-- lvim.lsp.installer.setup.ui.check_outdated_servers_on_open = false +-- lvim.lsp.installer.setup.ui.border = "rounded" +-- lvim.lsp.installer.setup.ui.keymaps = { +-- uninstall_server = "d", +-- toggle_server_expand = "o", +-- } + +-- ---@usage disable automatic installation of servers +-- lvim.lsp.installer.setup.automatic_installation = false + +-- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!! +-- ---see the full default list `:lua print(vim.inspect(lvim.lsp.automatic_configuration.skipped_servers))` +-- vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" }) +-- local opts = {} -- check the lspconfig documentation for a list of all possible options +-- require("lvim.lsp.manager").setup("pyright", opts) + +-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!! +-- ---`:LvimInfo` lists which server(s) are skipped for the current filetype +-- lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server) +-- return server ~= "emmet_ls" +-- end, lvim.lsp.automatic_configuration.skipped_servers) + +-- -- you can set a custom on_attach function that will be used for all the language servers +-- -- See +-- lvim.lsp.on_attach_callback = function(client, bufnr) +-- local function buf_set_option(...) +-- vim.api.nvim_buf_set_option(bufnr, ...) +-- end +-- --Enable completion triggered by +-- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc") +-- end + +-- -- set a formatter, this will override the language server formatting capabilities (if it exists) +-- local formatters = require "lvim.lsp.null-ls.formatters" +-- formatters.setup { +-- { command = "black", filetypes = { "python" } }, +-- { command = "isort", filetypes = { "python" } }, +-- { +-- -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "prettier", +-- ---@usage arguments to pass to the formatter +-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` +-- extra_args = { "--print-with", "100" }, +-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. +-- filetypes = { "typescript", "typescriptreact" }, +-- }, +-- } + +-- -- set additional linters +-- local linters = require "lvim.lsp.null-ls.linters" +-- linters.setup { +-- { command = "flake8", filetypes = { "python" } }, +-- { +-- -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "shellcheck", +-- ---@usage arguments to pass to the formatter +-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` +-- extra_args = { "--severity", "warning" }, +-- }, +-- { +-- command = "codespell", +-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. +-- filetypes = { "javascript", "python" }, +-- }, +-- } + +local command_resolver = require("null-ls.helpers.command_resolver") +require("null-ls").register({ + sources = { + -- Configure ESLint to properly use Yarn 2+ + require("null-ls").builtins.diagnostics.eslint.with({ + dynamic_command = command_resolver.from_yarn_pnp(), + conditions = function(utils) + return utils.root_has_file({ ".pnp.cjs" }) + end + }), + }, +}) + +-- +-- Configure LSP +-- + +require("lvim.lsp.manager").setup("gdscript", { + on_attach = require("lvim.lsp.manager").on_attach, + flags = { + debounce_text_changes = 150 + } +}) + +-- +-- Configure debuggers +-- + +local dap = require("dap") + +dap.adapters.codelldb = { + type = "server", + port = "${port}", + executable = { + command = "/home/wizardlink/.local/share/codelldb/extension/adapter/codelldb", + args = {"--port", "${port}"}, + } +} + +dap.configurations.rust = { + { + name = "Launch file", + type = "codelldb", + request = "launch", + program = function() + return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") + end, + cwd = "${workspaceFolder}", + stopOnEntry = false, + }, + -- { + -- name = "Attach to gdbserver :1234", + -- type = "codelldb", + -- request = "launch", + -- MIMode = "gdb", + -- miDebuggerServerAddress = "localhost:1234", + -- miDebuggerPath = "/home/wizardlink/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/rust-gdb", + -- cwd = "${workspaceFolder}", + -- program = function() + -- return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") + -- end, + -- }, +} + +-- Additional Plugins +lvim.plugins = { + { "dracula/vim" }, + { "gpanders/editorconfig.nvim" }, + { "alaviss/nim.nvim" }, + { "morhetz/gruvbox" } +} + +-- Autocommands (https://neovim.io/doc/user/autocmd.html) +-- vim.api.nvim_create_autocmd("BufEnter", { +-- pattern = { "*.json", "*.jsonc" }, +-- -- enable wrap mode for json files only +-- command = "setlocal wrap", +-- }) +-- vim.api.nvim_create_autocmd("FileType", { +-- pattern = "zsh", +-- callback = function() +-- -- let treesitter use bash highlight for zsh files as well +-- require("nvim-treesitter.highlight").attach(0, "bash") +-- end, +-- }) diff --git a/shared/home-manager/dotfiles/mako/config b/.config/mako/config similarity index 58% rename from shared/home-manager/dotfiles/mako/config rename to .config/mako/config index 4e59b13..0567279 100644 --- a/shared/home-manager/dotfiles/mako/config +++ b/.config/mako/config @@ -4,7 +4,7 @@ border-color=#282a36 border-radius=20 border-size=2 default-timeout=10000 -format=%s\n%b +format=%s\n%b group-by=summary height=125 icon-location=right @@ -17,7 +17,7 @@ text-color=#44475a width=300 [grouped] -format=%s\n%b +format=%s\n%b [mode=do-not-disturb] invisible=1 diff --git a/.config/pipewire/pipewire.conf.d/99-input-denoising.conf b/.config/pipewire/pipewire.conf.d/99-input-denoising.conf new file mode 100644 index 0000000..3bff588 --- /dev/null +++ b/.config/pipewire/pipewire.conf.d/99-input-denoising.conf @@ -0,0 +1,33 @@ +context.modules = [ +{ name = libpipewire-module-filter-chain + args = { + node.description = "Noise Canceling source" + media.name = "Noise Canceling source" + filter.graph = { + nodes = [ + { + type = ladspa + name = rnnoise + plugin = /home/wizardlink/.local/share/pipewire/librnnoise_ladspa.so + label = noise_suppressor_mono + control = { + "VAD Threshold (%)" 75.0 + "VAD Grace Period (ms)" 300 + "Retroactive VAD Grace (ms)" 0 + } + } + ] + } + capture.props = { + node.name = "capture.rnnoise_source" + node.passive = true + audio.rate = 48000 + } + playback.props = { + node.name = "rnnoise_source" + media.class = Audio/Source + audio.rate = 48000 + } + } +} +] diff --git a/.config/qt5ct/colors/Dracula.conf b/.config/qt5ct/colors/Dracula.conf new file mode 100644 index 0000000..93b37d5 --- /dev/null +++ b/.config/qt5ct/colors/Dracula.conf @@ -0,0 +1,4 @@ +[ColorScheme] +active_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a +disabled_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a +inactive_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a diff --git a/.config/sway/config b/.config/sway/config new file mode 100644 index 0000000..9f66829 --- /dev/null +++ b/.config/sway/config @@ -0,0 +1,324 @@ +# Default config for sway +# +# Copy this to ~/.config/sway/config and edit it to your liking. +# +# Read `man 5 sway` for a complete reference. + +### Variables +# +# Logo key. Use Mod1 for Alt. +set $mod Mod4 +# Home row direction keys, like vim +set $left h +set $down j +set $up k +set $right l +# Your preferred terminal emulator +set $term wezterm +# Your preferred application launcher +# Note: pass the final command to swaymsg so that the resulting window can be opened +# on the original workspace that the command was run on. +set $menu wofi | xargs swaymsg exec -- + +### Output configuration +# +# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) +output DP-2 bg /mnt/internal/personal/wallpapers/wallhaven-7286p3.png fill +output DP-3 bg /mnt/internal/personal/wallpapers/wallhaven-rd92qj.png fill +# +# Example configuration: +# +# output HDMI-A-1 resolution 1920x1080 position 1920,0 + +output DP-2 mode 1920x1080@143.999Hz position 0,520 +output DP-3 mode 1920x1080@74.973Hz position 1920,0 + +# Portrait mode for second monitor +output DP-3 transform 90 + +# Turn on VRR +output DP-2 adaptive_sync off +output DP-3 adaptive_sync off + +# +# You can get the names of your outputs by running: swaymsg -t get_outputs + +### Idle configuration +# +# Example configuration: +# +# exec swayidle -w \ +# timeout 300 'swaylock -f -c 000000' \ +# timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \ +# before-sleep 'swaylock -f -c 000000' +# +# This will lock your screen after 300 seconds of inactivity, then turn off +# your displays after another 300 seconds, and turn your screens back on when +# resumed. It will also lock your screen before your computer goes to sleep. + +### Input configuration +# +# Example configuration: +# +# input "2:14:SynPS/2_Synaptics_TouchPad" { +# dwt enabled +# tap enabled +# natural_scroll enabled +# middle_emulation enabled +# } +# +# You can get the names of your inputs by running: swaymsg -t get_inputs +# Read `man 5 sway-input` for more information about this section. + +input "type:pointer" { + accel_profile "flat" + pointer_accel 0 +} + +input "type:keyboard" { + xkb_layout us,br + xkb_options grp:ctrls_toggle +} + +### Key bindings +# +# Basics: +# + # Start a terminal + bindsym $mod+Return exec $term + + # Kill focused window + bindsym $mod+Shift+q kill + + # Start your launcher + bindsym $mod+d exec $menu + + # Drag floating windows by holding down $mod and left mouse button. + # Resize them with right mouse button + $mod. + # Despite the name, also works for non-floating windows. + # Change normal to inverse to use left mouse button for resizing and right + # mouse button for dragging. + floating_modifier $mod normal + + # Reload the configuration file + bindsym $mod+Shift+c reload + + # Exit sway (logs you out of your Wayland session) + bindsym $mod+Shift+e exec swaymsg exit + #bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' +# +# Moving around: +# + # Move your focus around + bindsym $mod+$left focus left + bindsym $mod+$down focus down + bindsym $mod+$up focus up + bindsym $mod+$right focus right + # Or use $mod+[up|down|left|right] + bindsym $mod+Left focus left + bindsym $mod+Down focus down + bindsym $mod+Up focus up + bindsym $mod+Right focus right + + # Move the focused window with the same, but add Shift + bindsym $mod+Shift+$left move left + bindsym $mod+Shift+$down move down + bindsym $mod+Shift+$up move up + bindsym $mod+Shift+$right move right + # Ditto, with arrow 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 +# +# Workspaces: +# + # Switch to workspace + bindsym $mod+1 workspace number 1 + bindsym $mod+2 workspace number 2 + bindsym $mod+3 workspace number 3 + bindsym $mod+4 workspace number 4 + bindsym $mod+5 workspace number 5 + bindsym $mod+6 workspace number 6 + bindsym $mod+7 workspace number 7 + bindsym $mod+8 workspace number 8 + #Move focused container to workspace + bindsym $mod+Shift+1 move container to workspace number 1 + bindsym $mod+Shift+2 move container to workspace number 2 + bindsym $mod+Shift+3 move container to workspace number 3 + bindsym $mod+Shift+4 move container to workspace number 4 + bindsym $mod+Shift+5 move container to workspace number 5 + bindsym $mod+Shift+6 move container to workspace number 6 + bindsym $mod+Shift+7 move container to workspace number 7 + bindsym $mod+Shift+8 move container to workspace number 8 + # Note: workspaces can have any name you want, not just numbers. + # We just use 1-10 as the default. + + workspace 1 output DP-2 + workspace 2 output DP-3 + workspace 3 output DP-2 + workspace 4 output DP-3 + workspace 5 output DP-2 + workspace 6 output DP-3 + workspace 7 output DP-2 + workspace 8 output DP-3 + + bindsym $mod+Ctrl+$left workspace prev + bindsym $mod+Ctrl+$right workspace next + bindsym $mod+Ctrl+Shift+$left workspace prev_on_output + bindsym $mod+Ctrl+Shift+$right workspace next_on_output + + bindsym $mod+Ctrl+Space workspace back_and_forth +# +# Layout stuff: +# + # You can "split" the current object of your focus with + # $mod+b or $mod+v, for horizontal and vertical splits + # respectively. + bindsym $mod+b splith + bindsym $mod+v splitv + + # Switch the current container between different layout styles + bindsym $mod+s layout stacking + bindsym $mod+w layout tabbed + bindsym $mod+e layout toggle split + + # Make the current focus fullscreen + bindsym $mod+f fullscreen + + # Toggle the current focus between tiling and floating mode + bindsym $mod+Shift+space floating toggle + + # Swap focus between the tiling area and the floating area + bindsym $mod+space focus mode_toggle + + # Move focus to the parent container + bindsym $mod+a focus parent +# +# Scratchpad: +# + # Sway has a "scratchpad", which is a bag of holding for windows. + # You can send windows there and get them back later. + + # 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 +# +# Resizing containers: +# +mode "resize" { + # left will shrink the containers width + # right will grow the containers width + # up will shrink the containers height + # down will grow the containers height + bindsym $left resize shrink width 10px + bindsym $down resize grow height 10px + bindsym $up resize shrink height 10px + bindsym $right resize grow width 10px + + # Ditto, with arrow keys + bindsym Left resize shrink width 10px + bindsym Down resize grow height 10px + bindsym Up resize shrink height 10px + bindsym Right resize grow width 10px + + # Return to default mode + bindsym Return mode "default" + bindsym Escape mode "default" +} +bindsym $mod+r mode "resize" + +# +# Screenshots: +# +bindsym Print exec grimshot save area "/mnt/internal/personal/screenshots/$(date '+%Y-%m-%d_%H-%M-%S').png" +bindsym Shift+Print exec grimshot save output "/mnt/internal/personal/screenshots/$(date '+%Y-%m-%d_%H-%M-%S').png" +bindsym Ctrl+Print exec grimshot save active "/mnt/internal/personal/screenshots/$(date '+%Y-%m-%d_%H-%M-%S').png" +bindsym Ctrl+Alt+Print exec grimshot copy area + +# bindsym Print exec flameshot gui -c +# bindsym Shift+Print exec flameshot screen -c +# bindsym Ctrl+Print exec flameshot full -c + +# +# Custom: +# +bindsym Ctrl+Alt+Return exec ~/.local/bin/emacs + +### Looks +# +# Status Bar: +# +# Read `man 5 sway-bar` for more information about this section. +#bar { +# output DP-2 + +# position top +# height 18 +# font FantasqueSansMono NF + +# strip_workspace_name yes +# strip_workspace_numbers yes +# workspace_min_width 4 + +# # When the status_command prints a new line to stdout, swaybar updates. +# # The default just shows the current date and time. +# #status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done + +# colors { +# statusline #000000 +# background #ffffff + +# focused_workspace #ffffff #000000 #ffffff +# active_workspace #ffffff #000000 #ffffff +# inactive_workspace #000000 #ffffff #000000 +# } +#} +bar swaybar_command waybar + +# +# Colors: +# +# The explanation is under `man 5 sway-bar` +client.focused #BD93F9 #BD93F9 #282A36 #BD93F9 +client.focused_inactive #282A36 #282A36 #BD93F9 #282A36 +client.unfocused #282A36 #282A36 #BD93F9 #282A36 + +# +# Font: +# +font FantasqueSansMono NF + +# +# Border: +# +default_border pixel 2 +default_floating_border pixel 2 + +# +# Gaps: +# +gaps outer 12 +gaps inner 18 + +### Prrograms +# +# Startup programs: +# +exec lxpolkit +exec mako +#exec /home/wizardlink/.local/share/scripts/vision_health + +include /etc/sway/config.d/* + +# +# Window settings +# +for_window [title="Awakened PoE Trade"] floating enable +for_window [title="Godot"] floating enable +for_window [title="Retro Gadgets"] floating enable +for_window [title="DeaDBeeF"] floating enable +# for_window [app_id="xdg-desktop-portal-gnome"] floating enable diff --git a/.config/user-dirs.dirs b/.config/user-dirs.dirs new file mode 100644 index 0000000..7f9a959 --- /dev/null +++ b/.config/user-dirs.dirs @@ -0,0 +1,15 @@ +# This file is written by xdg-user-dirs-update +# If you want to change or add directories, just edit the line you're +# interested in. All local changes will be retained on the next run. +# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped +# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an +# absolute path. No other format is supported. +# +XDG_DESKTOP_DIR="$HOME/Desktop" +XDG_DOWNLOAD_DIR="$HOME/Downloads" +XDG_TEMPLATES_DIR="$HOME/Templates" +XDG_PUBLICSHARE_DIR="$HOME/Public" +XDG_DOCUMENTS_DIR="$HOME/Documents" +XDG_MUSIC_DIR="$HOME/Music" +XDG_PICTURES_DIR="$HOME/Pictures" +XDG_VIDEOS_DIR="$HOME/Videos" diff --git a/.config/user-dirs.locale b/.config/user-dirs.locale new file mode 100644 index 0000000..3e0b419 --- /dev/null +++ b/.config/user-dirs.locale @@ -0,0 +1 @@ +en_US \ No newline at end of file diff --git a/.config/vlc/vlc-qt-interface.conf b/.config/vlc/vlc-qt-interface.conf new file mode 100644 index 0000000..e706187 --- /dev/null +++ b/.config/vlc/vlc-qt-interface.conf @@ -0,0 +1,39 @@ +[General] +codecs-profiles-selected=Video - H.264 + MP3 (MP4) +filedialog-path=@Variant(\0\0\0\x11\0\0\0ufile:///mnt/internal/shared/jellyfin/anime/Sonny%20Boy/[SubsPlease]%20Sonny%20Boy%20-%2004%20(1080p)%20[47527457].mkv) +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3\xcb\0\0\x2@\0\0\a_\0\0\x6\x1f\0\0\x4\x38\0\0\x2\x1c\0\0\v\xb7\0\0\x6S\0\0\0\0\x2\0\0\0\a\x80\0\0\x3\xcb\0\0\x2@\0\0\a_\0\0\x6\x1f) + +[FullScreen] +pos=@Point(560 1536) +screen=@Rect(0 520 1920 1080) +wide=false + +[MainWindow] +adv-controls=0 +bgSize=@Size(100 30) +pl-dock-status=true +playlist-visible=true +playlistSize=@Size(917 918) +status-bar-visible=false + +[Messages] +geometry="@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3\xc6\0\0\0\"\0\0\au\0\0\x4-\0\0\x2\x94\0\0\x1;\0\0\x4\xeb\0\0\x2\xfc\0\0\0\0\x2\0\0\0\a\x80\0\0\x3\xc6\0\0\0\"\0\0\au\0\0\x4-)" + +[OpenDialog] +advanced=false +netMRL= +size=@Size(526 423) + +[Playlist] +headerStateV2=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\xff\xff\xff\xff\x1\0\0\0\0\0\0\0\0\0\0\0\r\xec\x1f\0\0\0\n\0\0\0\f\0\0\0\x64\0\0\0\x2\0\0\0\x64\0\0\0\x3\0\0\0\x64\0\0\0\x6\0\0\0\x64\0\0\0\a\0\0\0\x64\0\0\0\x5\0\0\0\x64\0\0\0\n\0\0\0\x64\0\0\0\v\0\0\0\x64\0\0\0\b\0\0\0\x64\0\0\0\t\0\0\0\x64\0\0\x2\xdb\0\0\0\r\x1\x1\0\x1\0\0\0\0\0\0\0\0\0\0\0\0\x64\xff\xff\xff\xff\0\0\0\x81\0\0\0\0\0\0\0\r\0\0\x1\x45\0\0\0\x1\0\0\0\0\0\0\0P\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x1\x46\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0\x64) +leftSplitterGeometry=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xc0\0\0\0\x80\x1\xff\xff\xff\xff\x1\0\0\0\x2\0) +splitterSizes=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xb4\0\0\x1\xa4\x1\xff\xff\xff\xff\x1\0\0\0\x1\0) +view-mode=1 +zoom=0 + +[RecentsMRL] +list=file:///mnt/internal/shared/jellyfin/anime/Sonny%20Boy/[SubsPlease]%20Sonny%20Boy%20-%2004%20(1080p)%20[47527457].mkv, file:///mnt/internal/shared/jellyfin/anime/Sonny%20Boy/[SubsPlease]%20Sonny%20Boy%20-%2004%20(1080p)%20[47527457].por.ass, https://cdn.jmvstream.com/w/LVW-8155/ngrp:LVW8155_41E1ciuCvO_all/playlist.m3u8, file:///home/wizardlink/Desktop/br.m3u, http://edge1.cl.grupoz.cl/aeradio/live/index.m3u8, https://unlimited1-us.dps.live/adntv/adntv.smil/playlist.m3u8, https://ythls.onrender.com/channel/UCTXNz3gjAypWp3EhlIATEJQ.m3u8, https://unlimited1-cl-isp.dps.live/13t/13t.smil/playlist.m3u8, https://unlimited2-cl-isp.dps.live/13p/13p.smil/playlist.m3u8, https://unlimited1-cl-isp.dps.live/13e/13e.smil/playlist.m3u8, https://unlimited2-cl-isp.dps.live/13cultura/13cultura.smil/playlist.m3u8, file:///home/wizardlink/Desktop/cl.m3u, http://www.portalcultura.com.br/playerhtml/funtelpa/tv_funtelpa/playlist.m3u8, https://5c483b9d1019c.streamlock.net/8066/8066/playlist.m3u8, http://93.152.174.144:4000/play/sic/index.m3u8, https://slbps-ml-sambatech.akamaized.net/samba-live/2472/7424/8a00fe7cc36ac263b2c3e9324497d5ff/video/621b6f2c-2dc6-41f1-9302-f9583c96ee31_index.m3u8, https://video-auth2.iol.pt/live_tvi_ficcao/live_tvi_ficcao/edge_servers/tvificcao-720p/playlist.m3u8, http://cdn.tvmatic.net/comedy.m3u8, http://213.13.26.11:1935/live/sobrenaturaltv/livestream.m3u8, https://59f1cbe63db89.streamlock.net:1443/tvmax/tvmax/playlist.m3u8, file:///home/wizardlink/Desktop/por.m3u, file:///home/wizardlink/Desktop/hzbuve_camera%2014@719324819_DS-7216HGHI-F1(719324819)_20230728121610_20230728121824_11386969.mp4, file:///home/wizardlink/Desktop/20230728_20230728121638_20230728121825_121716.mp4, file:///home/wizardlink/internal/personal/memes/cp.mp4, file:///home/wizardlink/internal/personal/memes/dangerously_cheesy-qDHuFOOKl6c.mp4, file:///home/wizardlink/internal/personal/memes/hat_powered_by_sadness.mp4, file:///home/wizardlink/internal/personal/memes/gib_cosmetic-Ep4ThJ8cQhs.mp4, file:///home/wizardlink/internal/personal/memes/gari_mod-XbH_YSh5ZHw.mp4, file:///home/wizardlink/internal/personal/memes/hoje_tem_festinha-VrgGi7Va33Y.mp4, file:///home/wizardlink/internal/personal/memes/paywall-3Pa26FJJzMc.mp4 +times=143168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + +[playlistdialog] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x2\x94\0\0\x2\xc6\0\0\x4\xeb\0\0\x5\x81\0\0\x2\x94\0\0\x2\xc6\0\0\x4\xeb\0\0\x5\x81\0\0\0\0\0\0\0\0\a\x80\0\0\x2\x94\0\0\x2\xc6\0\0\x4\xeb\0\0\x5\x81) diff --git a/.config/vlc/vlcrc b/.config/vlc/vlcrc new file mode 100644 index 0000000..c779e28 --- /dev/null +++ b/.config/vlc/vlcrc @@ -0,0 +1,5385 @@ +### +### vlc 3.0.18 +### + +### +### lines beginning with a '#' character are comments +### + +[visual] # Visualizer filter + +# Effects list (string) +#effect-list=spectrum + +# Video width (integer) +#effect-width=800 + +# Video height (integer) +#effect-height=500 + +# FFT window (string) +#effect-fft-window=flat + +# Kaiser window parameter (float) +#effect-kaiser-param=3.000000 + +# Show 80 bands instead of 20 (boolean) +#visual-80-bands=1 + +# Draw peaks in the analyzer (boolean) +#visual-peaks=1 + +# Enable original graphic spectrum (boolean) +#spect-show-original=0 + +# Draw the base of the bands (boolean) +#spect-show-base=1 + +# Base pixel radius (integer) +#spect-radius=42 + +# Spectral sections (integer) +#spect-sections=3 + +# V-plane color (integer) +#spect-color=80 + +# Draw bands in the spectrometer (boolean) +#spect-show-bands=1 + +# Show 80 bands instead of 20 (boolean) +#spect-80-bands=1 + +# Number of blank pixels between bands. (integer) +#spect-separ=1 + +# Amplification (integer) +#spect-amp=8 + +# Draw peaks in the analyzer (boolean) +#spect-show-peaks=1 + +# Peak extra width (integer) +#spect-peak-width=61 + +# Peak height (integer) +#spect-peak-height=1 + +[glspectrum] # 3D OpenGL spectrum visualization + +# Video width (integer) +#glspectrum-width=400 + +# Video height (integer) +#glspectrum-height=300 + +[wall] # Wall video filter + +# Number of columns (integer) +#wall-cols=3 + +# Number of rows (integer) +#wall-rows=3 + +# Active windows (string) +#wall-active= + +# Element aspect ratio (string) +#wall-element-aspect=16:9 + +[panoramix] # Panoramix: wall with overlap video filter + +# Number of columns (integer) +#panoramix-cols=-1 + +# Number of rows (integer) +#panoramix-rows=-1 + +# length of the overlapping area (in %) (integer) +#panoramix-bz-length=100 + +# height of the overlapping area (in %) (integer) +#panoramix-bz-height=100 + +# Attenuation (boolean) +#panoramix-attenuate=1 + +# Attenuation, begin (in %) (integer) +#panoramix-bz-begin=0 + +# Attenuation, middle (in %) (integer) +#panoramix-bz-middle=50 + +# Attenuation, end (in %) (integer) +#panoramix-bz-end=100 + +# middle position (in %) (integer) +#panoramix-bz-middle-pos=50 + +# Gamma (Red) correction (float) +#panoramix-bz-gamma-red=1.000000 + +# Gamma (Green) correction (float) +#panoramix-bz-gamma-green=1.000000 + +# Gamma (Blue) correction (float) +#panoramix-bz-gamma-blue=1.000000 + +# Black Crush for Red (integer) +#panoramix-bz-blackcrush-red=140 + +# Black Crush for Green (integer) +#panoramix-bz-blackcrush-green=140 + +# Black Crush for Blue (integer) +#panoramix-bz-blackcrush-blue=140 + +# White Crush for Red (integer) +#panoramix-bz-whitecrush-red=200 + +# White Crush for Green (integer) +#panoramix-bz-whitecrush-green=200 + +# White Crush for Blue (integer) +#panoramix-bz-whitecrush-blue=200 + +# Black Level for Red (integer) +#panoramix-bz-blacklevel-red=150 + +# Black Level for Green (integer) +#panoramix-bz-blacklevel-green=150 + +# Black Level for Blue (integer) +#panoramix-bz-blacklevel-blue=150 + +# White Level for Red (integer) +#panoramix-bz-whitelevel-red=0 + +# White Level for Green (integer) +#panoramix-bz-whitelevel-green=0 + +# White Level for Blue (integer) +#panoramix-bz-whitelevel-blue=0 + +# Active windows (string) +#panoramix-active= + +[clone] # Clone video filter + +# Number of clones (integer) +#clone-count=2 + +# Video output modules (string) +#clone-vout-list= + +[yuv] # YUV video output + +# device, fifo or filename (string) +#yuv-file=stream.yuv + +# Chroma used (string) +#yuv-chroma= + +# Add a YUV4MPEG2 header (boolean) +#yuv-yuv4mpeg2=0 + +[xdg_shell] # XDG shell surface + +# Wayland display (string) +#wl-display= + +[xcb_xv] # XVideo output (XCB) + +# XVideo adaptor number (integer) +#xvideo-adaptor=-1 + +# XVideo format id (integer) +#xvideo-format-id=0 + +[xcb_x11] # X11 video output (XCB) + +[xcb_window] # X11 video window (XCB) + +# X11 display (string) +#x11-display= + +[wl_shell] # Wayland shell surface + +# Wayland display (string) +#wl-display= + +[vmem] # Video memory output + +# Width (integer) +#vmem-width=320 + +# Height (integer) +#vmem-height=200 + +# Pitch (integer) +#vmem-pitch=640 + +# Chroma (string) +#vmem-chroma=RV16 + +[vdummy] # Dummy video output + +# Dummy image chroma format (string) +#dummy-chroma= + +[gl] # OpenGL video output + +# OpenGL extension (string) +#gl= + +# Open GL/GLES hardware converter (string) +#glconv= + +# Rendering intent for color conversion (integer) +#rendering-intent=1 + +# Display primaries (integer) +#target-prim=0 + +# Display gamma / transfer function (integer) +#target-trc=0 + +# Tone-mapping algorithm (integer) +#tone-mapping=3 + +# Tone-mapping parameter (float) +#tone-mapping-param=0.000000 + +# Highlight clipped pixels (boolean) +#tone-mapping-warn=0 + +# Dithering algorithm (integer) +#dither-algo=-1 + +# Dither depth override (0 = framebuffer depth) (integer) +#dither-depth=0 + +# Desaturation strength (float) +#desat-strength=0.000000 + +# Desaturation exponent (float) +#desat-exponent=0.000000 + +# Desaturation base (float) +#desat-base=0.000000 + +# Maximum brightness boost (float) +#max-boost=0.000000 + +[flaschen] # Flaschen-Taschen video output + +# Flaschen-Taschen display address (string) +#flaschen-display= + +# Width (integer) +#flaschen-width=25 + +# Height (integer) +#flaschen-height=20 + +[fb] # GNU/Linux framebuffer video output + +# Framebuffer device (string) +#fbdev=/dev/fb0 + +# Run fb on current tty (boolean) +#fb-tty=1 + +# Image format (default RGB) (string) +#fb-chroma= + +# Framebuffer resolution to use (integer) +#fb-mode=4 + +# Framebuffer uses hw acceleration (boolean) +#fb-hw-accel=1 + +[transform] # Video transformation filter + +# Transform type (string) +#transform-type=90 + +[sharpen] # Sharpen video filter + +# Sharpen strength (0-2) (float) +#sharpen-sigma=0.050000 + +[sepia] # Sepia video filter + +# Sepia intensity (integer) +#sepia-intensity=120 + +[scene] # Scene video filter + +# Image format (string) +#scene-format=png + +# Image width (integer) +#scene-width=-1 + +# Image height (integer) +#scene-height=-1 + +# Filename prefix (string) +#scene-prefix=scene + +# Directory path prefix (string) +#scene-path= + +# Always write to the same file (boolean) +#scene-replace=0 + +# Recording ratio (integer) +#scene-ratio=50 + +[rotate] # Rotate video filter + +# Angle in degrees (float) +#rotate-angle=30.000000 + +# Use motion sensors (boolean) +#rotate-use-motion=0 + +[puzzle] # Puzzle interactive game video filter + +# Number of puzzle rows (integer) +#puzzle-rows=4 + +# Number of puzzle columns (integer) +#puzzle-cols=4 + +# Border (integer) +#puzzle-border=3 + +# Small preview (boolean) +#puzzle-preview=0 + +# Small preview size (integer) +#puzzle-preview-size=15 + +# Piece edge shape size (integer) +#puzzle-shape-size=90 + +# Auto shuffle (integer) +#puzzle-auto-shuffle=0 + +# Auto solve (integer) +#puzzle-auto-solve=0 + +# Rotation (integer) +#puzzle-rotation=0 + +# Game mode (integer) +#puzzle-mode=0 + +[postproc] # Video post processing filter + +# Post processing quality (integer) +#postproc-q=6 + +# FFmpeg post processing filter chains (string) +#postproc-name=default + +[posterize] # Posterize video filter + +# Posterize level (integer) +#posterize-level=6 + +[motionblur] # Motion blur filter + +# Blur factor (1-127) (integer) +#blur-factor=80 + +[mirror] # Mirror video filter + +# Mirror orientation (integer) +#mirror-split=0 + +# Direction (integer) +#mirror-direction=0 + +[hqdn3d] # High Quality 3D Denoiser filter + +# Spatial luma strength (0-254) (float) +#hqdn3d-luma-spat=4.000000 + +# Spatial chroma strength (0-254) (float) +#hqdn3d-chroma-spat=3.000000 + +# Temporal luma strength (0-254) (float) +#hqdn3d-luma-temp=6.000000 + +# Temporal chroma strength (0-254) (float) +#hqdn3d-chroma-temp=4.500000 + +[grain] # Grain video filter + +# Variance (float) +#grain-variance=2.000000 + +# Minimal period (integer) +#grain-period-min=1 + +# Maximal period (integer) +#grain-period-max=48 + +[gradient] # Gradient video filter + +# Distort mode (string) +#gradient-mode=gradient + +# Gradient image type (integer) +#gradient-type=0 + +# Apply cartoon effect (boolean) +#gradient-cartoon=1 + +[gradfun] # Gradfun video filter + +# Radius (integer) +#gradfun-radius=16 + +# Strength (float) +#gradfun-strength=1.200000 + +[gaussianblur] # Gaussian blur video filter + +# Gaussian's std deviation (float) +#gaussianblur-sigma=2.000000 + +[fps] # FPS conversion video filter + +# Frame rate (string) +#fps-fps= + +[extract] # Extract RGB component video filter + +# RGB component to extract (integer) +#extract-component=16711680 + +[erase] # Erase video filter + +# Image mask (string) +#erase-mask= + +# X coordinate (integer) +#erase-x=0 + +# Y coordinate (integer) +#erase-y=0 + +[deinterlace] # Deinterlacing video filter + +# Streaming deinterlace mode (string) +#sout-deinterlace-mode=blend + +# Phosphor chroma mode for 4:2:0 input (integer) +#sout-deinterlace-phosphor-chroma=2 + +# Phosphor old field dimmer strength (integer) +#sout-deinterlace-phosphor-dimmer=2 + +[croppadd] # Video cropping filter + +# Pixels to crop from top (integer) +#croppadd-croptop=0 + +# Pixels to crop from bottom (integer) +#croppadd-cropbottom=0 + +# Pixels to crop from left (integer) +#croppadd-cropleft=0 + +# Pixels to crop from right (integer) +#croppadd-cropright=0 + +# Pixels to padd to top (integer) +#croppadd-paddtop=0 + +# Pixels to padd to bottom (integer) +#croppadd-paddbottom=0 + +# Pixels to padd to left (integer) +#croppadd-paddleft=0 + +# Pixels to padd to right (integer) +#croppadd-paddright=0 + +[colorthres] # Color threshold filter + +# Color (integer) +#colorthres-color=16711680 + +# Saturation threshold (integer) +#colorthres-saturationthres=20 + +# Similarity threshold (integer) +#colorthres-similaritythres=15 + +[canvas] # Canvas video filter + +# Output width (integer) +#canvas-width=0 + +# Output height (integer) +#canvas-height=0 + +# Output picture aspect ratio (string) +#canvas-aspect= + +# Pad video (boolean) +#canvas-padd=1 + +[bluescreen] # Bluescreen video filter + +# Bluescreen U value (integer) +#bluescreen-u=120 + +# Bluescreen V value (integer) +#bluescreen-v=90 + +# Bluescreen U tolerance (integer) +#bluescreen-ut=17 + +# Bluescreen V tolerance (integer) +#bluescreen-vt=17 + +[blendbench] # Blending benchmark filter + +# Number of time to blend (integer) +#blendbench-loops=1000 + +# Alpha of the blended image (integer) +#blendbench-alpha=128 + +# Image to be blended onto (string) +#blendbench-base-image= + +# Chroma for the base image (string) +#blendbench-base-chroma=I420 + +# Image which will be blended (string) +#blendbench-blend-image= + +# Chroma for the blend image (string) +#blendbench-blend-chroma=YUVA + +[ball] # Ball video filter + +# Ball color (string) +#ball-color=red + +# Ball speed (integer) +#ball-speed=4 + +# Ball size (integer) +#ball-size=10 + +# Gradient threshold (integer) +#ball-gradient-threshold=40 + +# Edge visible (boolean) +#ball-edge-visible=1 + +[antiflicker] # antiflicker video filter + +# Window size (integer) +#antiflicker-window-size=10 + +# Softening value (integer) +#antiflicker-softening-size=10 + +[anaglyph] # Convert 3D picture to anaglyph image video filter + +# Color scheme (string) +#anaglyph-scheme=red-cyan + +[alphamask] # Alpha mask video filter + +# Transparency mask (string) +#alphamask-mask= + +[adjust] # Image properties filter + +# Image contrast (0-2) (float) +#contrast=1.000000 + +# Image brightness (0-2) (float) +#brightness=1.000000 + +# Image hue (-180..180) (float) +#hue=0.000000 + +# Image saturation (0-3) (float) +#saturation=1.000000 + +# Image gamma (0-10) (float) +#gamma=1.000000 + +# Brightness threshold (boolean) +#brightness-threshold=0 + +[swscale] # Video scaling filter + +# Scaling mode (integer) +#swscale-mode=2 + +[vdpau_chroma] # VDPAU surface conversions + +# Deinterlace (integer) +#vdpau-deinterlace=1 + +# Inverse telecine (boolean) +#vdpau-ivtc=0 + +# Deinterlace chroma skip (boolean) +#vdpau-chroma-skip=0 + +# Noise reduction level (float) +#vdpau-noise-reduction=0.000000 + +# Scaling quality (integer) +#vdpau-scaling=0 + +[vaapi_filters] # Video Accelerated API filters + +# Denoise strength (0-2) (float) +#denoise-sigma=1.000000 + +[svg] # svg + +# SVG template file (string) +#svg-template-file= + +[freetype] # Freetype2 font renderer + +# Font (string) +#freetype-font=DejaVuSans + +# Monospace Font (string) +#freetype-monofont=DejaVuSansMono + +# Font size in pixels (integer) +#freetype-fontsize=0 + +# Relative font size (integer) +#freetype-rel-fontsize=0 + +# Text opacity (integer) +#freetype-opacity=255 + +# Text default color (integer) +#freetype-color=16777215 + +# Force bold (boolean) +#freetype-bold=0 + +# Background opacity (integer) +#freetype-background-opacity=0 + +# Background color (integer) +#freetype-background-color=0 + +# Outline opacity (integer) +#freetype-outline-opacity=255 + +# Outline color (integer) +#freetype-outline-color=0 + +# Outline thickness (integer) +#freetype-outline-thickness=4 + +# Shadow opacity (integer) +#freetype-shadow-opacity=128 + +# Shadow color (integer) +#freetype-shadow-color=0 + +# Shadow angle (float) +#freetype-shadow-angle=-45.000000 + +# Shadow distance (float) +#freetype-shadow-distance=0.060000 + +# Use YUVP renderer (boolean) +#freetype-yuvp=0 + +# Text direction (integer) +#freetype-text-direction=0 + +[stream_out_transcode] # Transcode stream output + +# Video encoder (string) +#sout-transcode-venc= + +# Destination video codec (string) +#sout-transcode-vcodec= + +# Video bitrate (integer) +#sout-transcode-vb=0 + +# Video scaling (float) +#sout-transcode-scale=0.000000 + +# Video frame-rate (string) +#sout-transcode-fps= + +# Deinterlace video (boolean) +#sout-transcode-deinterlace=0 + +# Deinterlace module (string) +#sout-transcode-deinterlace-module=deinterlace + +# Video width (integer) +#sout-transcode-width=0 + +# Video height (integer) +#sout-transcode-height=0 + +# Maximum video width (integer) +#sout-transcode-maxwidth=0 + +# Maximum video height (integer) +#sout-transcode-maxheight=0 + +# Video filter (string) +#sout-transcode-vfilter= + +# Audio encoder (string) +#sout-transcode-aenc= + +# Destination audio codec (string) +#sout-transcode-acodec= + +# Audio bitrate (integer) +#sout-transcode-ab=96 + +# Audio language (string) +#sout-transcode-alang= + +# Audio channels (integer) +#sout-transcode-channels=0 + +# Audio sample rate (integer) +#sout-transcode-samplerate=0 + +# Audio filter (string) +#sout-transcode-afilter= + +# Subtitle encoder (string) +#sout-transcode-senc= + +# Destination subtitle codec (string) +#sout-transcode-scodec= + +# Destination subtitle codec (boolean) +#sout-transcode-soverlay=0 + +# Overlays (string) +#sout-transcode-sfilter= + +# Number of threads (integer) +#sout-transcode-threads=0 + +# Picture pool size (integer) +#sout-transcode-pool-size=10 + +# High priority (boolean) +#sout-transcode-high-priority=0 + +[stats] # Writes statistic info about stream + +# Output file (string) +#sout-stats-output= + +# Prefix to show on output line (string) +#sout-stats-prefix=stats + +[stream_out_standard] # Standard stream output + +# Output access method (string) +#sout-standard-access= + +# Output muxer (string) +#sout-standard-mux= + +# Output destination (string) +#sout-standard-dst= + +# Address to bind to (helper setting for dst) (string) +#sout-standard-bind= + +# Filename for stream (helper setting for dst) (string) +#sout-standard-path= + +# SAP announcing (boolean) +#sout-standard-sap=0 + +# Session name (string) +#sout-standard-name= + +# Session description (string) +#sout-standard-description= + +# Session URL (string) +#sout-standard-url= + +# Session email (string) +#sout-standard-email= + +[smem] # Stream output to memory buffer + +# Time Synchronized output (boolean) +#sout-smem-time-sync=1 + +[setid] # Change the id of an elementary stream + +# Elementary Stream ID (integer) +#sout-setid-id=0 + +# New ES ID (integer) +#sout-setid-new-id=0 + +# Elementary Stream ID (integer) +#sout-setlang-id=0 + +# Language (string) +#sout-setlang-lang=eng + +[stream_out_rtp] # RTP stream output + +# Destination (string) +#sout-rtp-dst= + +# SDP (string) +#sout-rtp-sdp= + +# Muxer (string) +#sout-rtp-mux= + +# SAP announcing (boolean) +#sout-rtp-sap=0 + +# Session name (string) +#sout-rtp-name= + +# Session category (string) +#sout-rtp-cat= + +# Session description (string) +#sout-rtp-description= + +# Session URL (string) +#sout-rtp-url= + +# Session email (string) +#sout-rtp-email= + +# Transport protocol (string) +#sout-rtp-proto=udp + +# Port (integer) +#sout-rtp-port=5004 + +# Audio port (integer) +#sout-rtp-port-audio=0 + +# Video port (integer) +#sout-rtp-port-video=0 + +# Hop limit (TTL) (integer) +#sout-rtp-ttl=-1 + +# RTP/RTCP multiplexing (boolean) +#sout-rtp-rtcp-mux=0 + +# Caching value (ms) (integer) +#sout-rtp-caching=300 + +# SRTP key (hexadecimal) (string) +#sout-rtp-key= + +# SRTP salt (hexadecimal) (string) +#sout-rtp-salt= + +# MP4A LATM (boolean) +#sout-rtp-mp4a-latm=0 + +# RTSP session timeout (s) (integer) +#rtsp-timeout=60 + +# Username (string) +#sout-rtsp-user= + +# Password (string) +#sout-rtsp-pwd= + +[record] # Record stream output + +# Destination prefix (string) +#sout-record-dst-prefix= + +[mosaic_bridge] # Mosaic bridge stream output + +# ID (string) +#sout-mosaic-bridge-id=Id + +# Video width (integer) +#sout-mosaic-bridge-width=0 + +# Video height (integer) +#sout-mosaic-bridge-height=0 + +# Sample aspect ratio (string) +#sout-mosaic-bridge-sar=1:1 + +# Image chroma (string) +#sout-mosaic-bridge-chroma= + +# Video filter (string) +#sout-mosaic-bridge-vfilter= + +# Transparency (integer) +#sout-mosaic-bridge-alpha=255 + +# X offset (integer) +#sout-mosaic-bridge-x=-1 + +# Y offset (integer) +#sout-mosaic-bridge-y=-1 + +[es] # Elementary stream output + +# Output access method (string) +#sout-es-access= + +# Output muxer (string) +#sout-es-mux= + +# Output URL (string) +#sout-es-dst= + +# Audio output access method (string) +#sout-es-access-audio= + +# Audio output muxer (string) +#sout-es-mux-audio= + +# Audio output URL (string) +#sout-es-dst-audio= + +# Video output access method (string) +#sout-es-access-video= + +# Video output muxer (string) +#sout-es-mux-video= + +# Video output URL (string) +#sout-es-dst-video= + +[display] # Display stream output + +# Enable audio (boolean) +#sout-display-audio=1 + +# Enable video (boolean) +#sout-display-video=1 + +# Delay (ms) (integer) +#sout-display-delay=100 + +[delay] # Delay a stream + +# Elementary Stream ID (integer) +#sout-delay-id=0 + +# Delay of the ES (ms) (integer) +#sout-delay-delay=0 + +[stream_out_chromecast] # Chromecast stream output + +# ? (string) +#sout-chromecast-ip= + +# ? (integer) +#sout-chromecast-port=8009 + +# ? (boolean) +#sout-chromecast-video=1 + +# HTTP port (integer) +#sout-chromecast-http-port=8010 + +# Performance warning (integer) +#sout-chromecast-show-perf-warning=1 + +# Enable Audio passthrough (boolean) +#sout-chromecast-audio-passthrough=0 + +# Conversion quality (integer) +#sout-chromecast-conversion-quality=1 + +[stream_out_chromaprint] # Chromaprint stream output + +# Duration of the fingerprinting (integer) +#duration=90 + +[bridge] # Bridge stream output + +# ID (integer) +#sout-bridge-out-id=0 + +# Destination bridge-in name (string) +#sout-bridge-out-in-name=default + +# Delay (integer) +#sout-bridge-in-delay=0 + +# ID Offset (integer) +#sout-bridge-in-id-offset=8192 + +# Name of current instance (string) +#sout-bridge-in-name=default + +# Fallback to placeholder stream when out of data (boolean) +#sout-bridge-in-placeholder=0 + +# Placeholder delay (integer) +#sout-bridge-in-placeholder-delay=200 + +# Wait for I frame before toggling placeholder (boolean) +#sout-bridge-in-placeholder-switch-on-iframe=1 + +[prefetch] # Stream prefetch filter + +# Buffer size (integer) +#prefetch-buffer-size=16384 + +# Read size (integer) +#prefetch-read-size=16777216 + +# Seek threshold (integer) +#prefetch-seek-threshold=16384 + +[subsdelay] # Subtitle delay + +# Delay calculation mode (integer) +#subsdelay-mode=1 + +# Calculation factor (float) +#subsdelay-factor=2.000000 + +# Maximum overlapping subtitles (integer) +#subsdelay-overlap=3 + +# Minimum alpha value (integer) +#subsdelay-min-alpha=70 + +# Interval between two disappearances (integer) +#subsdelay-min-stops=1000 + +# Interval between appearance and disappearance (integer) +#subsdelay-min-start-stop=1000 + +# Interval between disappearance and appearance (integer) +#subsdelay-min-stop-start=1000 + +[rss] # RSS and Atom feed display + +# Feed URLs (string) +#rss-urls= + +# X offset (integer) +#rss-x=0 + +# Y offset (integer) +#rss-y=0 + +# Text position (integer) +#rss-position=-1 + +# Opacity (integer) +#rss-opacity=255 + +# Color (integer) +#rss-color=16777215 + +# Font size, pixels (integer) +#rss-size=0 + +# Speed of feeds (integer) +#rss-speed=100000 + +# Max length (integer) +#rss-length=60 + +# Refresh time (integer) +#rss-ttl=1800 + +# Feed images (boolean) +#rss-images=1 + +# Title display mode (integer) +#rss-title=-1 + +[remoteosd] # Remote-OSD over VNC + +# VNC Host (string) +#rmtosd-host=myvdr + +# VNC Port (integer) +#rmtosd-port=20001 + +# VNC Password (string) +#rmtosd-password= + +# VNC poll interval (integer) +#rmtosd-update=1000 + +# VNC polling (boolean) +#rmtosd-vnc-polling=0 + +# Mouse events (boolean) +#rmtosd-mouse-events=0 + +# Key events (boolean) +#rmtosd-key-events=0 + +# Alpha transparency value (default 255) (integer) +#rmtosd-alpha=255 + +[mosaic] # Mosaic video sub source + +# Transparency (integer) +#mosaic-alpha=255 + +# Height (integer) +#mosaic-height=100 + +# Width (integer) +#mosaic-width=100 + +# Mosaic alignment (integer) +#mosaic-align=5 + +# Top left corner X coordinate (integer) +#mosaic-xoffset=0 + +# Top left corner Y coordinate (integer) +#mosaic-yoffset=0 + +# Border width (integer) +#mosaic-borderw=0 + +# Border height (integer) +#mosaic-borderh=0 + +# Positioning method (integer) +#mosaic-position=0 + +# Number of rows (integer) +#mosaic-rows=2 + +# Number of columns (integer) +#mosaic-cols=2 + +# Keep aspect ratio (boolean) +#mosaic-keep-aspect-ratio=0 + +# Keep original size (boolean) +#mosaic-keep-picture=0 + +# Elements order (string) +#mosaic-order= + +# Offsets in order (string) +#mosaic-offsets= + +# Delay (integer) +#mosaic-delay=0 + +[marq] # Marquee display + +# Text (string) +#marq-marquee=VLC + +# Text file (string) +#marq-file= + +# X offset (integer) +#marq-x=0 + +# Y offset (integer) +#marq-y=0 + +# Marquee position (integer) +#marq-position=-1 + +# Opacity (integer) +#marq-opacity=255 + +# Color (integer) +#marq-color=16777215 + +# Font size, pixels (integer) +#marq-size=0 + +# Timeout (integer) +#marq-timeout=0 + +# Refresh period in ms (integer) +#marq-refresh=1000 + +[logo] # Logo sub source + +# Logo filenames (string) +#logo-file= + +# X coordinate (integer) +#logo-x=-1 + +# Y coordinate (integer) +#logo-y=-1 + +# Logo individual image time in ms (integer) +#logo-delay=1000 + +# Logo animation # of loops (integer) +#logo-repeat=-1 + +# Opacity of the logo (integer) +#logo-opacity=255 + +# Logo position (integer) +#logo-position=-1 + +[dynamicoverlay] # Dynamic video overlay + +# Input FIFO (string) +#overlay-input= + +# Output FIFO (string) +#overlay-output= + +[audiobargraph_v] # Audio Bar Graph Video sub source + +# X coordinate (integer) +#audiobargraph_v-x=0 + +# Y coordinate (integer) +#audiobargraph_v-y=0 + +# Transparency of the bargraph (integer) +#audiobargraph_v-transparency=255 + +# Bargraph position (integer) +#audiobargraph_v-position=-1 + +# Bar width in pixel (integer) +#audiobargraph_v-barWidth=10 + +# Bar Height in pixel (integer) +#audiobargraph_v-barHeight=400 + +[upnp] # Universal Plug'n'Play + +# SAT>IP channel list (string) +#satip-channelist=auto + +# Custom SAT>IP channel list URL (string) +#satip-channellist-url= + +[sap] # Network streams (SAP) + +# SAP multicast address (string) +#sap-addr= + +# SAP timeout (seconds) (integer) +#sap-timeout=1800 + +# Try to parse the announce (boolean) +#sap-parse=1 + +# SAP Strict mode (boolean) +#sap-strict=0 + +[podcast] # Podcasts + +# Podcast URLs list (string) +#podcast-urls= + +[mpegvideo] # MPEG-I/II video packetizer + +# Sync on Intra Frame (boolean) +#packetizer-mpegvideo-sync-iframe=0 + +[notify] # LibNotify Notification Plugin + +# Timeout (ms) (integer) +#notify-timeout=4000 + +[mux_ts] # TS muxer (libdvbpsi) + +# Digital TV Standard (string) +#sout-ts-standard=dvb + +# Video PID (integer) +#sout-ts-pid-video=100 + +# Audio PID (integer) +#sout-ts-pid-audio=200 + +# SPU PID (integer) +#sout-ts-pid-spu=300 + +# PMT PID (integer) +#sout-ts-pid-pmt=32 + +# TS ID (integer) +#sout-ts-tsid=0 + +# NET ID (integer) +#sout-ts-netid=0 + +# PMT Program numbers (string) +#sout-ts-program-pmt= + +# Set PID to ID of ES (boolean) +#sout-ts-es-id-pid=0 + +# Mux PMT (requires --sout-ts-es-id-pid) (string) +#sout-ts-muxpmt= + +# SDT Descriptors (requires --sout-ts-es-id-pid) (string) +#sout-ts-sdtdesc= + +# Data alignment (boolean) +#sout-ts-alignment=1 + +# Shaping delay (ms) (integer) +#sout-ts-shaping=200 + +# Use keyframes (boolean) +#sout-ts-use-key-frames=0 + +# PCR interval (ms) (integer) +#sout-ts-pcr=70 + +# Minimum B (deprecated) (integer) +#sout-ts-bmin=0 + +# Maximum B (deprecated) (integer) +#sout-ts-bmax=0 + +# DTS delay (ms) (integer) +#sout-ts-dts-delay=400 + +# Crypt audio (boolean) +#sout-ts-crypt-audio=1 + +# Crypt video (boolean) +#sout-ts-crypt-video=1 + +# CSA Key (string) +#sout-ts-csa-ck= + +# Second CSA Key (string) +#sout-ts-csa2-ck= + +# CSA Key in use (string) +#sout-ts-csa-use=1 + +# Packet size in bytes to encrypt (integer) +#sout-ts-csa-pkt=188 + +[ps] # PS muxer + +# DTS delay (ms) (integer) +#sout-ps-dts-delay=200 + +# PES maximum size (integer) +#sout-ps-pes-max-size=65500 + +[mux_ogg] # Ogg/OGM muxer + +# Index interval (integer) +#sout-ogg-indexintvl=1000 + +# Index size ratio (float) +#sout-ogg-indexratio=1.000000 + +[mp4] # MP4/MOV muxer + +# Create "Fast Start" files (boolean) +#sout-mp4-faststart=1 + +[avi] # AVI muxer + +# Artist (string) +#sout-avi-artist= + +# Date (string) +#sout-avi-date= + +# Genre (string) +#sout-avi-genre= + +# Copyright (string) +#sout-avi-copyright= + +# Comment (string) +#sout-avi-comment= + +# Name (string) +#sout-avi-name= + +# Subject (string) +#sout-avi-subject= + +# Encoder (string) +#sout-avi-encoder=VLC Media Player - 3.0.18 Vetinari + +# Keywords (string) +#sout-avi-keywords= + +[asf] # ASF muxer + +# Title (string) +#sout-asf-title= + +# Author (string) +#sout-asf-author= + +# Copyright (string) +#sout-asf-copyright= + +# Comment (string) +#sout-asf-comment= + +# Rating (string) +#sout-asf-rating= + +# Packet Size (integer) +#sout-asf-packet-size=4096 + +# Bitrate override (integer) +#sout-asf-bitrate-override=0 + +[rtsp] # Legacy RTSP VoD server + +# MUX for RAW RTSP transport (string) +#rtsp-raw-mux=ts + +# Maximum number of connections (integer) +#rtsp-throttle-users=0 + +# Sets the timeout option in the RTSP session string (integer) +#rtsp-session-timeout=5 + +[logger] # File logging + +[gnutls] # GNU TLS transport layer security + +# Use system trust database (boolean) +#gnutls-system-trust=1 + +# Trust directory (string) +#gnutls-dir-trust= + +# TLS cipher priorities (string) +#gnutls-priorities=NORMAL + +[audioscrobbler] # Submission of played songs to last.fm + +# Username (string) +#lastfm-username= + +# Password (string) +#lastfm-password= + +# Scrobbler URL (string) +#scrobbler-url=post.audioscrobbler.com + +[folder] # Folder meta data + +# Album art filename (string) +#album-art-filename= + +[lua] # Lua interpreter + +# Lua interface (string) +#lua-intf=dummy + +# Lua interface configuration (string) +#lua-config= + +# Password (string) +#http-password= + +# Source directory (string) +#http-src= + +# Directory index (boolean) +#http-index=0 + +# TCP command input (string) +#rc-host= + +# CLI input (string) +#cli-host= + +# Host (string) +#telnet-host=localhost + +# Port (integer) +#telnet-port=4212 + +# Password (string) +#telnet-password= + +[syslog] # System logger (syslog) + +# System log (syslog) (boolean) +#syslog=0 + +# Debug messages (boolean) +#syslog-debug=0 + +# Identity (string) +#syslog-ident=vlc + +# Facility (string) +#syslog-facility=user + +[file] # File logger + +# Log to file (boolean) +#file-logging=0 + +# Log filename (string) +#logfile= + +# Log format (string) +#logmode=text + +# Verbosity (integer) +#log-verbose=-1 + +[console] # Console logger + +[file] # Secrets are stored on a file without any encryption + +# ? (string) +#keystore-file= + +[skins2] # Skinnable Interface + +# Skin to use (string) +#skins2-last= + +# Config of last used skin (string) +#skins2-config= + +# Enable transparency effects (boolean) +#skins2-transparency=0 + +# Use a skinned playlist (boolean) +#skinned-playlist=1 + +# Display video in a skinned window if any (boolean) +#skinned-video=1 + +[qt] # Qt interface + +# Start in minimal view (without menus) (boolean) +#qt-minimal-view=0 + +# Systray icon (boolean) +#qt-system-tray=1 + +# Show notification popup on track change (integer) +#qt-notification=1 + +# Start VLC with only a systray icon (boolean) +#qt-start-minimized=0 + +# Pause the video playback when minimized (boolean) +#qt-pause-minimized=0 + +# Windows opacity between 0.1 and 1 (float) +#qt-opacity=1.000000 + +# Fullscreen controller opacity between 0.1 and 1 (float) +#qt-fs-opacity=0.800000 + +# Resize interface to the native video size (boolean) +#qt-video-autoresize=1 + +# Show playing item name in window title (boolean) +#qt-name-in-title=1 + +# Show a controller in fullscreen mode (boolean) +#qt-fs-controller=1 + +# Save the recently played items in the menu (boolean) +#qt-recentplay=1 + +# List of words separated by | to filter (string) +#qt-recentplay-filter= + +# Continue playback? (integer) +#qt-continue=1 + +# Embed the file browser in open dialog (boolean) +#qt-embedded-open=0 + +# Show advanced preferences over simple ones (boolean) +#qt-advanced-pref=0 + +# Show unimportant error and warnings dialogs (boolean) +#qt-error-dialogs=1 + +# Define the colors of the volume slider (string) +#qt-slider-colours=153;210;153;20;210;20;255;199;15;245;39;29 + +# Ask for network policy at start (boolean) +qt-privacy-ask=0 + +# Define which screen fullscreen goes (integer) +#qt-fullscreen-screennumber=-1 + +# Load extensions on startup (boolean) +#qt-autoload-extensions=1 + +# Display background cone or art (boolean) +#qt-bgcone=1 + +# Expanding background cone or art (boolean) +#qt-bgcone-expands=0 + +# Allow automatic icon changes (boolean) +#qt-icon-change=1 + +# Maximum Volume displayed (integer) +#qt-max-volume=125 + +# Fullscreen controller mouse sensitivity (integer) +#qt-fs-sensitivity=3 + +# When to raise the interface (integer) +#qt-auto-raise=1 + +[ncurses] # Ncurses interface + +# Filebrowser starting point (string) +#browse-dir= + +[vc1] # VC1 video demuxer + +# Frames per Second (float) +#vc1-fps=25.000000 + +[ts] # MPEG Transport Stream demuxer + +# Digital TV Standard (string) +#ts-standard=auto + +# Extra PMT (string) +#ts-extra-pmt= + +# Trust in-stream PCR (boolean) +#ts-trust-pcr=1 + +# Set id of ES to PID (boolean) +#ts-es-id-pid=1 + +# CSA Key (string) +#ts-csa-ck= + +# Second CSA Key (string) +#ts-csa2-ck= + +# Packet size in bytes to decrypt (integer) +#ts-csa-pkt=188 + +# Separate sub-streams (boolean) +#ts-split-es=1 + +# Seek based on percent not time (boolean) +#ts-seek-percent=0 + +# Check packets continuity counter (boolean) +#ts-cc-check=1 + +# Only create ES on program sending data (boolean) +#ts-pmtfix-waitdata=1 + +# Try to generate PAT/PMT if missing (boolean) +#ts-patfix=1 + +# Try to fix too early PCR (or late DTS) (boolean) +#ts-pcr-offsetfix=1 + +[subtitle] # Text subtitle parser + +# Frames per Second (float) +#sub-fps=0.000000 + +# Subtitle delay (integer) +#sub-delay=0 + +# Subtitle format (string) +#sub-type=auto + +# Subtitle description (string) +#sub-description= + +[rawvid] # Raw video demuxer + +# Frames per Second (string) +#rawvid-fps= + +# Width (integer) +#rawvid-width=0 + +# Height (integer) +#rawvid-height=0 + +# Force chroma (Use carefully) (string) +#rawvid-chroma= + +# Aspect ratio (string) +#rawvid-aspect-ratio= + +[rawdv] # DV (Digital Video) demuxer + +# Hurry up (boolean) +#rawdv-hurry-up=0 + +[rawaud] # Raw audio demuxer + +# Audio channels (integer) +#rawaud-channels=2 + +# Audio samplerate (Hz) (integer) +#rawaud-samplerate=48000 + +# FOURCC code of raw input format (string) +#rawaud-fourcc=s16l + +# Forces the audio language (string) +#rawaud-lang=eng + +[ps] # MPEG-PS demuxer + +# Trust MPEG timestamps (boolean) +#ps-trust-timestamps=1 + +[playlist] # Playlist + +# Skip ads (boolean) +#playlist-skip-ads=1 + +# Show shoutcast adult content (boolean) +#shoutcast-show-adult=0 + +[mp4] # MP4 stream demuxer + +# M4A audio only (boolean) +#mp4-m4a-audioonly=0 + +[mod] # MOD demuxer (libmodplug) + +# Noise reduction (boolean) +#mod-noisereduction=1 + +# Reverb (boolean) +#mod-reverb=0 + +# Reverberation level (integer) +#mod-reverb-level=0 + +# Reverberation delay (integer) +#mod-reverb-delay=40 + +# Mega bass (boolean) +#mod-megabass=0 + +# Mega bass level (integer) +#mod-megabass-level=0 + +# Mega bass cutoff (integer) +#mod-megabass-range=10 + +# Surround (boolean) +#mod-surround=0 + +# Surround level (integer) +#mod-surround-level=0 + +# Surround delay (ms) (integer) +#mod-surround-delay=5 + +[mkv] # Matroska stream demuxer + +# Respect ordered chapters (boolean) +#mkv-use-ordered-chapters=1 + +# Chapter codecs (boolean) +#mkv-use-chapter-codec=1 + +# Preload MKV files in the same directory (boolean) +#mkv-preload-local-dir=1 + +# Seek based on percent not time (boolean) +#mkv-seek-percent=0 + +# Dummy Elements (boolean) +#mkv-use-dummy=0 + +# Preload clusters (boolean) +#mkv-preload-clusters=0 + +[mjpeg] # M-JPEG camera demuxer + +# Frames per Second (float) +#mjpeg-fps=0.000000 + +[image] # Image demuxer + +# ES ID (integer) +#image-id=-1 + +# Group (integer) +#image-group=0 + +# Decode (boolean) +#image-decode=1 + +# Forced chroma (string) +#image-chroma= + +# Duration in seconds (float) +#image-duration=10.000000 + +# Frame rate (string) +#image-fps=10/1 + +# Real-time (boolean) +#image-realtime=0 + +[h26x] # H264 video demuxer + +# Frames per Second (float) +#h264-fps=0.000000 + +# Frames per Second (float) +#hevc-fps=0.000000 + +[es] # MPEG-I/II/4 / A52 / DTS / MLP audio + +# Frames per Second (float) +#es-fps=25.000000 + +[diracsys] # Dirac video demuxer + +# Value to adjust dts by (integer) +#dirac-dts-offset=0 + +[demuxdump] # File dumper + +# Dump module (string) +#demuxdump-access=file + +# Dump filename (string) +#demuxdump-file=stream-demux.dump + +# Append to existing file (boolean) +#demuxdump-append=0 + +[avi] # AVI demuxer + +# Force interleaved method (boolean) +#avi-interleaved=0 + +# Force index creation (integer) +#avi-index=0 + +[avformat] # Avformat demuxer + +# Format name (string) +#avformat-format= + +# Advanced options (string) +#avformat-options= + +# Avformat mux (string) +#sout-avformat-mux= + +# Advanced options (string) +#sout-avformat-options= + +# Reset timestamps (boolean) +#sout-avformat-reset-ts=0 + +[adaptive] # Unified adaptive streaming for DASH/HLS + +# Adaptive Logic (string) +#adaptive-logic= + +# Maximum device width (integer) +#adaptive-maxwidth=0 + +# Maximum device height (integer) +#adaptive-maxheight=0 + +# Fixed Bandwidth in KiB/s (integer) +#adaptive-bw=250 + +# Use regular HTTP modules (boolean) +#adaptive-use-access=0 + +# Live Playback delay (ms) (integer) +#adaptive-livedelay=15000 + +# Max buffering (ms) (integer) +#adaptive-maxbuffer=30000 + +# Low latency (integer) +#adaptive-lowlatency=-1 + +[oldrc] # Remote control interface + +# Show stream position (boolean) +#rc-show-pos=0 + +# Fake TTY (boolean) +#rc-fake-tty=0 + +# UNIX socket command input (string) +#rc-unix= + +# TCP command input (string) +#rc-host= + +[netsync] # Network synchronization + +# Network master clock (boolean) +#netsync-master=0 + +# Master server IP address (string) +#netsync-master-ip= + +# UDP timeout (in ms) (integer) +#netsync-timeout=500 + +[motion] # motion control interface + +[lirc] # Infrared remote control interface + +# Change the lirc configuration file (string) +#lirc-file= + +[gestures] # Mouse gestures control interface + +# Motion threshold (10-100) (integer) +#gestures-threshold=30 + +# Trigger button (string) +#gestures-button=left + +[fluidsynth] # FluidSynth MIDI synthesizer + +# SoundFont file (string) +#soundfont= + +# Chorus (boolean) +#synth-chorus=1 + +# Synthesis gain (float) +#synth-gain=0.500000 + +# Polyphony (integer) +#synth-polyphony=256 + +# Reverb (boolean) +#synth-reverb=1 + +# Sample rate (integer) +#synth-sample-rate=44100 + +[zvbi] # VBI and Teletext decoder + +# Teletext page (integer) +#vbi-page=100 + +# Opacity (boolean) +#vbi-opaque=0 + +# Teletext alignment (integer) +#vbi-position=8 + +# Teletext text subtitles (boolean) +#vbi-text=0 + +# Presentation Level (integer) +#vbi-level=3 + +[x264] # H.264/MPEG-4 Part 10/AVC encoder (x264) + +# Maximum GOP size (integer) +#sout-x264-keyint=250 + +# Minimum GOP size (integer) +#sout-x264-min-keyint=25 + +# Use recovery points to close GOPs (boolean) +#sout-x264-opengop=0 + +# Enable compatibility hacks for Blu-ray support (boolean) +#sout-x264-bluray-compat=0 + +# Extra I-frames aggressivity (integer) +#sout-x264-scenecut=40 + +# B-frames between I and P (integer) +#sout-x264-bframes=3 + +# Adaptive B-frame decision (integer) +#sout-x264-b-adapt=1 + +# Influence (bias) B-frames usage (integer) +#sout-x264-b-bias=0 + +# Keep some B-frames as references (string) +#sout-x264-bpyramid=normal + +# CABAC (boolean) +#sout-x264-cabac=1 + +# Use fullrange instead of TV colorrange (boolean) +#sout-x264-fullrange=0 + +# Number of reference frames (integer) +#sout-x264-ref=3 + +# Skip loop filter (boolean) +#sout-x264-nf=0 + +# Loop filter AlphaC0 and Beta parameters alpha:beta (string) +#sout-x264-deblock=0:0 + +# Strength of psychovisual optimization, default is "1.0:0.0" (string) +#sout-x264-psy-rd=1.0:0.0 + +# Use Psy-optimizations (boolean) +#sout-x264-psy=1 + +# H.264 level (string) +#sout-x264-level=0 + +# H.264 profile (string) +#sout-x264-profile=high + +# Interlaced mode (boolean) +#sout-x264-interlaced=0 + +# Frame packing (integer) +#sout-x264-frame-packing=-1 + +# Force number of slices per frame (integer) +#sout-x264-slices=0 + +# Limit the size of each slice in bytes (integer) +#sout-x264-slice-max-size=0 + +# Limit the size of each slice in macroblocks (integer) +#sout-x264-slice-max-mbs=0 + +# HRD-timing information (string) +#sout-x264-hrd=none + +# Set QP (integer) +#sout-x264-qp=-1 + +# Quality-based VBR (integer) +#sout-x264-crf=23 + +# Min QP (integer) +#sout-x264-qpmin=10 + +# Max QP (integer) +#sout-x264-qpmax=51 + +# Max QP step (integer) +#sout-x264-qpstep=4 + +# Average bitrate tolerance (float) +#sout-x264-ratetol=1.000000 + +# Max local bitrate (integer) +#sout-x264-vbv-maxrate=0 + +# VBV buffer (integer) +#sout-x264-vbv-bufsize=0 + +# Initial VBV buffer occupancy (float) +#sout-x264-vbv-init=0.900000 + +# QP factor between I and P (float) +#sout-x264-ipratio=1.400000 + +# QP factor between P and B (float) +#sout-x264-pbratio=1.300000 + +# QP difference between chroma and luma (integer) +#sout-x264-chroma-qp-offset=0 + +# Multipass ratecontrol (integer) +#sout-x264-pass=0 + +# QP curve compression (float) +#sout-x264-qcomp=0.600000 + +# Reduce fluctuations in QP (float) +#sout-x264-cplxblur=20.000000 + +# Reduce fluctuations in QP (float) +#sout-x264-qblur=0.500000 + +# How AQ distributes bits (integer) +#sout-x264-aq-mode=1 + +# Strength of AQ (float) +#sout-x264-aq-strength=1.000000 + +# Partitions to consider (string) +#sout-x264-partitions=normal + +# Direct MV prediction mode (string) +#sout-x264-direct=spatial + +# Direct prediction size (integer) +#sout-x264-direct-8x8=1 + +# Weighted prediction for B-frames (boolean) +#sout-x264-weightb=1 + +# Weighted prediction for P-frames (integer) +#sout-x264-weightp=2 + +# Integer pixel motion estimation method (string) +#sout-x264-me=hex + +# Maximum motion vector search range (integer) +#sout-x264-merange=16 + +# Maximum motion vector length (integer) +#sout-x264-mvrange=-1 + +# Minimum buffer space between threads (integer) +#sout-x264-mvrange-thread=-1 + +# Subpixel motion estimation and partition decision quality (integer) +#sout-x264-subme=7 + +# Decide references on a per partition basis (boolean) +#sout-x264-mixed-refs=1 + +# Chroma in motion estimation (boolean) +#sout-x264-chroma-me=1 + +# Adaptive spatial transform size (boolean) +#sout-x264-8x8dct=1 + +# Trellis RD quantization (integer) +#sout-x264-trellis=1 + +# Framecount to use on frametype lookahead (integer) +#sout-x264-lookahead=40 + +# Use Periodic Intra Refresh (boolean) +#sout-x264-intra-refresh=0 + +# Use mb-tree ratecontrol (boolean) +#sout-x264-mbtree=1 + +# Early SKIP detection on P-frames (boolean) +#sout-x264-fast-pskip=1 + +# Coefficient thresholding on P-frames (boolean) +#sout-x264-dct-decimate=1 + +# Noise reduction (integer) +#sout-x264-nr=0 + +# Inter luma quantization deadzone (integer) +#sout-x264-deadzone-inter=21 + +# Intra luma quantization deadzone (integer) +#sout-x264-deadzone-intra=11 + +# Non-deterministic optimizations when threaded (boolean) +#sout-x264-non-deterministic=0 + +# CPU optimizations (boolean) +#sout-x264-asm=1 + +# PSNR computation (boolean) +#sout-x264-psnr=0 + +# SSIM computation (boolean) +#sout-x264-ssim=0 + +# Quiet mode (boolean) +#sout-x264-quiet=0 + +# SPS and PPS id numbers (integer) +#sout-x264-sps-id=0 + +# Access unit delimiters (boolean) +#sout-x264-aud=0 + +# Statistics (boolean) +#sout-x264-verbose=0 + +# Filename for 2 pass stats file (string) +#sout-x264-stats=x264_2pass.log + +# Default preset setting used (string) +#sout-x264-preset= + +# Default tune setting used (string) +#sout-x264-tune= + +# x264 advanced options (string) +#sout-x264-options= + +[x26410b] # H.264/MPEG-4 Part 10/AVC encoder (x264 10-bit) + +# Maximum GOP size (integer) +#sout-x26410b-keyint=250 + +# Minimum GOP size (integer) +#sout-x26410b-min-keyint=25 + +# Use recovery points to close GOPs (boolean) +#sout-x26410b-opengop=0 + +# Enable compatibility hacks for Blu-ray support (boolean) +#sout-x26410b-bluray-compat=0 + +# Extra I-frames aggressivity (integer) +#sout-x26410b-scenecut=40 + +# B-frames between I and P (integer) +#sout-x26410b-bframes=3 + +# Adaptive B-frame decision (integer) +#sout-x26410b-b-adapt=1 + +# Influence (bias) B-frames usage (integer) +#sout-x26410b-b-bias=0 + +# Keep some B-frames as references (string) +#sout-x26410b-bpyramid=normal + +# CABAC (boolean) +#sout-x26410b-cabac=1 + +# Use fullrange instead of TV colorrange (boolean) +#sout-x26410b-fullrange=0 + +# Number of reference frames (integer) +#sout-x26410b-ref=3 + +# Skip loop filter (boolean) +#sout-x26410b-nf=0 + +# Loop filter AlphaC0 and Beta parameters alpha:beta (string) +#sout-x26410b-deblock=0:0 + +# Strength of psychovisual optimization, default is "1.0:0.0" (string) +#sout-x26410b-psy-rd=1.0:0.0 + +# Use Psy-optimizations (boolean) +#sout-x26410b-psy=1 + +# H.264 level (string) +#sout-x26410b-level=0 + +# H.264 profile (string) +#sout-x26410b-profile=high + +# Interlaced mode (boolean) +#sout-x26410b-interlaced=0 + +# Frame packing (integer) +#sout-x26410b-frame-packing=-1 + +# Force number of slices per frame (integer) +#sout-x26410b-slices=0 + +# Limit the size of each slice in bytes (integer) +#sout-x26410b-slice-max-size=0 + +# Limit the size of each slice in macroblocks (integer) +#sout-x26410b-slice-max-mbs=0 + +# HRD-timing information (string) +#sout-x26410b-hrd=none + +# Set QP (integer) +#sout-x26410b-qp=-1 + +# Quality-based VBR (integer) +#sout-x26410b-crf=23 + +# Min QP (integer) +#sout-x26410b-qpmin=10 + +# Max QP (integer) +#sout-x26410b-qpmax=51 + +# Max QP step (integer) +#sout-x26410b-qpstep=4 + +# Average bitrate tolerance (float) +#sout-x26410b-ratetol=1.000000 + +# Max local bitrate (integer) +#sout-x26410b-vbv-maxrate=0 + +# VBV buffer (integer) +#sout-x26410b-vbv-bufsize=0 + +# Initial VBV buffer occupancy (float) +#sout-x26410b-vbv-init=0.900000 + +# QP factor between I and P (float) +#sout-x26410b-ipratio=1.400000 + +# QP factor between P and B (float) +#sout-x26410b-pbratio=1.300000 + +# QP difference between chroma and luma (integer) +#sout-x26410b-chroma-qp-offset=0 + +# Multipass ratecontrol (integer) +#sout-x26410b-pass=0 + +# QP curve compression (float) +#sout-x26410b-qcomp=0.600000 + +# Reduce fluctuations in QP (float) +#sout-x26410b-cplxblur=20.000000 + +# Reduce fluctuations in QP (float) +#sout-x26410b-qblur=0.500000 + +# How AQ distributes bits (integer) +#sout-x26410b-aq-mode=1 + +# Strength of AQ (float) +#sout-x26410b-aq-strength=1.000000 + +# Partitions to consider (string) +#sout-x26410b-partitions=normal + +# Direct MV prediction mode (string) +#sout-x26410b-direct=spatial + +# Direct prediction size (integer) +#sout-x26410b-direct-8x8=1 + +# Weighted prediction for B-frames (boolean) +#sout-x26410b-weightb=1 + +# Weighted prediction for P-frames (integer) +#sout-x26410b-weightp=2 + +# Integer pixel motion estimation method (string) +#sout-x26410b-me=hex + +# Maximum motion vector search range (integer) +#sout-x26410b-merange=16 + +# Maximum motion vector length (integer) +#sout-x26410b-mvrange=-1 + +# Minimum buffer space between threads (integer) +#sout-x26410b-mvrange-thread=-1 + +# Subpixel motion estimation and partition decision quality (integer) +#sout-x26410b-subme=7 + +# Decide references on a per partition basis (boolean) +#sout-x26410b-mixed-refs=1 + +# Chroma in motion estimation (boolean) +#sout-x26410b-chroma-me=1 + +# Adaptive spatial transform size (boolean) +#sout-x26410b-8x8dct=1 + +# Trellis RD quantization (integer) +#sout-x26410b-trellis=1 + +# Framecount to use on frametype lookahead (integer) +#sout-x26410b-lookahead=40 + +# Use Periodic Intra Refresh (boolean) +#sout-x26410b-intra-refresh=0 + +# Use mb-tree ratecontrol (boolean) +#sout-x26410b-mbtree=1 + +# Early SKIP detection on P-frames (boolean) +#sout-x26410b-fast-pskip=1 + +# Coefficient thresholding on P-frames (boolean) +#sout-x26410b-dct-decimate=1 + +# Noise reduction (integer) +#sout-x26410b-nr=0 + +# Inter luma quantization deadzone (integer) +#sout-x26410b-deadzone-inter=21 + +# Intra luma quantization deadzone (integer) +#sout-x26410b-deadzone-intra=11 + +# Non-deterministic optimizations when threaded (boolean) +#sout-x26410b-non-deterministic=0 + +# CPU optimizations (boolean) +#sout-x26410b-asm=1 + +# PSNR computation (boolean) +#sout-x26410b-psnr=0 + +# SSIM computation (boolean) +#sout-x26410b-ssim=0 + +# Quiet mode (boolean) +#sout-x26410b-quiet=0 + +# SPS and PPS id numbers (integer) +#sout-x26410b-sps-id=0 + +# Access unit delimiters (boolean) +#sout-x26410b-aud=0 + +# Statistics (boolean) +#sout-x26410b-verbose=0 + +# Filename for 2 pass stats file (string) +#sout-x26410b-stats=x264_2pass.log + +# Default preset setting used (string) +#sout-x26410b-preset= + +# Default tune setting used (string) +#sout-x26410b-tune= + +# x264 advanced options (string) +#sout-x26410b-options= + +[vpx] # WebM video decoder + +# Quality mode (integer) +#sout-vpx-quality-mode=1000000 + +[vorbis] # Vorbis audio decoder + +# Encoding quality (integer) +#sout-vorbis-quality=0 + +# Maximum encoding bitrate (integer) +#sout-vorbis-max-bitrate=0 + +# Minimum encoding bitrate (integer) +#sout-vorbis-min-bitrate=0 + +# CBR encoding (boolean) +#sout-vorbis-cbr=0 + +[twolame] # Libtwolame audio encoder + +# Encoding quality (float) +#sout-twolame-quality=0.000000 + +# Stereo mode (integer) +#sout-twolame-mode=0 + +# VBR mode (boolean) +#sout-twolame-vbr=0 + +# Psycho-acoustic model (integer) +#sout-twolame-psy=3 + +[ttml] # TTML subtitles decoder + +# Subtitle justification (integer) +#ttml-align=0 + +[theora] # Theora video decoder + +# Post processing quality (integer) +#theora-postproc=-1 + +# Encoding quality (integer) +#sout-theora-quality=2 + +[telx] # Teletext subtitles decoder + +# Override page (integer) +#telx-override-page=-1 + +# Ignore subtitle flag (boolean) +#telx-ignore-subtitle-flag=0 + +# Workaround for France (boolean) +#telx-french-workaround=0 + +[svgdec] # SVG video decoder + +# Image width (integer) +#svg-width=-1 + +# Image height (integer) +#svg-height=-1 + +# Scale factor (float) +#svg-scale=-1.000000 + +[svcdsub] # Philips OGT (SVCD subtitle) decoder + +[subsusf] # USF subtitles decoder + +# Formatted Subtitles (boolean) +#subsdec-formatted=1 + +[subsdec] # Text subtitle decoder + +# Subtitle justification (integer) +#subsdec-align=-1 + +# Subtitle text encoding (string) +#subsdec-encoding= + +# UTF-8 subtitle autodetection (boolean) +#subsdec-autodetect-utf8=1 + +[spudec] # DVD subtitles decoder + +# Disable DVD subtitle transparency (boolean) +#dvdsub-transparency=0 + +[speex] # Speex audio decoder + +# Mode (integer) +#sout-speex-mode=0 + +# Encoding complexity (integer) +#sout-speex-complexity=3 + +# CBR encoding (boolean) +#sout-speex-cbr=0 + +# Encoding quality (float) +#sout-speex-quality=8.000000 + +# Maximal bitrate (integer) +#sout-speex-max-bitrate=0 + +# Voice activity detection (boolean) +#sout-speex-vad=1 + +# Discontinuous Transmission (boolean) +#sout-speex-dtx=0 + +[schroedinger] # Dirac video decoder using libschroedinger + +# Rate control method (string) +#sout-schro-rate-control= + +# Constant quality factor (float) +#sout-schro-quality=-1.000000 + +# Noise Threshold (float) +#sout-schro-noise-threshold=-1.000000 + +# CBR bitrate (kbps) (integer) +#sout-schro-bitrate=-1 + +# Maximum bitrate (kbps) (integer) +#sout-schro-max-bitrate=-1 + +# Minimum bitrate (kbps) (integer) +#sout-schro-min-bitrate=-1 + +# GOP structure (string) +#sout-schro-gop-structure= + +# GOP length (integer) +#sout-schro-gop-length=-1 + +# Chroma format (string) +#sout-schro-chroma-fmt=420 + +# Picture coding mode (string) +#sout-schro-coding-mode=auto + +# Motion Vector precision (string) +#sout-schro-mv-precision= + +# Size of motion compensation blocks (string) +#sout-schro-motion-block-size= + +# Overlap of motion compensation blocks (string) +#sout-schro-motion-block-overlap= + +# Three component motion estimation (integer) +#sout-schro-me-combined=-1 + +# Enable hierarchical Motion Estimation (integer) +#sout-schro-enable-hierarchical-me=-1 + +# Number of levels of downsampling (integer) +#sout-schro-downsample-levels=-1 + +# Enable Global Motion Estimation (integer) +#sout-schro-enable-global-me=-1 + +# Enable Phase Correlation Estimation (integer) +#sout-schro-enable-phasecorr-me=-1 + +# Intra picture DWT filter (string) +#sout-schro-intra-wavelet= + +# Inter picture DWT filter (string) +#sout-schro-inter-wavelet= + +# Number of DWT iterations (integer) +#sout-schro-transform-depth=-1 + +# Enable multiple quantizers (integer) +#sout-schro-enable-multiquant=-1 + +# Size of code blocks in each subband (string) +#sout-schro-codeblock-size= + +# Prefilter (string) +#sout-schro-filtering= + +# Amount of prefiltering (float) +#sout-schro-filter-value=-1.000000 + +# Enable Scene Change Detection (integer) +#sout-schro-enable-scd=-1 + +# perceptual weighting method (string) +#sout-schro-perceptual-weighting= + +# perceptual distance (float) +#sout-schro-perceptual-distance=-1.000000 + +# Disable arithmetic coding (integer) +#sout-schro-enable-noarith=-1 + +# Horizontal slices per frame (integer) +#sout-schro-horiz-slices=-1 + +# Vertical slices per frame (integer) +#sout-schro-vert-slices=-1 + +# Force Profile (string) +#sout-schro-force-profile= + +[qsv] # Intel QuickSync Video encoder for MPEG4-Part10/MPEG2 (aka H.264/H.262) + +# Enable software mode (boolean) +#sout-qsv-software=0 + +# Codec Profile (string) +#sout-qsv-h264-profile=unspecified + +# Codec Level (string) +#sout-qsv-h264-level=unspecified + +# Codec Profile (string) +#sout-qsv-mpeg2-profile=unspecified + +# Codec Level (string) +#sout-qsv-mpeg2-level=unspecified + +# Group of Picture size (integer) +#sout-qsv-gop-size=32 + +# Group of Picture Reference Distance (integer) +#sout-qsv-gop-refdist=4 + +# IDR interval (integer) +#sout-qsv-idr-interval=0 + +# Target Usage (string) +#sout-qsv-target-usage=quality + +# Rate Control Method (string) +#sout-qsv-rc-method=vbr + +# Quantization parameter (integer) +#sout-qsv-qp=0 + +# Quantization parameter for I-frames (integer) +#sout-qsv-qpi=0 + +# Quantization parameter for P-frames (integer) +#sout-qsv-qpp=0 + +# Quantization parameter for B-frames (integer) +#sout-qsv-qpb=0 + +# Maximum Bitrate (integer) +#sout-qsv-bitrate-max=0 + +# Accuracy of RateControl (integer) +#sout-qsv-accuracy=0 + +# Convergence time of 'avbr' RateControl (integer) +#sout-qsv-convergence=0 + +# Number of slices per frame (integer) +#sout-qsv-num-slice=0 + +# Number of reference frames (integer) +#sout-qsv-num-ref-frame=0 + +# Number of parallel operations (integer) +#sout-qsv-async-depth=4 + +[libass] # Subtitle renderers using libass + +# Additional fonts directory (string) +#ssa-fontsdir= + +[kate] # Kate overlay decoder + +# Formatted Subtitles (boolean) +#kate-formatted=1 + +# Use Tiger for rendering (boolean) +#kate-use-tiger=1 + +# Rendering quality (float) +#kate-tiger-quality=1.000000 + +# Default font description (string) +#kate-tiger-default-font-desc= + +# Default font effect (integer) +#kate-tiger-default-font-effect=0 + +# Default font effect strength (float) +#kate-tiger-default-font-effect-strength=0.500000 + +# Default font color (integer) +#kate-tiger-default-font-color=16777215 + +# Default font alpha (integer) +#kate-tiger-default-font-alpha=255 + +# Default background color (integer) +#kate-tiger-default-background-color=16777215 + +# Default background alpha (integer) +#kate-tiger-default-background-alpha=0 + +[jpeg] # JPEG image decoder + +# Quality level (integer) +#sout-jpeg-quality=95 + +[dvbsub] # DVB subtitles decoder + +# Subpicture position (integer) +#dvbsub-position=8 + +# Decoding X coordinate (integer) +#dvbsub-x=-1 + +# Decoding Y coordinate (integer) +#dvbsub-y=-1 + +# Encoding X coordinate (integer) +#sout-dvbsub-x=-1 + +# Encoding Y coordinate (integer) +#sout-dvbsub-y=-1 + +[ddummy] # Dummy decoder + +# Save raw codec data (boolean) +#dummy-save-es=0 + +[dca] # DTS Coherent Acoustics audio decoder + +# DTS dynamic range compression (boolean) +#dts-dynrng=1 + +[dav1d] # Dav1d video decoder + +# Frames Threads (integer) +#dav1d-thread-frames=0 + +[cc] # Closed Captions decoder + +# Opacity (boolean) +#cc-opaque=1 + +[avcodec] # FFmpeg audio/video decoder + +# Direct rendering (boolean) +#avcodec-dr=1 + +# Show corrupted frames (boolean) +#avcodec-corrupted=1 + +# Error resilience (integer) +#avcodec-error-resilience=1 + +# Workaround bugs (integer) +#avcodec-workaround-bugs=1 + +# Hurry up (boolean) +#avcodec-hurry-up=1 + +# Skip frame (default=0) (integer) +#avcodec-skip-frame=0 + +# Skip idct (default=0) (integer) +#avcodec-skip-idct=0 + +# Allow speed tricks (boolean) +#avcodec-fast=0 + +# Skip the loop filter for H.264 decoding (integer) +#avcodec-skiploopfilter=0 + +# Debug mask (integer) +#avcodec-debug=0 + +# Codec name (string) +#avcodec-codec= + +# Hardware decoding (string) +#avcodec-hw=any + +# Threads (integer) +#avcodec-threads=0 + +# Advanced options (string) +#avcodec-options= + +# Codec name (string) +#sout-avcodec-codec= + +# Quality level (string) +#sout-avcodec-hq=rd + +# Ratio of key frames (integer) +#sout-avcodec-keyint=0 + +# Ratio of B frames (integer) +#sout-avcodec-bframes=0 + +# Hurry up (boolean) +#sout-avcodec-hurry-up=0 + +# Interlaced encoding (boolean) +#sout-avcodec-interlace=0 + +# Interlaced motion estimation (boolean) +#sout-avcodec-interlace-me=1 + +# Video bitrate tolerance (integer) +#sout-avcodec-vt=0 + +# Pre-motion estimation (boolean) +#sout-avcodec-pre-me=0 + +# Rate control buffer size (integer) +#sout-avcodec-rc-buffer-size=0 + +# Rate control buffer aggressiveness (float) +#sout-avcodec-rc-buffer-aggressivity=1.000000 + +# I quantization factor (float) +#sout-avcodec-i-quant-factor=0.000000 + +# Noise reduction (integer) +#sout-avcodec-noise-reduction=0 + +# MPEG4 quantization matrix (boolean) +#sout-avcodec-mpeg4-matrix=0 + +# Minimum video quantizer scale (integer) +#sout-avcodec-qmin=0 + +# Maximum video quantizer scale (integer) +#sout-avcodec-qmax=0 + +# Trellis quantization (boolean) +#sout-avcodec-trellis=0 + +# Fixed quantizer scale (float) +#sout-avcodec-qscale=3.000000 + +# Strict standard compliance (integer) +#sout-avcodec-strict=0 + +# Luminance masking (float) +#sout-avcodec-lumi-masking=0.000000 + +# Darkness masking (float) +#sout-avcodec-dark-masking=0.000000 + +# Motion masking (float) +#sout-avcodec-p-masking=0.000000 + +# Border masking (float) +#sout-avcodec-border-masking=0.000000 + +# Luminance elimination (integer) +#sout-avcodec-luma-elim-threshold=0 + +# Chrominance elimination (integer) +#sout-avcodec-chroma-elim-threshold=0 + +# Specify AAC audio profile to use (string) +#sout-avcodec-aac-profile=low + +# Advanced options (string) +#sout-avcodec-options= + +[a52] # ATSC A/52 (AC-3) audio decoder + +# A/52 dynamic range compression (boolean) +#a52-dynrng=1 + +[jack] # JACK audio output + +# Automatically connect to writable clients (boolean) +#jack-auto-connect=1 + +# Connect to clients matching (string) +#jack-connect-regex=system + +# JACK client name (string) +#jack-name= + +# Software gain (float) +#jack-gain=1.000000 + +[amem] # Audio memory output + +# Sample format (string) +#amem-format=S16N + +# Sample rate (integer) +#amem-rate=44100 + +# Channels count (integer) +#amem-channels=2 + +[alsa] # ALSA audio output + +# Audio output device (string) +#alsa-audio-device=default + +# Audio output channels (integer) +#alsa-audio-channels=6 + +# Software gain (float) +#alsa-gain=1.000000 + +[afile] # File audio output + +# Output file (string) +#audiofile-file=audiofile.wav + +# Output format (string) +#audiofile-format=s16 + +# Number of output channels (integer) +#audiofile-channels=0 + +# Add WAVE header (boolean) +#audiofile-wav=1 + +[stereo_widen] # Simple stereo widening effect + +# Delay time (float) +#stereowiden-delay=20.000000 + +# Feedback gain (float) +#stereowiden-feedback=0.300000 + +# Crossfeed (float) +#stereowiden-crossfeed=0.300000 + +# Dry mix (float) +#stereowiden-dry-mix=0.800000 + +[speex_resampler] # Speex resampler + +# Resampling quality (integer) +#speex-resampler-quality=4 + +[spatializer] # Audio Spatializer + +# Room size (float) +#spatializer-roomsize=0.850000 + +# Room width (float) +#spatializer-width=1.000000 + +# Wet (float) +#spatializer-wet=0.400000 + +# Dry (float) +#spatializer-dry=0.500000 + +# Damp (float) +#spatializer-damp=0.500000 + +[spatialaudio] # Ambisonics renderer and binauralizer + +# Headphones mode (binaural) (boolean) +#spatialaudio-headphones=0 + +# HRTF file for the binauralization (string) +#hrtf-file= + +[soxr] # soxr + +# Resampling quality (integer) +#soxr-resampler-quality=2 + +[scaletempo] # Audio tempo scaler synched with rate + +# Stride Length (integer) +#scaletempo-stride=30 + +# Overlap Length (float) +#scaletempo-overlap=0.200000 + +# Search Length (integer) +#scaletempo-search=14 + +[scaletempo_pitch] # Pitch Shifter + +# Stride Length (integer) +#scaletempo-stride=30 + +# Overlap Length (float) +#scaletempo-overlap=0.200000 + +# Search Length (integer) +#scaletempo-search=14 + +# Pitch Shift (float) +#pitch-shift=0.000000 + +[samplerate] # Secret Rabbit Code (libsamplerate) resampler + +# Sample rate converter type (integer) +#src-converter-type=2 + +[remap] # Audio channel remapper + +# Left (integer) +#aout-remap-channel-left=0 + +# Center (integer) +#aout-remap-channel-center=1 + +# Right (integer) +#aout-remap-channel-right=2 + +# Rear left (integer) +#aout-remap-channel-rearleft=3 + +# Rear center (integer) +#aout-remap-channel-rearcenter=4 + +# Rear right (integer) +#aout-remap-channel-rearright=5 + +# Side left (integer) +#aout-remap-channel-middleleft=6 + +# Side right (integer) +#aout-remap-channel-middleright=7 + +# Low-frequency effects (integer) +#aout-remap-channel-lfe=8 + +# Normalize channels (boolean) +#aout-remap-normalize=1 + +[param_eq] # Parametric Equalizer + +# Low freq (Hz) (float) +#param-eq-lowf=100.000000 + +# Low freq gain (dB) (float) +#param-eq-lowgain=0.000000 + +# High freq (Hz) (float) +#param-eq-highf=10000.000000 + +# High freq gain (dB) (float) +#param-eq-highgain=0.000000 + +# Freq 1 (Hz) (float) +#param-eq-f1=300.000000 + +# Freq 1 gain (dB) (float) +#param-eq-gain1=0.000000 + +# Freq 1 Q (float) +#param-eq-q1=3.000000 + +# Freq 2 (Hz) (float) +#param-eq-f2=1000.000000 + +# Freq 2 gain (dB) (float) +#param-eq-gain2=0.000000 + +# Freq 2 Q (float) +#param-eq-q2=3.000000 + +# Freq 3 (Hz) (float) +#param-eq-f3=3000.000000 + +# Freq 3 gain (dB) (float) +#param-eq-gain3=0.000000 + +# Freq 3 Q (float) +#param-eq-q3=3.000000 + +[normvol] # Volume normalizer + +# Number of audio buffers (integer) +#norm-buff-size=20 + +# Maximal volume level (float) +#norm-max-level=2.000000 + +[mono] # Stereo to mono downmixer + +# Use downmix algorithm (boolean) +#sout-mono-downmix=1 + +# Select channel to keep (integer) +#sout-mono-channel=-1 + +[headphone] # Headphone virtual spatialization effect + +# Characteristic dimension (integer) +#headphone-dim=10 + +# Compensate delay (boolean) +#headphone-compensate=0 + +# No decoding of Dolby Surround (boolean) +#headphone-dolby=0 + +[gain] # Gain control filter + +# Gain multiplier (float) +#gain-value=1.000000 + +[equalizer] # Equalizer with 10 bands + +# Equalizer preset (string) +#equalizer-preset=flat + +# Bands gain (string) +#equalizer-bands= + +# Two pass (boolean) +#equalizer-2pass=0 + +# Use VLC frequency bands (boolean) +#equalizer-vlcfreqs=1 + +# Global gain (float) +#equalizer-preamp=12.000000 + +[compressor] # Dynamic range compressor + +# RMS/peak (float) +#compressor-rms-peak=0.200000 + +# Attack time (float) +#compressor-attack=25.000000 + +# Release time (float) +#compressor-release=100.000000 + +# Threshold level (float) +#compressor-threshold=-11.000000 + +# Ratio (float) +#compressor-ratio=4.000000 + +# Knee radius (float) +#compressor-knee=5.000000 + +# Makeup gain (float) +#compressor-makeup-gain=7.000000 + +[chorus_flanger] # Sound Delay + +# Delay time (float) +#delay-time=20.000000 + +# Sweep Depth (float) +#sweep-depth=6.000000 + +# Sweep Rate (float) +#sweep-rate=6.000000 + +# Feedback gain (float) +#feedback-gain=0.500000 + +# Wet mix (float) +#wet-mix=0.400000 + +# Dry Mix (float) +#dry-mix=0.400000 + +[audiobargraph_a] # Audio part of the BarGraph function + +# Defines if BarGraph information should be sent (integer) +#audiobargraph_a-bargraph=1 + +# Sends the barGraph information every n audio packets (integer) +#audiobargraph_a-bargraph_repetition=4 + +# Defines if silence alarm information should be sent (integer) +#audiobargraph_a-silence=1 + +# Time window to use in ms (integer) +#audiobargraph_a-time_window=5000 + +# Minimum Audio level to raise the alarm (float) +#audiobargraph_a-alarm_threshold=0.020000 + +# Time between two alarm messages in ms (integer) +#audiobargraph_a-repetition_time=2000 + +[udp] # UDP stream output + +# Caching value (ms) (integer) +#sout-udp-caching=300 + +# Group packets (integer) +#sout-udp-group=1 + +[access_output_srt] # SRT stream output + +# Return poll wait after timeout milliseconds (-1 = infinite) (integer) +#poll-timeout=-1 + +# SRT latency (ms) (integer) +#latency=120 + +# Password for stream encryption (string) +#passphrase= + +# SRT maximum payload size (bytes) (integer) +#payload-size=1316 + +# SRT maximum bandwidth ceiling (bytes) (integer) +#bandwidth-overhead-limit=25 + +# Crypto key length in bytes (integer) +#key-length=16 + +# SRT Stream ID (string) +#streamid= + +[access_output_shout] # IceCAST output + +# Stream name (string) +#sout-shout-name=VLC media player - Live stream + +# Stream description (string) +#sout-shout-description=Live stream from VLC media player + +# Stream MP3 (boolean) +#sout-shout-mp3=0 + +# Genre description (string) +#sout-shout-genre=Alternative + +# URL description (string) +#sout-shout-url=http://www.videolan.org/vlc + +# Bitrate (string) +#sout-shout-bitrate= + +# Samplerate (string) +#sout-shout-samplerate= + +# Number of channels (string) +#sout-shout-channels= + +# Ogg Vorbis Quality (string) +#sout-shout-quality= + +# Stream public (boolean) +#sout-shout-public=0 + +[access_output_rist] # RIST stream output + +# RIST target packet size (bytes) (integer) +#sout-rist-packet-size=1328 + +# RIST data output caching size (ms) (integer) +#sout-rist-caching=50 + +# RIST retry-buffer queue size (ms) (integer) +#sout-rist-buffer-size=0 + +# SSRC used in RTP output (default is random, i.e. 0) (integer) +#sout-rist-ssrc=0 + +# Stream name (string) +#sout-rist-stream-name= + +[access_output_livehttp] # HTTP Live streaming output + +# Segment length (integer) +#sout-livehttp-seglen=10 + +# Number of segments (integer) +#sout-livehttp-numsegs=0 + +# Number of first segment (integer) +#sout-livehttp-initial-segment-number=1 + +# Split segments anywhere (boolean) +#sout-livehttp-splitanywhere=0 + +# Delete segments (boolean) +#sout-livehttp-delsegs=1 + +# Use muxers rate control mechanism (boolean) +#sout-livehttp-ratecontrol=0 + +# Allow cache (boolean) +#sout-livehttp-caching=0 + +# Use randomized IV for encryption (boolean) +#sout-livehttp-generate-iv=0 + +# Index file (string) +#sout-livehttp-index= + +# Full URL to put in index file (string) +#sout-livehttp-index-url= + +# AES key URI to place in playlist (string) +#sout-livehttp-key-uri= + +# AES key file (string) +#sout-livehttp-key-file= + +# File where vlc reads key-uri and keyfile-location (string) +#sout-livehttp-key-loadfile= + +[http] # HTTP stream output + +# Username (string) +#sout-http-user= + +# Password (string) +#sout-http-pwd= + +# Mime (string) +#sout-http-mime= + +# Metacube (boolean) +#sout-http-metacube=0 + +[file] # File stream output + +# Overwrite existing file (boolean) +#sout-file-overwrite=1 + +# Append to file (boolean) +#sout-file-append=0 + +# Format time and date (boolean) +#sout-file-format=0 + +# Synchronous writing (boolean) +#sout-file-sync=0 + +[access_jack] # JACK audio input + +# Pace (boolean) +#jack-input-use-vlc-pace=0 + +# Auto connection (boolean) +#jack-input-auto-connect=0 + +[xcb_screen] # Screen capture (with X11/XCB) + +# Frame rate (float) +#screen-fps=2.000000 + +# Region left column (integer) +#screen-left=0 + +# Region top row (integer) +#screen-top=0 + +# Capture region width (integer) +#screen-width=0 + +# Capture region height (integer) +#screen-height=0 + +# Follow the mouse (boolean) +#screen-follow-mouse=0 + +[vnc] # VNC client access + +# Username (string) +#rfb-user= + +# Password (string) +#rfb-password= + +# X.509 Certificate Authority (string) +#rfb-x509-ca= + +# X.509 Certificate Revocation List (string) +#rfb-x509-crl= + +# X.509 Client certificate (string) +#rfb-x509-client-cert= + +# X.509 Client private key (string) +#rfb-x509-client-key= + +# Frame rate (float) +#rfb-fps=5.000000 + +# Frame buffer depth (string) +#rfb-chroma=RV32 + +# Compression level (integer) +#rfb-compress-level=0 + +# Image quality (integer) +#rfb-quality-level=9 + +[vdr] # VDR recordings + +# Chapter offset in ms (integer) +#vdr-chapter-offset=0 + +# Frame rate (float) +#vdr-fps=25.000000 + +[v4l2] # Video4Linux input + +# Video capture device (string) +#v4l2-dev=/dev/video0 + +# VBI capture device (string) +#v4l2-vbidev= + +# Standard (string) +#v4l2-standard= + +# Video input chroma format (string) +#v4l2-chroma= + +# Input (integer) +#v4l2-input=0 + +# Audio input (integer) +#v4l2-audio-input=-1 + +# Width (integer) +#v4l2-width=0 + +# Height (integer) +#v4l2-height=0 + +# Picture aspect-ratio n:m (string) +#v4l2-aspect-ratio=4:3 + +# Frame rate (string) +#v4l2-fps=60 + +# Radio device (string) +#v4l2-radio-dev=/dev/radio0 + +# Frequency (integer) +#v4l2-tuner-frequency=-1 + +# Audio mode (integer) +#v4l2-tuner-audio-mode=3 + +# Reset controls (boolean) +#v4l2-controls-reset=0 + +# Brightness (integer) +#v4l2-brightness=-1 + +# Automatic brightness (integer) +#v4l2-brightness-auto=-1 + +# Contrast (integer) +#v4l2-contrast=-1 + +# Saturation (integer) +#v4l2-saturation=-1 + +# Hue (integer) +#v4l2-hue=-1 + +# Automatic hue (integer) +#v4l2-hue-auto=-1 + +# White balance temperature (K) (integer) +#v4l2-white-balance-temperature=-1 + +# Automatic white balance (integer) +#v4l2-auto-white-balance=-1 + +# Red balance (integer) +#v4l2-red-balance=-1 + +# Blue balance (integer) +#v4l2-blue-balance=-1 + +# Gamma (integer) +#v4l2-gamma=-1 + +# Automatic gain (integer) +#v4l2-autogain=-1 + +# Gain (integer) +#v4l2-gain=-1 + +# Sharpness (integer) +#v4l2-sharpness=-1 + +# Chroma gain (integer) +#v4l2-chroma-gain=-1 + +# Automatic chroma gain (integer) +#v4l2-chroma-gain-auto=-1 + +# Power line frequency (integer) +#v4l2-power-line-frequency=-1 + +# Backlight compensation (integer) +#v4l2-backlight-compensation=-1 + +# Band-stop filter (integer) +#v4l2-band-stop-filter=-1 + +# Horizontal flip (boolean) +#v4l2-hflip=0 + +# Vertical flip (boolean) +#v4l2-vflip=0 + +# Rotate (degrees) (integer) +#v4l2-rotate=-1 + +# Color killer (integer) +#v4l2-color-killer=-1 + +# Color effect (integer) +#v4l2-color-effect=-1 + +# Audio volume (integer) +#v4l2-audio-volume=-1 + +# Audio balance (integer) +#v4l2-audio-balance=-1 + +# Mute (boolean) +#v4l2-audio-mute=0 + +# Bass level (integer) +#v4l2-audio-bass=-1 + +# Treble level (integer) +#v4l2-audio-treble=-1 + +# Loudness mode (boolean) +#v4l2-audio-loudness=0 + +# v4l2 driver controls (string) +#v4l2-set-ctrls= + +[udp] # UDP input + +# UDP Source timeout (sec) (integer) +#udp-timeout=-1 + +[timecode] # Time code subpicture elementary stream generator + +# Frame rate (string) +#timecode-fps=25/1 + +[smb] # SMB input + +# Username (string) +#smb-user= + +# Password (string) +#smb-pwd= + +# SMB domain (string) +#smb-domain= + +[shm] # Shared memory framebuffer + +# Frame rate (float) +#shm-fps=10.000000 + +# Frame buffer depth (integer) +#shm-depth=0 + +# Frame buffer width (integer) +#shm-width=800 + +# Frame buffer height (integer) +#shm-height=480 + +[sftp] # SFTP input + +# SFTP port (integer) +#sftp-port=22 + +# Username (string) +#sftp-user= + +# Password (string) +#sftp-pwd= + +[satip] # SAT>IP Receiver Plugin + +# Receive buffer (integer) +#satip-buffer=4194304 + +# Request multicast stream (boolean) +#satip-multicast=0 + +# Host (string) +#satip-host= + +[rtp] # Real-Time Protocol (RTP) input + +# RTCP (local) port (integer) +#rtcp-port=0 + +# SRTP key (hexadecimal) (string) +#srtp-key= + +# SRTP salt (hexadecimal) (string) +#srtp-salt= + +# Maximum RTP sources (integer) +#rtp-max-src=1 + +# RTP source timeout (sec) (integer) +#rtp-timeout=5 + +# Maximum RTP sequence number dropout (integer) +#rtp-max-dropout=3000 + +# Maximum RTP sequence number misordering (integer) +#rtp-max-misorder=100 + +# RTP payload format assumed for dynamic payloads (string) +#rtp-dynamic-pt= + +[rist] # RIST input + +# RIST maximum packet size (bytes) (integer) +#packet-size=1472 + +# RIST demux/decode maximum jitter (default is 5ms) (integer) +#maximum-jitter=5 + +# RIST latency (ms) (integer) +#latency=1000 + +# RIST nack retry interval (ms) (integer) +#retry-interval=132 + +# RIST reorder buffer (ms) (integer) +#reorder-buffer=70 + +# RIST maximum retry count (integer) +#max-retries=10 + +# RIST nack type, 0 = range, 1 = bitmask. Default is range (integer) +#nack-type=0 + +# Disable NACK output packets (boolean) +#disable-nacks=0 + +# Do not check for a valid rtcp message from the encoder (boolean) +#mcast-blind-nacks=0 + +[live555] # RTP/RTSP/SDP demuxer (using Live555) + +# Use RTP over RTSP (TCP) (boolean) +#rtsp-tcp=0 + +# Client port (integer) +#rtp-client-port=-1 + +# Force multicast RTP via RTSP (boolean) +#rtsp-mcast=0 + +# Tunnel RTSP and RTP over HTTP (boolean) +#rtsp-http=0 + +# HTTP tunnel port (integer) +#rtsp-http-port=80 + +# Kasenna RTSP dialect (boolean) +#rtsp-kasenna=0 + +# WMServer RTSP dialect (boolean) +#rtsp-wmserver=0 + +# Username (string) +#rtsp-user= + +# Password (string) +#rtsp-pwd= + +# RTSP frame buffer size (integer) +#rtsp-frame-buffer-size=250000 + +[linsys_sdi] # SDI Input + +# Link # (integer) +#linsys-sdi-link=0 + +# Video ID (integer) +#linsys-sdi-id-video=0 + +# Aspect ratio (string) +#linsys-sdi-aspect-ratio= + +# Audio configuration (string) +#linsys-sdi-audio=0=1,1 + +# Teletext configuration (string) +#linsys-sdi-telx= + +# Teletext language (string) +#linsys-sdi-telx-lang= + +[linsys_hdsdi] # HD-SDI Input + +# Link # (integer) +#linsys-hdsdi-link=0 + +# Video ID (integer) +#linsys-hdsdi-id-video=0 + +# Aspect ratio (string) +#linsys-hdsdi-aspect-ratio= + +# Audio configuration (string) +#linsys-hdsdi-audio=0=1,1 + +[libbluray] # Blu-ray Disc support (libbluray) + +# Blu-ray menus (boolean) +#bluray-menu=1 + +# Region code (string) +#bluray-region=B + +[access] # HTTPS input + +# Cookies forwarding (boolean) +#http-forward-cookies=1 + +# User agent (string) +#http-user-agent= + +[http] # HTTP input + +# Auto re-connect (boolean) +#http-reconnect=0 + +[ftp] # FTP input + +# Username (string) +#ftp-user= + +# Password (string) +#ftp-pwd= + +# FTP account (string) +#ftp-account=anonymous + +[filesystem] # File input + +# List special files (boolean) +#list-special-files=0 + +[dvdread] # DVDRead Input (no menu support) + +# DVD angle (integer) +#dvdread-angle=1 + +[dvdnav] # DVDnav Input + +# DVD angle (integer) +#dvdnav-angle=1 + +# Start directly in menu (boolean) +#dvdnav-menu=1 + +[dvb] # DVB input with v4l2 support + +# Probe DVB card for capabilities (boolean) +#dvb-probe=1 + +# Satellite scanning config (string) +#dvb-satellite= + +# Scan tuning list (string) +#dvb-scanlist= + +# Use NIT for scanning services (boolean) +#dvb-scan-nit=1 + +[dtv] # Digital Television and Radio + +# DVB adapter (integer) +#dvb-adapter=0 + +# DVB device (integer) +#dvb-device=0 + +# Do not demultiplex (boolean) +#dvb-budget-mode=0 + +# Frequency (Hz) (integer) +#dvb-frequency=0 + +# Spectrum inversion (integer) +#dvb-inversion=-1 + +# Bandwidth (MHz) (integer) +#dvb-bandwidth=0 + +# Transmission mode (integer) +#dvb-transmission=0 + +# Guard interval (string) +#dvb-guard= + +# High-priority code rate (string) +#dvb-code-rate-hp= + +# Low-priority code rate (string) +#dvb-code-rate-lp= + +# Hierarchy mode (integer) +#dvb-hierarchy=-1 + +# DVB-T2 Physical Layer Pipe (integer) +#dvb-plp-id=0 + +# Layer A modulation (string) +#dvb-a-modulation= + +# Layer A code rate (string) +#dvb-a-fec= + +# Layer A segments count (integer) +#dvb-a-count=0 + +# Layer A time interleaving (integer) +#dvb-a-interleaving=0 + +# Layer B modulation (string) +#dvb-b-modulation= + +# Layer B code rate (string) +#dvb-b-fec= + +# Layer B segments count (integer) +#dvb-b-count=0 + +# Layer B time interleaving (integer) +#dvb-b-interleaving=0 + +# Layer C modulation (string) +#dvb-c-modulation= + +# Layer C code rate (string) +#dvb-c-fec= + +# Layer C segments count (integer) +#dvb-c-count=0 + +# Layer C time interleaving (integer) +#dvb-c-interleaving=0 + +# Modulation / Constellation (string) +#dvb-modulation= + +# Symbol rate (bauds) (integer) +#dvb-srate=0 + +# FEC code rate (string) +#dvb-fec= + +# Stream identifier (integer) +#dvb-stream=0 + +# Pilot (integer) +#dvb-pilot=-1 + +# Roll-off factor (integer) +#dvb-rolloff=-1 + +# Transport stream ID (integer) +#dvb-ts-id=0 + +# Polarization (Voltage) (string) +#dvb-polarization= + +# (integer) +#dvb-voltage=13 + +# High LNB voltage (boolean) +#dvb-high-voltage=0 + +# Local oscillator low frequency (kHz) (integer) +#dvb-lnb-low=0 + +# Local oscillator high frequency (kHz) (integer) +#dvb-lnb-high=0 + +# Universal LNB switch frequency (kHz) (integer) +#dvb-lnb-switch=11700000 + +# DiSEqC LNB number (integer) +#dvb-satno=0 + +# Uncommitted DiSEqC LNB number (integer) +#dvb-uncommitted=0 + +# Continuous 22kHz tone (integer) +#dvb-tone=-1 + +[cdda] # Audio CD input + +# Audio CD device (string) +#cd-audio=/dev/sr0 + +# Musicbrainz Server (string) +#musicbrainz-server=musicbrainz.org + +# CDDB Server (string) +#cddb-server=freedb.videolan.org + +# CDDB port (integer) +#cddb-port=80 + +[avio] # libavformat AVIO access + +# Advanced options (string) +#avio-options= + +# Advanced options (string) +#sout-avio-options= + +[access_srt] # SRT input + +# Return poll wait after timeout milliseconds (-1 = infinite) (integer) +#poll-timeout=-1 + +# SRT latency (ms) (integer) +#latency=120 + +# Password for stream encryption (string) +#passphrase= + +# Crypto key length in bytes (integer) +#key-length=16 + +# SRT Stream ID (string) +#streamid= + +[access_mms] # Microsoft Media Server (MMS) input + +# TCP/UDP timeout (ms) (integer) +#mms-timeout=5000 + +# Force selection of all streams (boolean) +#mms-all=0 + +# Maximum bitrate (integer) +#mms-maxbitrate=0 + +[imem] # Memory input + +# ID (integer) +#imem-id=-1 + +# Group (integer) +#imem-group=0 + +# Category (integer) +#imem-cat=0 + +# Codec (string) +#imem-codec= + +# Language (string) +#imem-language= + +# Sample rate (integer) +#imem-samplerate=0 + +# Channels count (integer) +#imem-channels=0 + +# Width (integer) +#imem-width=0 + +# Height (integer) +#imem-height=0 + +# Display aspect ratio (string) +#imem-dar= + +# Frame rate (string) +#imem-fps= + +# Size (integer) +#imem-size=0 + +[concat] # Concatenated inputs + +# Inputs list (string) +#concat-list= + +[access_alsa] # ALSA audio capture + +# Stereo (boolean) +#alsa-stereo=1 + +# Sample rate (integer) +#alsa-samplerate=48000 + +[core] # core program + +# Enable audio (boolean) +#audio=1 + +# Audio gain (float) +#gain=1.000000 + +# Audio output volume step (float) +#volume-step=12.800000 + +# Remember the audio volume (boolean) +#volume-save=1 + +# Force S/PDIF support (boolean) +#spdif=0 + +# Force detection of Dolby Surround (integer) +#force-dolby-surround=0 + +# Stereo audio output mode (integer) +#stereo-mode=0 + +# Audio desynchronization compensation (integer) +#audio-desync=0 + +# Replay gain mode (string) +#audio-replay-gain-mode=none + +# Replay preamp (float) +#audio-replay-gain-preamp=0.000000 + +# Default replay gain (float) +#audio-replay-gain-default=-7.000000 + +# Peak protection (boolean) +#audio-replay-gain-peak-protection=1 + +# Enable time stretching audio (boolean) +#audio-time-stretch=1 + +# Audio output module (string) +#aout= + +# Media role (string) +#role=video + +# Audio filters (string) +#audio-filter= + +# Audio visualizations (string) +#audio-visual=none + +# Audio resampler (string) +#audio-resampler= + +# Enable video (boolean) +#video=1 + +# Grayscale video output (boolean) +#grayscale=0 + +# Fullscreen video output (boolean) +#fullscreen=0 + +# Embedded video (boolean) +#embedded-video=1 + +# (boolean) +#xlib=1 + +# Drop late frames (boolean) +#drop-late-frames=1 + +# Skip frames (boolean) +#skip-frames=1 + +# Quiet synchro (boolean) +#quiet-synchro=0 + +# Key press events (boolean) +#keyboard-events=1 + +# Mouse events (boolean) +#mouse-events=1 + +# Always on top (boolean) +#video-on-top=0 + +# Enable wallpaper mode (boolean) +#video-wallpaper=0 + +# Disable screensaver (boolean) +#disable-screensaver=1 + +# Show media title on video (boolean) +#video-title-show=1 + +# Show video title for x milliseconds (integer) +#video-title-timeout=5000 + +# Position of video title (integer) +#video-title-position=8 + +# Hide cursor and fullscreen controller after x milliseconds (integer) +#mouse-hide-timeout=1000 + +# Video snapshot directory (or filename) (string) +#snapshot-path= + +# Video snapshot file prefix (string) +#snapshot-prefix=vlcsnap- + +# Video snapshot format (string) +#snapshot-format=png + +# Display video snapshot preview (boolean) +#snapshot-preview=1 + +# Use sequential numbers instead of timestamps (boolean) +#snapshot-sequential=0 + +# Video snapshot width (integer) +#snapshot-width=-1 + +# Video snapshot height (integer) +#snapshot-height=-1 + +# Video width (integer) +#width=-1 + +# Video height (integer) +#height=-1 + +# Video X coordinate (integer) +#video-x=0 + +# Video Y coordinate (integer) +#video-y=0 + +# Video cropping (string) +#crop= + +# Custom crop ratios list (string) +#custom-crop-ratios= + +# Source aspect ratio (string) +#aspect-ratio= + +# Video Auto Scaling (boolean) +#autoscale=1 + +# Monitor pixel aspect ratio (string) +#monitor-par= + +# Custom aspect ratios list (string) +#custom-aspect-ratios= + +# Fix HDTV height (boolean) +#hdtv-fix=1 + +# Window decorations (boolean) +#video-deco=1 + +# Video title (string) +#video-title= + +# Video alignment (integer) +#align=0 + +# Zoom video (float) +#zoom=1.000000 + +# Deinterlace (integer) +#deinterlace=-1 + +# Deinterlace mode (string) +#deinterlace-mode=auto + +# Video output module (string) +#vout= + +# Video filter module (string) +#video-filter= + +# Video splitter module (string) +#video-splitter= + +# Enable sub-pictures (boolean) +#spu=1 + +# On Screen Display (boolean) +#osd=1 + +# Text rendering module (string) +#text-renderer= + +# Use subtitle file (string) +#sub-file= + +# Autodetect subtitle files (boolean) +#sub-autodetect-file=1 + +# Subtitle autodetection fuzziness (integer) +#sub-autodetect-fuzzy=3 + +# Subtitle autodetection paths (string) +#sub-autodetect-path=./Subtitles, ./subtitles, ./Subs, ./subs + +# Force subtitle position (integer) +#sub-margin=0 + +# Subpictures source module (string) +#sub-source= + +# Subpictures filter module (string) +#sub-filter= + +# Program (integer) +#program=0 + +# Programs (string) +#programs= + +# Audio track (integer) +#audio-track=-1 + +# Subtitle track (integer) +#sub-track=-1 + +# Audio language (string) +#audio-language= + +# Subtitle language (string) +#sub-language= + +# Menu language (string) +#menu-language= + +# Audio track ID (integer) +#audio-track-id=-1 + +# Subtitle track ID (integer) +#sub-track-id=-1 + +# Preferred Closed Captions decoder (integer) +#captions=608 + +# Preferred video resolution (integer) +#preferred-resolution=-1 + +# Input repetitions (integer) +#input-repeat=0 + +# Start time (float) +#start-time=0.000000 + +# Stop time (float) +#stop-time=0.000000 + +# Run time (float) +#run-time=0.000000 + +# Fast seek (boolean) +#input-fast-seek=0 + +# Playback speed (float) +#rate=1.000000 + +# Input list (string) +#input-list= + +# Input slave (experimental) (string) +#input-slave= + +# Bookmarks list for a stream (string) +#bookmarks= + +# DVD device (string) +#dvd=/dev/sr0 + +# VCD device (string) +#vcd=/dev/sr0 + +# MTU of the network interface (integer) +#mtu=1400 + +# TCP connection timeout (integer) +#ipv4-timeout=5000 + +# HTTP server address (string) +#http-host= + +# HTTP server port (integer) +#http-port=8080 + +# HTTPS server port (integer) +#https-port=8443 + +# RTSP server address (string) +#rtsp-host= + +# RTSP server port (integer) +#rtsp-port=554 + +# HTTP/TLS server certificate (string) +#http-cert= + +# HTTP/TLS server private key (string) +#http-key= + +# SOCKS server (string) +#socks= + +# SOCKS user name (string) +#socks-user= + +# SOCKS password (string) +#socks-pwd= + +# Title metadata (string) +#meta-title= + +# Author metadata (string) +#meta-author= + +# Artist metadata (string) +#meta-artist= + +# Genre metadata (string) +#meta-genre= + +# Copyright metadata (string) +#meta-copyright= + +# Description metadata (string) +#meta-description= + +# Date metadata (string) +#meta-date= + +# URL metadata (string) +#meta-url= + +# File caching (ms) (integer) +#file-caching=1000 + +# Live capture caching (ms) (integer) +#live-caching=300 + +# Disc caching (ms) (integer) +#disc-caching=300 + +# Network caching (ms) (integer) +#network-caching=1000 + +# Clock reference average counter (integer) +#cr-average=40 + +# Clock synchronisation (integer) +#clock-synchro=-1 + +# Clock jitter (integer) +#clock-jitter=5000 + +# Network synchronisation (boolean) +#network-synchronisation=0 + +# Record directory (string) +#input-record-path= + +# Prefer native stream recording (boolean) +#input-record-native=1 + +# Timeshift directory (string) +#input-timeshift-path= + +# Timeshift granularity (integer) +#input-timeshift-granularity=-1 + +# Change title according to current media (string) +#input-title-format=$Z + +# Disable all lua plugins (boolean) +#lua=1 + +# Preferred decoders list (string) +#codec= + +# Preferred encoders list (string) +#encoder= + +# Access module (string) +#access= + +# Demux module (string) +#demux=any + +# Stream filter module (string) +#stream-filter= + +# Demux filter module (string) +#demux-filter= + +# Default stream output chain (string) +#sout= + +# Display while streaming (boolean) +#sout-display=0 + +# Keep stream output open (boolean) +#sout-keep=0 + +# Enable streaming of all ES (boolean) +#sout-all=1 + +# Enable audio stream output (boolean) +#sout-audio=1 + +# Enable video stream output (boolean) +#sout-video=1 + +# Enable SPU stream output (boolean) +#sout-spu=1 + +# Stream output muxer caching (ms) (integer) +#sout-mux-caching=1500 + +# VLM configuration file (string) +#vlm-conf= + +# SAP announcement interval (integer) +#sap-interval=5 + +# Mux module (string) +#mux= + +# Access output module (string) +#access_output= + +# Hop limit (TTL) (integer) +#ttl=-1 + +# Multicast output interface (string) +#miface= + +# DiffServ Code Point (integer) +#dscp=0 + +# Preferred packetizer list (string) +#packetizer= + +# VoD server module (string) +#vod-server= + +# Use a plugins cache (boolean) +#plugins-cache=1 + +# Scan for new plugins (boolean) +#plugins-scan=1 + +# Preferred keystore list (string) +#keystore= + +# Allow real-time priority (boolean) +#rt-priority=0 + +# Adjust VLC priority (integer) +#rt-offset=0 + +# Play files randomly forever (boolean) +#random=0 + +# Repeat all (boolean) +#loop=0 + +# Repeat current item (boolean) +#repeat=0 + +# Play and exit (boolean) +#play-and-exit=0 + +# Play and stop (boolean) +#play-and-stop=0 + +# Play and pause (boolean) +#play-and-pause=0 + +# Start paused (boolean) +#start-paused=0 + +# Auto start (boolean) +#playlist-autostart=1 + +# Pause on audio communication (boolean) +#playlist-cork=1 + +# Allow only one running instance (boolean) +#one-instance=0 + +# Use only one instance when started from file manager (boolean) +#one-instance-when-started-from-file=1 + +# Enqueue items into playlist in one instance mode (boolean) +#playlist-enqueue=0 + +# Expose media player via D-Bus (boolean) +#dbus=0 + +# Use media library (boolean) +#media-library=0 + +# Display playlist tree (boolean) +#playlist-tree=0 + +# Default stream (string) +#open= + +# Automatically preparse items (boolean) +#auto-preparse=1 + +# Preparsing timeout (integer) +#preparse-timeout=5000 + +# Allow metadata network access (boolean) +metadata-network-access=1 + +# Subdirectory behavior (string) +#recursive=collapse + +# Ignored extensions (string) +#ignore-filetypes=m3u,db,nfo,ini,jpg,jpeg,ljpg,gif,png,pgm,pgmyuv,pbm,pam,tga,bmp,pnm,xpm,xcf,pcx,tif,tiff,lbm,sfv,txt,sub,idx,srt,cue,ssa + +# Show hidden files (boolean) +#show-hiddenfiles=0 + +# Services discovery modules (string) +#services-discovery= + +# Run as daemon process (boolean) +#daemon=0 + +# Write process id to file (string) +#pidfile= + +# Show advanced options (boolean) +#advanced=0 + +# Interface interaction (boolean) +#interact=1 + +# Locally collect statistics (boolean) +#stats=1 + +# Interface module (string) +#intf= + +# Extra interface modules (string) +#extraintf= + +# Control interfaces (string) +#control= + +# Mouse wheel vertical axis control (integer) +#hotkeys-y-wheel-mode=0 + +# Mouse wheel horizontal axis control (integer) +#hotkeys-x-wheel-mode=2 + +# Fullscreen (string) +#global-key-toggle-fullscreen= + +# Fullscreen (string) +#key-toggle-fullscreen=f + +# Exit fullscreen (string) +#global-key-leave-fullscreen= + +# Exit fullscreen (string) +#key-leave-fullscreen=Esc + +# Play/Pause (string) +#global-key-play-pause= + +# Play/Pause (string) +#key-play-pause=Space Media Play Pause + +# Pause only (string) +#global-key-pause= + +# Pause only (string) +#key-pause=Browser Stop + +# Play only (string) +#global-key-play= + +# Play only (string) +#key-play=Browser Refresh + +# Faster (string) +#global-key-faster= + +# Faster (string) +#key-faster=+ + +# Slower (string) +#global-key-slower= + +# Slower (string) +#key-slower=- + +# Normal rate (string) +#global-key-rate-normal= + +# Normal rate (string) +#key-rate-normal== + +# Faster (fine) (string) +#global-key-rate-faster-fine= + +# Faster (fine) (string) +#key-rate-faster-fine=] + +# Slower (fine) (string) +#global-key-rate-slower-fine= + +# Slower (fine) (string) +#key-rate-slower-fine=[ + +# Next (string) +#global-key-next= + +# Next (string) +#key-next=n Media Next Track + +# Previous (string) +#global-key-prev= + +# Previous (string) +#key-prev=p Media Prev Track + +# Stop (string) +#global-key-stop= + +# Stop (string) +#key-stop=s Media Stop + +# Position (string) +#global-key-position= + +# Position (string) +#key-position=t + +# Very short backwards jump (string) +#global-key-jump-extrashort= + +# Very short backwards jump (string) +#key-jump-extrashort=Shift+Left + +# Very short forward jump (string) +#global-key-jump+extrashort= + +# Very short forward jump (string) +#key-jump+extrashort=Shift+Right + +# Short backwards jump (string) +#global-key-jump-short= + +# Short backwards jump (string) +#key-jump-short=Alt+Left + +# Short forward jump (string) +#global-key-jump+short= + +# Short forward jump (string) +#key-jump+short=Alt+Right + +# Medium backwards jump (string) +#global-key-jump-medium= + +# Medium backwards jump (string) +#key-jump-medium=Ctrl+Left + +# Medium forward jump (string) +#global-key-jump+medium= + +# Medium forward jump (string) +#key-jump+medium=Ctrl+Right + +# Long backwards jump (string) +#global-key-jump-long= + +# Long backwards jump (string) +#key-jump-long=Ctrl+Alt+Left + +# Long forward jump (string) +#global-key-jump+long= + +# Long forward jump (string) +#key-jump+long=Ctrl+Alt+Right + +# Next frame (string) +#global-key-frame-next= + +# Next frame (string) +#key-frame-next=e Browser Next + +# Activate (string) +#global-key-nav-activate= + +# Activate (string) +#key-nav-activate=Enter + +# Navigate up (string) +#global-key-nav-up= + +# Navigate up (string) +#key-nav-up=Up + +# Navigate down (string) +#global-key-nav-down= + +# Navigate down (string) +#key-nav-down=Down + +# Navigate left (string) +#global-key-nav-left= + +# Navigate left (string) +#key-nav-left=Left + +# Navigate right (string) +#global-key-nav-right= + +# Navigate right (string) +#key-nav-right=Right + +# Go to the DVD menu (string) +#global-key-disc-menu= + +# Go to the DVD menu (string) +#key-disc-menu=Shift+m + +# Select previous DVD title (string) +#global-key-title-prev= + +# Select previous DVD title (string) +#key-title-prev=Shift+o + +# Select next DVD title (string) +#global-key-title-next= + +# Select next DVD title (string) +#key-title-next=Shift+b + +# Select prev DVD chapter (string) +#global-key-chapter-prev= + +# Select prev DVD chapter (string) +#key-chapter-prev=Shift+p + +# Select next DVD chapter (string) +#global-key-chapter-next= + +# Select next DVD chapter (string) +#key-chapter-next=Shift+n + +# Quit (string) +#global-key-quit= + +# Quit (string) +#key-quit=Ctrl+q + +# Volume up (string) +#global-key-vol-up= + +# Volume up (string) +#key-vol-up=Ctrl+Up Volume Up + +# Volume down (string) +#global-key-vol-down= + +# Volume down (string) +#key-vol-down=Ctrl+Down Volume Down + +# Mute (string) +#global-key-vol-mute= + +# Mute (string) +#key-vol-mute=m Volume Mute + +# Subtitle delay up (string) +#global-key-subdelay-up= + +# Subtitle delay up (string) +#key-subdelay-up=h + +# Subtitle delay down (string) +#global-key-subdelay-down= + +# Subtitle delay down (string) +#key-subdelay-down=g + +# Subtitle sync / bookmark audio timestamp (string) +#global-key-subsync-markaudio= + +# Subtitle sync / bookmark audio timestamp (string) +#key-subsync-markaudio=Shift+h + +# Subtitle sync / bookmark subtitle timestamp (string) +#global-key-subsync-marksub= + +# Subtitle sync / bookmark subtitle timestamp (string) +#key-subsync-marksub=Shift+j + +# Subtitle sync / synchronize audio & subtitle timestamps (string) +#global-key-subsync-apply= + +# Subtitle sync / synchronize audio & subtitle timestamps (string) +#key-subsync-apply=Shift+k + +# Subtitle sync / reset audio & subtitle synchronization (string) +#global-key-subsync-reset= + +# Subtitle sync / reset audio & subtitle synchronization (string) +#key-subsync-reset=Ctrl+Shift+k + +# Subtitle position up (string) +#global-key-subpos-up= + +# Subtitle position up (string) +#key-subpos-up= + +# Subtitle position down (string) +#global-key-subpos-down= + +# Subtitle position down (string) +#key-subpos-down= + +# Audio delay up (string) +#global-key-audiodelay-up= + +# Audio delay up (string) +#key-audiodelay-up=k + +# Audio delay down (string) +#global-key-audiodelay-down= + +# Audio delay down (string) +#key-audiodelay-down=j + +# Cycle audio track (string) +#global-key-audio-track= + +# Cycle audio track (string) +#key-audio-track=b + +# Cycle through audio devices (string) +#global-key-audiodevice-cycle= + +# Cycle through audio devices (string) +#key-audiodevice-cycle=Shift+a + +# Cycle subtitle track in reverse order (string) +#global-key-subtitle-revtrack= + +# Cycle subtitle track in reverse order (string) +#key-subtitle-revtrack=Alt+v + +# Cycle subtitle track (string) +#global-key-subtitle-track= + +# Cycle subtitle track (string) +#key-subtitle-track=v + +# Toggle subtitles (string) +#global-key-subtitle-toggle= + +# Toggle subtitles (string) +#key-subtitle-toggle=Shift+v + +# Cycle next program Service ID (string) +#global-key-program-sid-next= + +# Cycle next program Service ID (string) +#key-program-sid-next=x + +# Cycle previous program Service ID (string) +#global-key-program-sid-prev= + +# Cycle previous program Service ID (string) +#key-program-sid-prev=Shift+x + +# Cycle source aspect ratio (string) +#global-key-aspect-ratio= + +# Cycle source aspect ratio (string) +#key-aspect-ratio=a + +# Cycle video crop (string) +#global-key-crop= + +# Cycle video crop (string) +#key-crop=c + +# Toggle autoscaling (string) +#global-key-toggle-autoscale= + +# Toggle autoscaling (string) +#key-toggle-autoscale=o + +# Increase scale factor (string) +#global-key-incr-scalefactor= + +# Increase scale factor (string) +#key-incr-scalefactor=Alt+o + +# Decrease scale factor (string) +#global-key-decr-scalefactor= + +# Decrease scale factor (string) +#key-decr-scalefactor=Alt+Shift+o + +# Toggle deinterlacing (string) +#global-key-deinterlace= + +# Toggle deinterlacing (string) +#key-deinterlace=d + +# Cycle deinterlace modes (string) +#global-key-deinterlace-mode= + +# Cycle deinterlace modes (string) +#key-deinterlace-mode=Shift+d + +# Show controller in fullscreen (string) +#global-key-intf-show= + +# Show controller in fullscreen (string) +#key-intf-show=i + +# Boss key (string) +#global-key-intf-boss= + +# Boss key (string) +#key-intf-boss= + +# Context menu (string) +#global-key-intf-popup-menu= + +# Context menu (string) +#key-intf-popup-menu=Menu + +# Take video snapshot (string) +#global-key-snapshot= + +# Take video snapshot (string) +#key-snapshot=Shift+s + +# Record (string) +#global-key-record= + +# Record (string) +#key-record=Shift+r + +# Zoom (string) +#global-key-zoom= + +# Zoom (string) +#key-zoom=z + +# Un-Zoom (string) +#global-key-unzoom= + +# Un-Zoom (string) +#key-unzoom=Shift+z + +# Toggle wallpaper mode in video output (string) +#global-key-wallpaper= + +# Toggle wallpaper mode in video output (string) +#key-wallpaper=w + +# Crop one pixel from the top of the video (string) +#global-key-crop-top= + +# Crop one pixel from the top of the video (string) +#key-crop-top=Alt+r + +# Uncrop one pixel from the top of the video (string) +#global-key-uncrop-top= + +# Uncrop one pixel from the top of the video (string) +#key-uncrop-top=Alt+Shift+r + +# Crop one pixel from the left of the video (string) +#global-key-crop-left= + +# Crop one pixel from the left of the video (string) +#key-crop-left=Alt+d + +# Uncrop one pixel from the left of the video (string) +#global-key-uncrop-left= + +# Uncrop one pixel from the left of the video (string) +#key-uncrop-left=Alt+Shift+d + +# Crop one pixel from the bottom of the video (string) +#global-key-crop-bottom= + +# Crop one pixel from the bottom of the video (string) +#key-crop-bottom=Alt+c + +# Uncrop one pixel from the bottom of the video (string) +#global-key-uncrop-bottom= + +# Uncrop one pixel from the bottom of the video (string) +#key-uncrop-bottom=Alt+Shift+c + +# Crop one pixel from the right of the video (string) +#global-key-crop-right= + +# Crop one pixel from the right of the video (string) +#key-crop-right=Alt+f + +# Uncrop one pixel from the right of the video (string) +#global-key-uncrop-right= + +# Uncrop one pixel from the right of the video (string) +#key-uncrop-right=Alt+Shift+f + +# Random (string) +#global-key-random= + +# Random (string) +#key-random=r + +# Normal/Loop/Repeat (string) +#global-key-loop= + +# Normal/Loop/Repeat (string) +#key-loop=l + +# Shrink the viewpoint field of view (360°) (string) +#global-key-viewpoint-fov-in= + +# Shrink the viewpoint field of view (360°) (string) +#key-viewpoint-fov-in=Page Up + +# Expand the viewpoint field of view (360°) (string) +#global-key-viewpoint-fov-out= + +# Expand the viewpoint field of view (360°) (string) +#key-viewpoint-fov-out=Page Down + +# Roll the viewpoint clockwise (360°) (string) +#global-key-viewpoint-roll-clock= + +# Roll the viewpoint clockwise (360°) (string) +#key-viewpoint-roll-clock= + +# Roll the viewpoint anti-clockwise (360°) (string) +#global-key-viewpoint-roll-anticlock= + +# Roll the viewpoint anti-clockwise (360°) (string) +#key-viewpoint-roll-anticlock= + +# 1:4 Quarter (string) +#global-key-zoom-quarter= + +# 1:4 Quarter (string) +#key-zoom-quarter=Alt+1 + +# 1:2 Half (string) +#global-key-zoom-half= + +# 1:2 Half (string) +#key-zoom-half=Alt+2 + +# 1:1 Original (string) +#global-key-zoom-original= + +# 1:1 Original (string) +#key-zoom-original=Alt+3 + +# 2:1 Double (string) +#global-key-zoom-double= + +# 2:1 Double (string) +#key-zoom-double=Alt+4 + +# Very short jump length (integer) +#extrashort-jump-size=3 + +# Short jump length (integer) +#short-jump-size=10 + +# Medium jump length (integer) +#medium-jump-size=60 + +# Long jump length (integer) +#long-jump-size=300 + +# Set playlist bookmark 1 (string) +#global-key-set-bookmark1= + +# Set playlist bookmark 1 (string) +#key-set-bookmark1=Ctrl+F1 + +# Set playlist bookmark 2 (string) +#global-key-set-bookmark2= + +# Set playlist bookmark 2 (string) +#key-set-bookmark2=Ctrl+F2 + +# Set playlist bookmark 3 (string) +#global-key-set-bookmark3= + +# Set playlist bookmark 3 (string) +#key-set-bookmark3=Ctrl+F3 + +# Set playlist bookmark 4 (string) +#global-key-set-bookmark4= + +# Set playlist bookmark 4 (string) +#key-set-bookmark4=Ctrl+F4 + +# Set playlist bookmark 5 (string) +#global-key-set-bookmark5= + +# Set playlist bookmark 5 (string) +#key-set-bookmark5=Ctrl+F5 + +# Set playlist bookmark 6 (string) +#global-key-set-bookmark6= + +# Set playlist bookmark 6 (string) +#key-set-bookmark6=Ctrl+F6 + +# Set playlist bookmark 7 (string) +#global-key-set-bookmark7= + +# Set playlist bookmark 7 (string) +#key-set-bookmark7=Ctrl+F7 + +# Set playlist bookmark 8 (string) +#global-key-set-bookmark8= + +# Set playlist bookmark 8 (string) +#key-set-bookmark8=Ctrl+F8 + +# Set playlist bookmark 9 (string) +#global-key-set-bookmark9= + +# Set playlist bookmark 9 (string) +#key-set-bookmark9=Ctrl+F9 + +# Set playlist bookmark 10 (string) +#global-key-set-bookmark10= + +# Set playlist bookmark 10 (string) +#key-set-bookmark10=Ctrl+F10 + +# Play playlist bookmark 1 (string) +#global-key-play-bookmark1= + +# Play playlist bookmark 1 (string) +#key-play-bookmark1=F1 + +# Play playlist bookmark 2 (string) +#global-key-play-bookmark2= + +# Play playlist bookmark 2 (string) +#key-play-bookmark2=F2 + +# Play playlist bookmark 3 (string) +#global-key-play-bookmark3= + +# Play playlist bookmark 3 (string) +#key-play-bookmark3=F3 + +# Play playlist bookmark 4 (string) +#global-key-play-bookmark4= + +# Play playlist bookmark 4 (string) +#key-play-bookmark4=F4 + +# Play playlist bookmark 5 (string) +#global-key-play-bookmark5= + +# Play playlist bookmark 5 (string) +#key-play-bookmark5=F5 + +# Play playlist bookmark 6 (string) +#global-key-play-bookmark6= + +# Play playlist bookmark 6 (string) +#key-play-bookmark6=F6 + +# Play playlist bookmark 7 (string) +#global-key-play-bookmark7= + +# Play playlist bookmark 7 (string) +#key-play-bookmark7=F7 + +# Play playlist bookmark 8 (string) +#global-key-play-bookmark8= + +# Play playlist bookmark 8 (string) +#key-play-bookmark8=F8 + +# Play playlist bookmark 9 (string) +#global-key-play-bookmark9= + +# Play playlist bookmark 9 (string) +#key-play-bookmark9=F9 + +# Play playlist bookmark 10 (string) +#global-key-play-bookmark10= + +# Play playlist bookmark 10 (string) +#key-play-bookmark10=F10 + +# Clear the playlist (string) +#global-key-clear-playlist= + +# Clear the playlist (string) +#key-clear-playlist=Ctrl+w + +# Reset subtitles text scale (string) +#global-key-subtitle-text-scale-normal= + +# Reset subtitles text scale (string) +#key-subtitle-text-scale-normal=Ctrl+0 + +# Scale down subtitles text (string) +#global-key-subtitle-text-scale-up= + +# Scale down subtitles text (string) +#key-subtitle-text-scale-up=Ctrl+Mouse Wheel Up + +# Scale up subtitles text (string) +#global-key-subtitle-text-scale-down= + +# Scale up subtitles text (string) +#key-subtitle-text-scale-down=Ctrl+Mouse Wheel Down + +# Playlist bookmark 1 (string) +#bookmark1= + +# Playlist bookmark 2 (string) +#bookmark2= + +# Playlist bookmark 3 (string) +#bookmark3= + +# Playlist bookmark 4 (string) +#bookmark4= + +# Playlist bookmark 5 (string) +#bookmark5= + +# Playlist bookmark 6 (string) +#bookmark6= + +# Playlist bookmark 7 (string) +#bookmark7= + +# Playlist bookmark 8 (string) +#bookmark8= + +# Playlist bookmark 9 (string) +#bookmark9= + +# Playlist bookmark 10 (string) +#bookmark10= + diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc new file mode 100644 index 0000000..9e42058 --- /dev/null +++ b/.config/waybar/config.jsonc @@ -0,0 +1,66 @@ +{ + // "layer": "top", // Waybar at top layer + // "position": "bottom", // Waybar position (top|bottom|left|right) + "height": 24, // Waybar height (to be removed for auto height) + // "width": 1280, // Waybar width + "spacing": 0, // Gaps between modules (4px) + // Choose the order of the modules + "modules-left": ["sway/workspaces", "sway/mode"], + "modules-center": ["sway/window"], + "modules-right": ["cpu", "memory", "sway/language", "tray", "clock"], + // Modules configuration + "sway/workspaces": { + "disable-scroll": true, + "all-outputs": false, + "format": "{icon}", + "persistent_workspaces": { + "1": ["DP-2"], + "2": ["DP-3"], + "3": ["DP-2"], + "4": ["DP-3"], + "5": ["DP-2"], + "6": ["DP-3"], + "7": ["DP-2"], + "8": ["DP-3"] + }, + "format-icons": { + "1": "䷀", + "2": "䷁", + "3": "䷂", + "4": "䷃", + "5": "䷄", + "6": "䷅", + "7": "䷆", + "8": "䷇", + "urgent": "" + //"focused": "", + //"default": "" + } + }, + "sway/mode": { + "format": "{}" + }, + //"idle_inhibitor": { + //"format": "{icon}", + //"format-icons": { + //"activated": "", + //"deactivated": "" + //} + //}, + "tray": { + // "icon-size": 21, + "spacing": 10 + }, + "clock": { + // "timezone": "America/New_York", + "tooltip-format": "{:%Y %B}\n{calendar}", + "format-alt": "{:%Y-%m-%d}" + }, + "cpu": { + "format": "{usage}% ", + "tooltip": false + }, + "memory": { + "format": "{}% " + } +} diff --git a/.config/waybar/style.css b/.config/waybar/style.css new file mode 100644 index 0000000..4042e86 --- /dev/null +++ b/.config/waybar/style.css @@ -0,0 +1,43 @@ +* { + border: none; + border-radius: 0; + font-family: "Ubuntu Nerd Font"; + font-size: 13px; + min-height: 0; +} + +window#waybar { + background: transparent; + color: white; +} + +#window { + font-weight: bold; + font-family: "Ubuntu"; +} + +#workspaces button { + padding: 0 5px; + background: transparent; + color: white; + border-top: 2px solid transparent; +} + +#workspaces button.focused { + color: #BD93F9; + border-top: 2px solid #BD93F9; +} + +#mode { + background: #64727D; + border-bottom: 3px solid white; +} + +#clock, #cpu, #memory, #language, #tray, #mode { + padding: 0 3px; + margin: 0 2px; +} + +#clock { + font-weight: bold; +} diff --git a/.config/wezterm/wezterm.lua b/.config/wezterm/wezterm.lua new file mode 100644 index 0000000..92aadc3 --- /dev/null +++ b/.config/wezterm/wezterm.lua @@ -0,0 +1,15 @@ +local wezterm = require 'wezterm'; + +return { + color_scheme = "Dracula", + font = wezterm.font("FantasqueSansMono NF"), + font_size = 11, + hide_tab_bar_if_only_one_tab = true, + window_background_opacity = 0.88, + window_padding = { + left = 16, + right = 16, + top = 16, + bottom = 16, + }, +} diff --git a/.config/wofi/config b/.config/wofi/config new file mode 100644 index 0000000..766981a --- /dev/null +++ b/.config/wofi/config @@ -0,0 +1,12 @@ +style=/home/wizardlink/.config/wofi/mono.css +location=center +show=drun +width=500 +height=500 +always_parse_args=true +show_all=true +print_command=true +layer=overlay +insensitive=true +prompt= +content_halign=center diff --git a/.config/wofi/mono.css b/.config/wofi/mono.css new file mode 100644 index 0000000..8da6585 --- /dev/null +++ b/.config/wofi/mono.css @@ -0,0 +1,39 @@ +window { + margin: 0px; + border: 2px solid #bd93f9; + background-color: transparent; +} + +#input { + margin: 5px; + border: none; + color: #f8f8f2; + background-color: #44475a; +} + +#inner-box { + margin: 5px; + border: none; + background-color: #282a36; +} + +#outer-box { + margin: 5px; + border: none; + background-color: transparent; +} + +#scroll { + margin: 0px; + border: none; +} + +#text { + margin: 5px; + border: none; + color: #f8f8f2; +} + +#entry:selected { + background-color: #44475a; +} diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index fc94ede..0000000 --- a/.editorconfig +++ /dev/null @@ -1,10 +0,0 @@ -root = true - -[*] -charset = utf-8 -end_of_line = lf -indent_size = 2 -indent_style = space -insert_final_newline = true -max_line_length = 120 -trim_trailing_whitespace = true diff --git a/.gitconfig b/.gitconfig new file mode 100644 index 0000000..c7a3809 --- /dev/null +++ b/.gitconfig @@ -0,0 +1,104 @@ +############################### +# # +# My Linux .gitconfig # +# # +# Last revision: # +# 2020-12-04 # +# # +############################### + +[alias] + ; List aliases + aliases = config --get-regexp alias + + ; List all the contributors with commit amount + contributors = shortlog --summary --numbered + + ; Output verbose info about branches and tags + branches = branch -avv + + ; List all tags + tags = tag -l + + ; Pretty logs + plog = log --graph --decorate --all + + ; Pretty grep + gcommit = log --graph --decorate --grep + +[core] + # Your path might be different, but unlikely + # -- this needs to manually be set because + # -- GIT for Windows has it's own vim + # -- so it will run that instead. + ; Set the editor to be used by GIT + editor = ~/.local/bin/lvim + + ; Custom .gitignore + excludesfile = ~/.gitignore + + ; Treat trailing whitespaces and spaces before tabs as an error + whitespace = space-before-tab,-indent-with-non-tab,trailing-space + +[color] + ; Use colors in GIT commands + ui = auto + +[commit] + ; https://help.github.com/articles/signing-commits-using-gpg/ + gpgsign = true + +[tag] + gpgsign = true + +[difftool] + prompt = true + +[difftool "lvimdiff"] + cmd = ~/.local/bin/lvim -d "$LOCAL" "$REMOTE" + +[diff] + # Your path might be different, but unlikely + # -- this needs to manually be set because + # -- GIT for Windows has it's own vim + # -- so it will run that instead. + ; Set the editor to be used by GIT + tool = ~/.local/bin/lvim + +[mergetool] + ; https://www.git-scm.com/docs/git-mergetool#Documentation/git-mergetool.txt---no-prompt + prompt = false + +[mergetool "lvimdiff"] + cmd = ~/.local/bin/lvim -f -d -c '$wincmd w | wincmd J' "$LOCAL" "$BASE" "$REMOTE" "$MERGED" + +[merge] + # Your path might be different, but unlikely + # -- this needs to manually be set because + # -- GIT for Windows has it's own vim + # -- so it will run that instead. + tool = lvimdiff + + ; https://git-scm.com/docs/git-merge#_how_conflicts_are_presented + conflictstyle = diff3 + +[push] + ; https://stackoverflow.com/questions/21839651/git-what-is-the-difference-between-push-default-matching-and-simple + default = simple + + ; git-push pushes relevant annotated tags when pushing branches out + followTags = true + +[user] + name = Alexandre Cavalheiro S. Tiago da Silva + email = contact@thewizard.link + signingkey = A1D3A2B4E14BD7C0445BB749A5767B54367CFBDF + +[pull] + ff = only + +[init] + defaultBranch = main + +[credential] + helper = /usr/libexec/git-core/git-credential-libsecret diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..0a1dbc0 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule ".themes/dracula"] + path = .themes/dracula + url = https://github.com/dracula/gtk diff --git a/.local/share/pipewire/librnnoise_ladspa.so b/.local/share/pipewire/librnnoise_ladspa.so new file mode 100644 index 0000000..dfdfe8d Binary files /dev/null and b/.local/share/pipewire/librnnoise_ladspa.so differ diff --git a/shared/home-manager/scripts/create_feedback_sink.sh b/.local/share/scripts/create_feedback_sink.sh similarity index 100% rename from shared/home-manager/scripts/create_feedback_sink.sh rename to .local/share/scripts/create_feedback_sink.sh diff --git a/shared/home-manager/scripts/delete_feedback_sink.sh b/.local/share/scripts/delete_feedback_sink.sh similarity index 100% rename from shared/home-manager/scripts/delete_feedback_sink.sh rename to .local/share/scripts/delete_feedback_sink.sh diff --git a/.local/share/scripts/steam/launch.sh b/.local/share/scripts/steam/launch.sh new file mode 100755 index 0000000..bde189b --- /dev/null +++ b/.local/share/scripts/steam/launch.sh @@ -0,0 +1,8 @@ +#!/bin/sh +export AMD_VULKAN_ICD="RADV" +export DXVK_ASYNC=1 +export DXVK_STATE_CACHE=1 +export MANGOHUD=1 +export RADV_PERFTEST="gpl" + +gamemoderun "$@" diff --git a/.local/share/scripts/steam/launch_gamescope.sh b/.local/share/scripts/steam/launch_gamescope.sh new file mode 100755 index 0000000..5b3ea6e --- /dev/null +++ b/.local/share/scripts/steam/launch_gamescope.sh @@ -0,0 +1,8 @@ +#!/bin/sh +export AMD_VULKAN_ICD="RADV" +export DXVK_ASYNC=1 +export DXVK_STATE_CACHE=1 +export MANGOHUD=1 +export RADV_PERFTEST="gpl" + +gamescope -w 1280 -h 720 -W 1920 -H 1080 -f -- gamemoderun "$@" diff --git a/.local/share/scripts/steam/launch_raytracing.sh b/.local/share/scripts/steam/launch_raytracing.sh new file mode 100755 index 0000000..be68a53 --- /dev/null +++ b/.local/share/scripts/steam/launch_raytracing.sh @@ -0,0 +1,10 @@ +#!/bin/sh +export AMD_VULKAN_ICD="RADV" +export DXVK_ASYNC=1 +export DXVK_STATE_CACHE=1 +export MANGOHUD=1 +export RADV_PERFTEST="rt,gpl" +export VKD3D_CONFIG="dxr11" +export __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1 + +gamemoderun "$@" -dx12 diff --git a/.neoconf.json b/.neoconf.json deleted file mode 100644 index 1a1be43..0000000 --- a/.neoconf.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "neoconf": { - "plugins": { - "lua_ls": { - "enabled": true - } - } - }, - "lspconfig": { - "lua_ls": { - "Lua.completion.callSnippet": "Replace" - } - } -} diff --git a/.stylua.toml b/.stylua.toml deleted file mode 100644 index 3ee0ae0..0000000 --- a/.stylua.toml +++ /dev/null @@ -1,5 +0,0 @@ -quote_style = "AutoPreferDouble" -call_parentheses = "None" - -[sort_requires] -enabled = true diff --git a/.themes/dracula b/.themes/dracula new file mode 160000 index 0000000..247f957 --- /dev/null +++ b/.themes/dracula @@ -0,0 +1 @@ +Subproject commit 247f95718b769c26c488f801d9d8bb001e675afe diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 0e259d4..0000000 --- a/LICENSE +++ /dev/null @@ -1,121 +0,0 @@ -Creative Commons Legal Code - -CC0 1.0 Universal - - CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE - LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN - ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS - INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES - REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS - PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM - THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED - HEREUNDER. - -Statement of Purpose - -The laws of most jurisdictions throughout the world automatically confer -exclusive Copyright and Related Rights (defined below) upon the creator -and subsequent owner(s) (each and all, an "owner") of an original work of -authorship and/or a database (each, a "Work"). - -Certain owners wish to permanently relinquish those rights to a Work for -the purpose of contributing to a commons of creative, cultural and -scientific works ("Commons") that the public can reliably and without fear -of later claims of infringement build upon, modify, incorporate in other -works, reuse and redistribute as freely as possible in any form whatsoever -and for any purposes, including without limitation commercial purposes. -These owners may contribute to the Commons to promote the ideal of a free -culture and the further production of creative, cultural and scientific -works, or to gain reputation or greater distribution for their Work in -part through the use and efforts of others. - -For these and/or other purposes and motivations, and without any -expectation of additional consideration or compensation, the person -associating CC0 with a Work (the "Affirmer"), to the extent that he or she -is an owner of Copyright and Related Rights in the Work, voluntarily -elects to apply CC0 to the Work and publicly distribute the Work under its -terms, with knowledge of his or her Copyright and Related Rights in the -Work and the meaning and intended legal effect of CC0 on those rights. - -1. Copyright and Related Rights. A Work made available under CC0 may be -protected by copyright and related or neighboring rights ("Copyright and -Related Rights"). Copyright and Related Rights include, but are not -limited to, the following: - - i. the right to reproduce, adapt, distribute, perform, display, - communicate, and translate a Work; - ii. moral rights retained by the original author(s) and/or performer(s); -iii. publicity and privacy rights pertaining to a person's image or - likeness depicted in a Work; - iv. rights protecting against unfair competition in regards to a Work, - subject to the limitations in paragraph 4(a), below; - v. rights protecting the extraction, dissemination, use and reuse of data - in a Work; - vi. database rights (such as those arising under Directive 96/9/EC of the - European Parliament and of the Council of 11 March 1996 on the legal - protection of databases, and under any national implementation - thereof, including any amended or successor version of such - directive); and -vii. other similar, equivalent or corresponding rights throughout the - world based on applicable law or treaty, and any national - implementations thereof. - -2. Waiver. To the greatest extent permitted by, but not in contravention -of, applicable law, Affirmer hereby overtly, fully, permanently, -irrevocably and unconditionally waives, abandons, and surrenders all of -Affirmer's Copyright and Related Rights and associated claims and causes -of action, whether now known or unknown (including existing as well as -future claims and causes of action), in the Work (i) in all territories -worldwide, (ii) for the maximum duration provided by applicable law or -treaty (including future time extensions), (iii) in any current or future -medium and for any number of copies, and (iv) for any purpose whatsoever, -including without limitation commercial, advertising or promotional -purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each -member of the public at large and to the detriment of Affirmer's heirs and -successors, fully intending that such Waiver shall not be subject to -revocation, rescission, cancellation, termination, or any other legal or -equitable action to disrupt the quiet enjoyment of the Work by the public -as contemplated by Affirmer's express Statement of Purpose. - -3. Public License Fallback. Should any part of the Waiver for any reason -be judged legally invalid or ineffective under applicable law, then the -Waiver shall be preserved to the maximum extent permitted taking into -account Affirmer's express Statement of Purpose. In addition, to the -extent the Waiver is so judged Affirmer hereby grants to each affected -person a royalty-free, non transferable, non sublicensable, non exclusive, -irrevocable and unconditional license to exercise Affirmer's Copyright and -Related Rights in the Work (i) in all territories worldwide, (ii) for the -maximum duration provided by applicable law or treaty (including future -time extensions), (iii) in any current or future medium and for any number -of copies, and (iv) for any purpose whatsoever, including without -limitation commercial, advertising or promotional purposes (the -"License"). The License shall be deemed effective as of the date CC0 was -applied by Affirmer to the Work. Should any part of the License for any -reason be judged legally invalid or ineffective under applicable law, such -partial invalidity or ineffectiveness shall not invalidate the remainder -of the License, and in such case Affirmer hereby affirms that he or she -will not (i) exercise any of his or her remaining Copyright and Related -Rights in the Work or (ii) assert any associated claims and causes of -action with respect to the Work, in either case contrary to Affirmer's -express Statement of Purpose. - -4. Limitations and Disclaimers. - - a. No trademark or patent rights held by Affirmer are waived, abandoned, - surrendered, licensed or otherwise affected by this document. - b. Affirmer offers the Work as-is and makes no representations or - warranties of any kind concerning the Work, express, implied, - statutory or otherwise, including without limitation warranties of - title, merchantability, fitness for a particular purpose, non - infringement, or the absence of latent or other defects, accuracy, or - the present or absence of errors, whether or not discoverable, all to - the greatest extent permissible under applicable law. - c. Affirmer disclaims responsibility for clearing rights of other persons - that may apply to the Work or any use thereof, including without - limitation any person's Copyright and Related Rights in the Work. - Further, Affirmer disclaims responsibility for obtaining any necessary - consents, permissions or other rights required for any use of the - Work. - d. Affirmer understands and acknowledges that Creative Commons is not a - party to this document and has no duty or obligation with respect to - this CC0 or use of the Work. diff --git a/README.md b/README.md deleted file mode 100644 index f3cd6a5..0000000 --- a/README.md +++ /dev/null @@ -1,67 +0,0 @@ -# linuxware - -This repository contains the configuration of my main Linux based system(s), currently this repository consists of a -[NixOS] system configuration alongside [dotfiles] generated by [Home Manager] and [dotfiles] maintained by me. - -## Navigation guide - -In this section I will detail how you can navigate and make the most use out of my configuration. - -### File structure - -- [`flake.nix` & `flake.lock`](#flake) - - _This is the "entry-point" of the [NixOS] configuration._ -- [`hosts/`](/hosts/) - - _Inside you can find the per-system customizations I've made._ -- [`modules/`](/modules/) - - _These contain the modules I export in the [flake](#flake)._ -- [`packages/`](/packages/) - - _Encompasses the packages I maintain outside or in tandem with [nixpkgs]._ -- [`shared/`](/shared/) - - _The [NixOS] and [Home Manager] configuration that's shared across hosts._ -- [`assets/`](/assets/) - - _All media used in this configuration or shown inside READMEs._ - -> _Be sure to click the hyperlinks for the relevant documentation._ - -#### Flake - -A flake basically contains what you want to consume in your environment and what you want to export to be consumed, on -top of having a lockfile to pin the versions of what you are consuming. - -Personally, the best way to learn how to use it as a beginner is the [Unofficial NixOS & Flakes -Book](https://nixos-and-flakes.thiscute.world/). I will not explain how to configure or use my flake as that would be -lenghty. - -I export four modules that you can use in your configuration: -- [Hyprland NixOS configuration](/modules/hyprland/README.md) - - _Accessed through `.nixosModules.hyprland`._ -- [Hyprland home-manager configuration](/modules/hyprland/README.md#configuration) - - _Accessed through `.homeManagerModules.hyprland`._ -- [Emacs home-manager configuration & dotfiles](/modules/emacs/README.md) - - _Accessed through `.homeManagerModules.emacs`_ -- [Neovim home-manager configuration & dotfiles](/modules/neovim/README.md) - - _Accessed through `.homeManagerModules.neovim`._ - -> _Be sure to click the hyperlinks for the relevant documentation._ - -To facilitate on-boarding, once you've set-up the experimental features needed for flakes I have provided a template -with this repository for you to use; it comes with a [NixOS] system configuration, [Home Manager] configuration -alongside the modules that I provide. - -All you have to do is enter the directory you want your configuration to reside and execute -`nix flake init -t github:wizardlink/linuxware`. Be sure to read the `README.md` file! - -## Desktop screenshot - -![image](/assets/screenshots/full-system.png) - -> _All screenshots of the system and it's components are available [here](/assets/README.md)._ - - - - -[dotfiles]: https://wiki.archlinux.org/title/Dotfiles -[home manager]: https://github.com/nix-community/home-manager -[nixos]: https://nixos.org/ -[nixpkgs]: https://github.com/NixOS/nixpkgs/ diff --git a/assets/README.md b/assets/README.md deleted file mode 100644 index bb897d8..0000000 --- a/assets/README.md +++ /dev/null @@ -1,42 +0,0 @@ -## Desktop - -![image](./screenshots/full-system.png) - -### Window gaps - -![image](./screenshots/hyprland-gaps.png) - -### Window borders - -![image](./screenshots/hyprland-active.png) -![image](./screenshots/hyprland-inactive.png) - -## Programs - -### Neovim - -![image](./screenshots/neovim-dashboard.png) -![image](./screenshots/neovim-nix.png) -![image](./screenshots/neovim-rust.png) - -### Alacritty & Fish - -![image](./screenshots/alacritty-and-fish.png) - -### Rofi - -![image](./screenshots/rofi.png) - -### Waybar - -![image](./screenshots/waybar.png) - -### Emacs - -![image](./screenshots/doomemacs.png) - -## System - -### SDDM background - -![image](./sddm/Background.jpg) diff --git a/assets/screenshots/alacritty-and-fish.png b/assets/screenshots/alacritty-and-fish.png deleted file mode 100644 index 741c7ae..0000000 Binary files a/assets/screenshots/alacritty-and-fish.png and /dev/null differ diff --git a/assets/screenshots/doomemacs.png b/assets/screenshots/doomemacs.png deleted file mode 100644 index b481f63..0000000 Binary files a/assets/screenshots/doomemacs.png and /dev/null differ diff --git a/assets/screenshots/fastfetch-wizdesk.png b/assets/screenshots/fastfetch-wizdesk.png deleted file mode 100644 index 0a1b2c4..0000000 Binary files a/assets/screenshots/fastfetch-wizdesk.png and /dev/null differ diff --git a/assets/screenshots/full-system.png b/assets/screenshots/full-system.png deleted file mode 100644 index b5000f2..0000000 Binary files a/assets/screenshots/full-system.png and /dev/null differ diff --git a/assets/screenshots/hyprland-active.png b/assets/screenshots/hyprland-active.png deleted file mode 100644 index 9f7240a..0000000 Binary files a/assets/screenshots/hyprland-active.png and /dev/null differ diff --git a/assets/screenshots/hyprland-gaps.png b/assets/screenshots/hyprland-gaps.png deleted file mode 100644 index 65f0507..0000000 Binary files a/assets/screenshots/hyprland-gaps.png and /dev/null differ diff --git a/assets/screenshots/hyprland-inactive.png b/assets/screenshots/hyprland-inactive.png deleted file mode 100644 index ddf018a..0000000 Binary files a/assets/screenshots/hyprland-inactive.png and /dev/null differ diff --git a/assets/screenshots/neovim-dashboard.png b/assets/screenshots/neovim-dashboard.png deleted file mode 100644 index b3f74a2..0000000 Binary files a/assets/screenshots/neovim-dashboard.png and /dev/null differ diff --git a/assets/screenshots/neovim-nix.png b/assets/screenshots/neovim-nix.png deleted file mode 100644 index c8efe4c..0000000 Binary files a/assets/screenshots/neovim-nix.png and /dev/null differ diff --git a/assets/screenshots/neovim-rust.png b/assets/screenshots/neovim-rust.png deleted file mode 100644 index df20232..0000000 Binary files a/assets/screenshots/neovim-rust.png and /dev/null differ diff --git a/assets/screenshots/rofi.png b/assets/screenshots/rofi.png deleted file mode 100644 index 5bd81c3..0000000 Binary files a/assets/screenshots/rofi.png and /dev/null differ diff --git a/assets/screenshots/waybar.png b/assets/screenshots/waybar.png deleted file mode 100644 index e024b03..0000000 Binary files a/assets/screenshots/waybar.png and /dev/null differ diff --git a/assets/sddm/Background.jpg b/assets/sddm/Background.jpg deleted file mode 100644 index 01fce54..0000000 Binary files a/assets/sddm/Background.jpg and /dev/null differ diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 8db5816..0000000 --- a/flake.lock +++ /dev/null @@ -1,739 +0,0 @@ -{ - "nodes": { - "aquamarine": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1747864449, - "narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, - "blink-cmp": { - "inputs": { - "fenix": "fenix", - "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs" - }, - "locked": { - "lastModified": 1748459806, - "narHash": "sha256-v8APYXznVC3TP9ZgIr+FGaoQ1rVnLOOOWkRprpcS1JI=", - "owner": "Saghen", - "repo": "blink.cmp", - "rev": "e7cdf1ac0be3acfce2a718bc921768ac747db5d9", - "type": "github" - }, - "original": { - "owner": "Saghen", - "repo": "blink.cmp", - "type": "github" - } - }, - "clipboard-sync": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1731355357, - "narHash": "sha256-kTXsO+hskCfX36+Ez1fHu9SO54uUY2lofkrbMKE3Vrk=", - "owner": "dnut", - "repo": "clipboard-sync", - "rev": "943e49e0a9a16b54bbab3704e99b6cf6ad4ea19f", - "type": "github" - }, - "original": { - "owner": "dnut", - "repo": "clipboard-sync", - "type": "github" - } - }, - "fenix": { - "inputs": { - "nixpkgs": [ - "blink-cmp", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" - }, - "locked": { - "lastModified": 1747032090, - "narHash": "sha256-htgrHIR/P7V8WeRW/XDWJHXBzbTSWCDYZHsxPAzDuUY=", - "owner": "nix-community", - "repo": "fenix", - "rev": "1436bb8b85b35ca3ba64ad97df31a3b23c7610a3", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib" - }, - "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "hyprland", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "home-manager": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1748529677, - "narHash": "sha256-MJEX3Skt5EAIs/aGHD8/aXXZPcceMMHheyIGSjvxZN0=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "da282034f4d30e787b8a10722431e8b650a907ef", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, - "hydractify-bot": { - "inputs": { - "naersk": "naersk", - "nixpkgs": "nixpkgs_3", - "utils": "utils" - }, - "locked": { - "lastModified": 1744867268, - "narHash": "sha256-MZxEEq9FNJKtLg3Yz4e0Pf+8TRySj8xJ6vBszqt3fjg=", - "owner": "hydractify", - "repo": "hydractify-bot", - "rev": "263b8552a4dd161de58eb13dad93ec758718c828", - "type": "github" - }, - "original": { - "owner": "hydractify", - "repo": "hydractify-bot", - "type": "github" - } - }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1745948457, - "narHash": "sha256-lzTV10FJTCGNtMdgW5YAhCAqezeAzKOd/97HbQK8GTU=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "ac903e80b33ba6a88df83d02232483d99f327573", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1745015490, - "narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "60754910946b4e2dc1377b967b7156cb989c5873", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-protocols": "hyprland-protocols", - "hyprland-qtutils": "hyprland-qtutils", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs_4", - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_2", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1748438403, - "narHash": "sha256-uNgR25LfmSOYQ1wNlC91UZ/avt+bmxZpwlqOYM6vI20=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "9bf1b491440eac6f9c0d6853013ad5666c12d1d9", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1743714874, - "narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-qt-support": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprland-qtutils", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1737634706, - "narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=", - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "rev": "8810df502cdee755993cb803eba7b23f189db795", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "type": "github" - } - }, - "hyprland-qtutils": { - "inputs": { - "hyprland-qt-support": "hyprland-qt-support", - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1745951494, - "narHash": "sha256-2dModE32doiyQMmd6EDAQeZnz+5LOs6KXyE0qX76WIg=", - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "rev": "4be1d324faf8d6e82c2be9f8510d299984dfdd2e", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1747484975, - "narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "163c83b3db48a17c113729c220a60b94596c9291", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1746635225, - "narHash": "sha256-W9G9bb0zRYDBRseHbVez0J8qVpD5QbizX67H/vsudhM=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "674ea57373f08b7609ce93baff131117a0dfe70d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1747584298, - "narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "naersk": { - "inputs": { - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1721727458, - "narHash": "sha256-r/xppY958gmZ4oTfLiHN0ZGuQ+RSTijDblVgVLFi1mw=", - "owner": "nix-community", - "repo": "naersk", - "rev": "3fb418eaf352498f6b6c30592e3beb63df42ef11", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "master", - "repo": "naersk", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1736166416, - "narHash": "sha256-U47xeACNBpkSO6IcCm0XvahsVXpJXzjPIQG7TZlOToU=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "b30f97d8c32d804d2d832ee837d0f1ca0695faa5", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-lib": { - "locked": { - "lastModified": 1733096140, - "narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 0, - "narHash": "sha256-AlcmCXJZPIlO5dmFzV3V2XF6x/OpNWUV8Y/FMPGd8Z4=", - "path": "/nix/store/lsy6c2f9alj2gkjj36h754kk63x6701l-source", - "type": "path" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1729850857, - "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1748026106, - "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1748370509, - "narHash": "sha256-QlL8slIgc16W5UaI3w7xHQEP+Qmv/6vSNTpoZrrSlbk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "4faa5f5321320e49a78ae7848582f684d64783e9", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1747372754, - "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "root": { - "inputs": { - "blink-cmp": "blink-cmp", - "clipboard-sync": "clipboard-sync", - "home-manager": "home-manager", - "hydractify-bot": "hydractify-bot", - "hyprland": "hyprland", - "nixpkgs": "nixpkgs_5", - "spicetify-nix": "spicetify-nix" - } - }, - "rust-analyzer-src": { - "flake": false, - "locked": { - "lastModified": 1746889290, - "narHash": "sha256-h3LQYZgyv2l3U7r+mcsrEOGRldaK0zJFwAAva4hV/6g=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "2bafe9d96c6734aacfd49e115f6cf61e7adc68bc", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, - "spicetify-nix": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ], - "systems": "systems_3" - }, - "locked": { - "lastModified": 1748147548, - "narHash": "sha256-9IaAQkgyF4PFtVyui8vF6oJah0iVcO9DaOefjdTMthE=", - "owner": "Gerg-L", - "repo": "spicetify-nix", - "rev": "f0595e3b59260457042450749eaec00a5a47db35", - "type": "github" - }, - "original": { - "owner": "Gerg-L", - "repo": "spicetify-nix", - "type": "github" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_2": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1745871725, - "narHash": "sha256-M24SNc2flblWGXFkGQfqSlEOzAGZnMc9QG3GH4K/KbE=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "76bbf1a6b1378e4ab5230bad00ad04bc287c969e", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 90e5815..0000000 --- a/flake.nix +++ /dev/null @@ -1,98 +0,0 @@ -{ - description = "NixOS System Flake"; - - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; - - home-manager = { - url = "github:nix-community/home-manager"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - spicetify-nix = { - url = "github:Gerg-L/spicetify-nix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - clipboard-sync = { - url = "github:dnut/clipboard-sync"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - hyprland.url = "github:hyprwm/Hyprland"; - - hydractify-bot.url = "github:hydractify/hydractify-bot"; - - blink-cmp.url = "github:Saghen/blink.cmp"; - }; - - outputs = - { - home-manager, - nixpkgs, - ... - }@inputs: - let - system = "x86_64-linux"; - pkgs = nixpkgs.legacyPackages.${system}; - in - { - nixosConfigurations = { - wizdesk = - let - specialArgs = inputs; - modules = [ - ./hosts/wizdesk/nixos.nix - home-manager.nixosModules.home-manager - { - home-manager.extraSpecialArgs = inputs; - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.wizardlink = import ./hosts/wizdesk/home-manager.nix; - } - ]; - in - nixpkgs.lib.nixosSystem { inherit system specialArgs modules; }; - - wizlap = - let - specialArgs = inputs; - modules = [ - ./hosts/wizlap/nixos.nix - home-manager.nixosModules.home-manager - { - home-manager.extraSpecialArgs = inputs; - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.wizardlink = import ./hosts/wizlap/home-manager.nix; - } - ]; - in - nixpkgs.lib.nixosSystem { inherit system specialArgs modules; }; - }; - - formatter."${system}" = pkgs.nixfmt-rfc-style; - - packages."${system}" = { - lmms = pkgs.callPackage ./packages/lmms/package.nix { }; - miraclecast = pkgs.callPackage ./packages/miraclecast.nix { }; - wb32dfu-udev-rules = pkgs.callPackage ./packages/wb32dfu-udev-rules { }; - }; - - nixosModules = { - hyprland = import ./modules/hyprland/nixos.nix; - }; - - homeManagerModules = { - emacs = import ./modules/emacs; - hyprland = import ./modules/hyprland/home-manager.nix; - neovim = import ./modules/neovim; - }; - - templates.default = { - path = ./modules/template; - description = '' - A NixOS & Home-Manager template to get started with the https://github.com/wizardlink/linuxware configuration. - ''; - }; - }; -} diff --git a/hosts/README.md b/hosts/README.md deleted file mode 100644 index c9c75ee..0000000 --- a/hosts/README.md +++ /dev/null @@ -1,15 +0,0 @@ -## wizdesk - -My main machine, this is where I host everything that's accessible through the `thewizard.link` domain. - -### Specs - -![image](/assets/screenshots/fastfetch-wizdesk.png) - -## wizlap - -My ASUS Vivobook 15 (M1502IA), I mostly use it when I have to travel so there isn't much to say about it. - -### Specs - -They can be found in ASUS' store/support page, I haven't modified it yet. diff --git a/hosts/wizdesk/hardware-configuration.nix b/hosts/wizdesk/hardware-configuration.nix deleted file mode 100644 index 9a338bb..0000000 --- a/hosts/wizdesk/hardware-configuration.nix +++ /dev/null @@ -1,71 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/1f7083ba-4271-486e-a85c-8386f6287b0a"; - fsType = "btrfs"; - options = [ "subvol=root" ]; - }; - - fileSystems."/nix" = - { device = "/dev/disk/by-uuid/1f7083ba-4271-486e-a85c-8386f6287b0a"; - fsType = "btrfs"; - options = [ "subvol=nix" ]; - }; - - fileSystems."/home" = - { device = "/dev/disk/by-uuid/1f7083ba-4271-486e-a85c-8386f6287b0a"; - fsType = "btrfs"; - options = [ "subvol=home" ]; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/D4D7-CD5F"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; - - fileSystems."/mnt/internal" = - { device = "/dev/disk/by-uuid/b8541c0d-9146-4388-b217-431f196957cc"; - fsType = "ext4"; - }; - - fileSystems."/mnt/ssd" = - { device = "/dev/disk/by-uuid/f27f2224-d351-46fd-89f5-991de36166ad"; - fsType = "ext4"; - }; - - fileSystems."/mnt/extra" = - { device = "/dev/disk/by-uuid/0d4ef3e0-7e7a-4a70-bbbc-040fe7aa7c2a"; - fsType = "ext4"; - }; - - fileSystems."/mnt/media" = - { device = "/dev/disk/by-uuid/52c17b8b-46c1-4870-b86c-c3b9f4bd4434"; - fsType = "ext4"; - }; - - swapDevices = [ ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp5s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/wizdesk/home-manager.nix b/hosts/wizdesk/home-manager.nix deleted file mode 100644 index d9c9e48..0000000 --- a/hosts/wizdesk/home-manager.nix +++ /dev/null @@ -1,160 +0,0 @@ -{ pkgs, ... }: - -{ - # - ## HOME CONFIGURATION # - # - - # Import configurations for better modularity. - imports = [ - ../../modules/emacs - ../../modules/hyprland/home-manager.nix - ../../modules/neovim - ../../shared/home-manager - ./services/home-manager - ]; - - # Home Manager needs a bit of information about you and the paths it should - # manage. - home.username = "wizardlink"; - home.homeDirectory = "/home/wizardlink"; - - # This value determines the Home Manager release that your configuration is - # compatible with. This helps avoid breakage when a new Home Manager release - # introduces backwards incompatible changes. - # - # You should not change this value, even if you update Home Manager. If you do - # want to update the value, then make sure to first check the Home Manager - # release notes. - home.stateVersion = "23.05"; # Please read the comment before changing. - - home.file = { - # Create wallpaper script to be read by the start_services.sh script. - ".local/share/scripts/wallpaper.sh" = { - executable = true; - text = # sh - '' - # - ## Start wallpaper daemon and set one. - # - OUTPUT_1="DP-2" - IMAGE_1="/mnt/internal/personal/wallpapers/edited/1440-bicycle.jpg" - - OUTPUT_2="DP-3" - IMAGE_2="/mnt/internal/personal/wallpapers/edited/1080-bycicle.jpg" - - function load_wallpapers() { - swww img -t any --transition-bezier 0.0,0.0,1.0,1.0 --transition-duration .8 --transition-step 255 --transition-fps 60 -o $OUTPUT_1 $IMAGE_1; - swww img -t any --transition-bezier 0.0,0.0,1.0,1.0 --transition-duration .8 --transition-step 255 --transition-fps 60 -o $OUTPUT_2 $IMAGE_2 - } - - if ! swww query; then - swww-daemon & - fi - - load_wallpapers & - ''; - }; - }; - - # - # PACKAGES # - # - - programs.direnv = { - config = { - whitelist = { - exact = [ "/home/wizardlink/.system" ]; - - prefix = [ - "/mnt/internal/hydractify/GitHub" - "/mnt/internal/personal/projects" - "/mnt/internal/personal/study" - "/mnt/internal/repos" - "/mnt/internal/shared/projects" - "/mnt/internal/shared/work" - ]; - }; - }; - }; - - home.packages = with pkgs; [ - # Games - pcsx2 - - # Creative work - easyeffects - - # Create an FHS environment using the command `fhs`, enabling the execution of non-NixOS packages in NixOS! - ( - let - base = appimageTools.defaultFhsEnvArgs; - in - buildFHSEnv ( - base - // { - name = "fhs"; - targetPkgs = - pkgs: - ( - # pkgs.buildFHSUserEnv provides only a minimal FHS environment, - # lacking many basic packages needed by most software. - # Therefore, we need to add them manually. - # - # pkgs.appimageTools provides basic packages required by most software. - (base.targetPkgs pkgs) - ++ (with pkgs; [ - nodejs - dotnet-sdk_8 - ]) - ); - profile = "export FHS=1"; - runScript = "bash"; - extraOutputsToInstall = [ "dev" ]; - } - ) - ) - ]; - - # - # MODULES # - # - - programs.neovim = { - enable = true; - - # Enable ollama support - ollama.enable = true; - }; - - modules.hyprland = { - # Enable scripts - scripts = { - startup.enable = true; - screenshot.enable = true; - }; - - # Enable hypridle - hypridle.enable = true; - - # Add monitor configuration to hyprland - extraConfig = # hyprlang - '' - # See https://wiki.hyprland.org/Configuring/Monitors/ - monitor = DP-3, 1920x1080@74.973, 2560x0, 1 - monitor = DP-2, 2560x1440@165.00301, 0x0, 1 - - # Bind workspaces to specific monitors - workspace = 1, monitor:DP-2 - workspace = 2, monitor:DP-3 - workspace = 3, monitor:DP-2 - workspace = 4, monitor:DP-3 - workspace = 5, monitor:DP-2 - workspace = 6, monitor:DP-3 - workspace = 7, monitor:DP-2 - workspace = 8, monitor:DP-3 - workspace = 9, monitor:DP-2 - workspace = 0, monitor:DP-3 - ''; - }; -} diff --git a/hosts/wizdesk/nixos.nix b/hosts/wizdesk/nixos.nix deleted file mode 100644 index 08ec555..0000000 --- a/hosts/wizdesk/nixos.nix +++ /dev/null @@ -1,182 +0,0 @@ -{ pkgs, config, ... }: - -{ - imports = [ - ../../modules/hyprland/nixos.nix - ../../shared/nixos - ./hardware-configuration.nix - ./services/nixos - ]; - - # - # NIXOS # - # - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It‘s perfectly fine and recommended to leave - # this value at the release version of the first install of this system. - # Before changing this value read the documentation for this option - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "23.05"; - - # - # SYSTEM # - # - - # Configure options for mounted volumes. - fileSystems = { - "/".options = [ "compress=zstd" ]; - "/home".options = [ "compress=zstd" ]; - "/nix".options = [ - "compress=zstd" - "noatime" - ]; - "/mnt/extra".options = [ "nofail" ]; - "/mnt/internal".options = [ "nofail" ]; - "/mnt/media".options = [ "nofail" ]; - "/mnt/ssd".options = [ "nofail" ]; - }; - - # Enable btrf's auto scrubbing of volumes. - services.btrfs.autoScrub = { - enable = true; - interval = "weekly"; - fileSystems = [ "/" ]; - }; - - networking.hostName = "wizdesk"; # Define your hostname. - - # Open ports in the firewall. - networking.firewall = { - allowedTCPPorts = [ - 443 # SSL - 6567 # Mindustry - 80 # HTTP - 3979 # OpenTTD - 7777 # Terraria - ]; - - allowedUDPPorts = [ - 2626 # Dolphin emulator - 27015 # Source games - 28910 # Heretic II - 6567 # Mindustry - 8211 # Palworld - 3979 # OpenTTD - ]; - - allowedTCPPortRanges = [ - { - from = 1714; - to = 1764; - } # KDEConnect - ]; - allowedUDPPortRanges = [ - { - from = 1714; - to = 1764; - } # KDEConnect - ]; - }; - - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.wizardlink = { - createHome = true; - description = "Alexandre Cavalheiro"; - extraGroups = [ - "docker" - "gamemode" - "libvirtd" - "networkmanager" - "openrazer" - "postgresql" - "wheel" - ]; - - initialPassword = "wizardlink"; - isNormalUser = true; - - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDdGOyRbu6IOw9yqotxE6m7wCif7oP/2D0tlREa5Q6uo Alexandre Cavalheiro S. Tiago da Silva " - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIISfCUsZrnCMZapdrvkUCrdRiX+1xuZBdGrynNRzDI2v" # SpaceEEC - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPInBFp7zBLhFluoww65CZzcnMdhndTawBv8QYJ5s/Xt david.alejandro.rubio@gmail.com" # Kodehawa - ]; - }; - - # Set your time zone. - time.timeZone = "America/Sao_Paulo"; - - # Select internationalisation properties. - i18n = { - defaultLocale = "en_US.UTF-8"; - supportedLocales = [ - "C.UTF-8/UTF-8" - "en_GB.UTF-8/UTF-8" - "en_US.UTF-8/UTF-8" - "ja_JP.UTF-8/UTF-8" - "pt_BR.UTF-8/UTF-8" - ]; - - extraLocaleSettings = { - LANGUAGE = "en_US.UTF-8"; - LC_ADDRESS = "en_US.UTF-8"; - LC_ALL = "en_US.UTF-8"; - LC_IDENTIFICATION = "en_US.UTF-8"; - LC_MEASUREMENT = "pt_BR.UTF-8"; - LC_MONETARY = "en_US.UTF-8"; - LC_NAME = "en_US.UTF-8"; - LC_NUMERIC = "pt_BR.UTF-8"; - LC_PAPER = "pt_BR.UTF-8"; - LC_TELEPHONE = "pt_BR.UTF-8"; - LC_TIME = "en_GB.UTF-8"; - }; - }; - - # - # HARDWARE # - # - - # Enable Zenergy - boot.initrd.kernelModules = [ - "zenergy" - ]; - boot.extraModulePackages = [ - config.boot.kernelPackages.zenergy - ]; - - # Enable openrazer for managing Razer products' configuration - hardware.openrazer = { - enable = true; - users = [ "wizardlink" ]; - }; - - services.udev = { - # Vial udev rule for Monsgeek M1 - extraRules = '' - # Monsgeek M1 - KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="fffe", ATTRS{idProduct}=="0005", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl" - ''; - - # WB32 DFU rules - needed for flashing - packages = [ (pkgs.callPackage ../../packages/wb32dfu-udev-rules { }) ]; - }; - - # enable a better driver for wireless xbox controllers. - hardware.xpadneo.enable = true; - - # - # PACKAGES # - # - - environment.systemPackages = with pkgs; [ - ## Tools - # Utilities - btrfs-progs - - ## Hardware specific - openrazer-daemon # Razor products back-end - polychromatic # and it's front-end - vial - ]; -} diff --git a/hosts/wizdesk/services/home-manager/default.nix b/hosts/wizdesk/services/home-manager/default.nix deleted file mode 100644 index 20b08f2..0000000 --- a/hosts/wizdesk/services/home-manager/default.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ ... }: - -{ - imports = [ - ./hydractify-bot.nix - ./openttd.nix - ./terraria.nix - ]; -} diff --git a/hosts/wizdesk/services/home-manager/hydractify-bot.nix b/hosts/wizdesk/services/home-manager/hydractify-bot.nix deleted file mode 100644 index f11cdb8..0000000 --- a/hosts/wizdesk/services/home-manager/hydractify-bot.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ hydractify-bot, pkgs, ... }: - -{ - systemd.user.services.hydractify-bot = { - Install.WantedBy = [ "default.target" ]; - - Unit.Description = "Hydractify bot"; - Unit.After = "postgresql.service"; - - Service = { - ExecStart = "${hydractify-bot.defaultPackage.${pkgs.system}}/bin/hydractify"; - Restart = "on-failure"; - Type = "simple"; - WorkingDirectory = "/mnt/internal/hydractify/GitHub/hydractify"; - }; - }; -} diff --git a/hosts/wizdesk/services/home-manager/openttd.nix b/hosts/wizdesk/services/home-manager/openttd.nix deleted file mode 100644 index 6d0a1a4..0000000 --- a/hosts/wizdesk/services/home-manager/openttd.nix +++ /dev/null @@ -1,53 +0,0 @@ -{ - pkgs, - ... -}: - -{ - home.packages = with pkgs; [ - openttd - ]; - - systemd.user.services.openttd = { - Install.WantedBy = [ "default.target" ]; - - Unit.Description = "OpenTTD Tmux server"; - - Service = { - ExecStart = "${pkgs.tmux}/bin/tmux -L openttd new -s OpenTTD -d '${pkgs.openttd}/bin/openttd -g /home/wizardlink/.local/share/openttd/save/hyfy.sav -D'"; - ExecStop = "${pkgs.tmux}/bin/tmux kill-session -t OpenTTD"; - Restart = "on-failure"; - Type = "forking"; - }; - }; - - systemd.user.services.openttd-rcon = { - Install.WantedBy = [ "default.target" ]; - - Unit = { - Description = "OpenTTD RCON Password set"; - After = [ "openttd.service" ]; - }; - - Service = { - ExecStart = "${pkgs.tmux}/bin/tmux -L openttd send-keys -t OpenTTD 'rcon_pw aaaa' Enter"; - Type = "oneshot"; - }; - }; - - systemd.user.services.openttd-save = { - Install.WantedBy = [ "default.target" ]; - - Unit = { - Description = "OpenTTD RCON Password set"; - After = [ "openttd.service" ]; - }; - - Service = { - ExecStart = "${pkgs.tmux}/bin/tmux -L openttd send-keys -t OpenTTD 'save hyfy' Enter"; - Type = "simple"; - Restart = "always"; - RestartSec = "1800s"; - }; - }; -} diff --git a/hosts/wizdesk/services/home-manager/terraria.nix b/hosts/wizdesk/services/home-manager/terraria.nix deleted file mode 100644 index 9c134d1..0000000 --- a/hosts/wizdesk/services/home-manager/terraria.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ pkgs, ... }: - -{ - systemd.user.services.terraria = { - Install.WantedBy = [ "default.target" ]; - - Unit.Description = "Terraria TMUX Server"; - - Service = { - ExecStart = "${pkgs.tmux}/bin/tmux -L terraria new -s Terraria -d /etc/profiles/per-user/wizardlink/bin/fhs -c 'dotnet ./tModLoader.dll -server -config serverconfig.txt'"; - ExecStop = "${pkgs.tmux}/bin/tmux kill-session -t Terraria"; - Restart = "on-failure"; - Type = "forking"; - WorkingDirectory = "/mnt/ssd/SteamLibrary/steamapps/common/tModLoader"; - }; - }; -} diff --git a/hosts/wizdesk/services/nixos/archi.nix b/hosts/wizdesk/services/nixos/archi.nix deleted file mode 100644 index c47ec69..0000000 --- a/hosts/wizdesk/services/nixos/archi.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - services.archisteamfarm = { - enable = true; - web-ui.enable = true; - - bots.wizardlink = { - enabled = true; - username = "master1891891"; - - settings = { - OnlineStatus = 0; - }; - }; - }; -} diff --git a/hosts/wizdesk/services/nixos/caddy.nix b/hosts/wizdesk/services/nixos/caddy.nix deleted file mode 100644 index fb1f983..0000000 --- a/hosts/wizdesk/services/nixos/caddy.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ ... }: -{ - services.caddy = { - enable = true; - email = "contact@thewizard.link"; - - virtualHosts."thewizard.link".extraConfig = '' - redir https://github.com/wizardlink/ - header Strict-Transport-Security "max-age=63072000; includeSubDomains" - ''; - - virtualHosts."jellyfin.thewizard.link".extraConfig = '' - encode gzip - header X-Robots-Tag "none" - reverse_proxy 127.0.0.1:8096 { - flush_interval -1 - } - ''; - - virtualHosts."jellyseerr.thewizard.link".extraConfig = '' - header X-Robots-Tag "none" - reverse_proxy http://127.0.0.1:5055 - ''; - - virtualHosts."foundry.thewizard.link".extraConfig = '' - header X-Robots-Tag "none" - reverse_proxy 127.0.0.1:30000 { - flush_interval -1 - } - ''; - - virtualHosts."git.thewizard.link".extraConfig = '' - reverse_proxy 127.0.0.1:3788 - ''; - - virtualHosts."files.thewizard.link".extraConfig = '' - root * /srv/files - header X-Robots-Tag "none" - file_server - ''; - - virtualHosts."torrent.thewizard.link".extraConfig = '' - header X-Robots-Tag "none" - reverse_proxy 127.0.0.1:8144 - ''; - - virtualHosts."shoko.thewizard.link".extraConfig = '' - header X-Robots-Tag "none" - reverse_proxy 127.0.0.1:8111 - ''; - - virtualHosts."nixbin.thewizard.link".extraConfig = '' - header X-Robots-Tag "none" - reverse_proxy 127.0.0.1:7373 - ''; - }; -} diff --git a/hosts/wizdesk/services/nixos/default.nix b/hosts/wizdesk/services/nixos/default.nix deleted file mode 100644 index fcdcf83..0000000 --- a/hosts/wizdesk/services/nixos/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ ... }: - -{ - imports = [ - ./archi.nix - ./caddy.nix - ./forgejo.nix - ./jellyfin.nix - ./nix-serve.nix - ./postgresql.nix - ]; -} diff --git a/hosts/wizdesk/services/nixos/forgejo.nix b/hosts/wizdesk/services/nixos/forgejo.nix deleted file mode 100644 index db98115..0000000 --- a/hosts/wizdesk/services/nixos/forgejo.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - services.forgejo = { - enable = true; - - lfs.enable = true; - - settings = { - server = { - HTTP_PORT = 3788; - LANDING_PAGE = "explore"; - ROOT_URL = "https://git.thewizard.link"; - }; - - ui = { - # HACK: Unfortunately we need to manually put files in /var/lib/forgejo/custom/public/assets/css - # so this will break in a new system. - DEFAULT_THEME = "catppuccin-frappe-lavender"; - THEMES = "forgejo-auto,forgejo-light,forgejo-dark,gitea-auto,gitea-light,gitea-dark,forgejo-auto-deuteranopia-protanopia,forgejo-light-deuteranopia-protanopia,forgejo-dark-deuteranopia-protanopia,forgejo-auto-tritanopia,forgejo-light-tritanopia,forgejo-dark-tritanopia,catppuccin-latte-rosewater,catppuccin-latte-flamingo,catppuccin-latte-pink,catppuccin-latte-mauve,catppuccin-latte-red,catppuccin-latte-maroon,catppuccin-latte-peach,catppuccin-latte-yellow,catppuccin-latte-green,catppuccin-latte-teal,catppuccin-latte-sky,catppuccin-latte-sapphire,catppuccin-latte-blue,catppuccin-latte-lavender,catppuccin-frappe-rosewater,catppuccin-frappe-flamingo,catppuccin-frappe-pink,catppuccin-frappe-mauve,catppuccin-frappe-red,catppuccin-frappe-maroon,catppuccin-frappe-peach,catppuccin-frappe-yellow,catppuccin-frappe-green,catppuccin-frappe-teal,catppuccin-frappe-sky,catppuccin-frappe-sapphire,catppuccin-frappe-blue,catppuccin-frappe-lavender,catppuccin-macchiato-rosewater,catppuccin-macchiato-flamingo,catppuccin-macchiato-pink,catppuccin-macchiato-mauve,catppuccin-macchiato-red,catppuccin-macchiato-maroon,catppuccin-macchiato-peach,catppuccin-macchiato-yellow,catppuccin-macchiato-green,catppuccin-macchiato-teal,catppuccin-macchiato-sky,catppuccin-macchiato-sapphire,catppuccin-macchiato-blue,catppuccin-macchiato-lavender,catppuccin-mocha-rosewater,catppuccin-mocha-flamingo,catppuccin-mocha-pink,catppuccin-mocha-mauve,catppuccin-mocha-red,catppuccin-mocha-maroon,catppuccin-mocha-peach,catppuccin-mocha-yellow,catppuccin-mocha-green,catppuccin-mocha-teal,catppuccin-mocha-sky,catppuccin-mocha-sapphire,catppuccin-mocha-blue,catppuccin-mocha-lavender"; - }; - - service = { - DISABLE_REGISTRATION = true; - }; - }; - }; -} diff --git a/hosts/wizdesk/services/nixos/jellyfin.nix b/hosts/wizdesk/services/nixos/jellyfin.nix deleted file mode 100644 index c7e3f0a..0000000 --- a/hosts/wizdesk/services/nixos/jellyfin.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ pkgs, ... }: - -{ - services.jellyfin = { - enable = true; - openFirewall = true; - user = "wizardlink"; - package = pkgs.jellyfin.override { - jellyfin-web = pkgs.jellyfin-web.overrideAttrs ( - final: prev: { - installPhase = '' - runHook preInstall - - # Inject the skip intro button script. - sed -i "s###" dist/index.html - - mkdir -p $out/share - cp -a dist $out/share/jellyfin-web - - runHook postInstall - ''; - } - ); - }; - }; - - services.jellyseerr = { - enable = true; - openFirewall = true; - package = pkgs.jellyseerr.overrideAttrs ( - _final: _prev: { - dontCheckForBrokenSymlinks = true; - } - ); - }; -} diff --git a/hosts/wizdesk/services/nixos/nix-serve.nix b/hosts/wizdesk/services/nixos/nix-serve.nix deleted file mode 100644 index 6cef2fe..0000000 --- a/hosts/wizdesk/services/nixos/nix-serve.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ ... }: - -{ - services.nix-serve = { - enable = true; - port = 7373; - secretKeyFile = "/etc/keys/nixbin.thewizard.link-1"; - }; -} diff --git a/hosts/wizdesk/services/nixos/postgresql.nix b/hosts/wizdesk/services/nixos/postgresql.nix deleted file mode 100644 index 06ed2bb..0000000 --- a/hosts/wizdesk/services/nixos/postgresql.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ... }: - -{ - services.postgresql = { - enable = true; - - initialScript = pkgs.writeText "backend-initScript" '' - CREATE ROLE wizardlink WITH LOGIN SUPERUSER PASSWORD 'wizardlink' CREATEDB CREATEROLE REPLICATION; - CREATE DATABASE wizardlink; - GRANT ALL PRIVILEGES ON DATABASE wizardlink TO wizardlink; - ''; - }; -} diff --git a/hosts/wizlap/hardware-configuration.nix b/hosts/wizlap/hardware-configuration.nix deleted file mode 100644 index 3b29b09..0000000 --- a/hosts/wizlap/hardware-configuration.nix +++ /dev/null @@ -1,53 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - pkgs, - modulesPath, - ... -}: - -{ - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/796d5ad8-db83-4c4f-883d-2f1f4f1937de"; - fsType = "ext4"; - }; - - boot.initrd.luks.devices."luks-94d233be-889a-46a4-9c20-b7f026980cbf".device = "/dev/disk/by-uuid/94d233be-889a-46a4-9c20-b7f026980cbf"; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/CA05-302F"; - fsType = "vfat"; - options = [ - "fmask=0022" - "dmask=0022" - ]; - }; - - swapDevices = [ ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.docker0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/wizlap/home-manager.nix b/hosts/wizlap/home-manager.nix deleted file mode 100644 index 12cf15e..0000000 --- a/hosts/wizlap/home-manager.nix +++ /dev/null @@ -1,144 +0,0 @@ -{ pkgs, ... }: - -{ - # - ## HOME CONFIGURATION # - # - - # Import configurations for better modularity. - imports = [ - ../../modules/emacs - ../../modules/hyprland/home-manager.nix - ../../modules/neovim - ../../shared/home-manager - ]; - - # Home Manager needs a bit of information about you and the paths it should - # manage. - home.username = "wizardlink"; - home.homeDirectory = "/home/wizardlink"; - - # This value determines the Home Manager release that your configuration is - # compatible with. This helps avoid breakage when a new Home Manager release - # introduces backwards incompatible changes. - # - # You should not change this value, even if you update Home Manager. If you do - # want to update the value, then make sure to first check the Home Manager - # release notes. - home.stateVersion = "23.05"; # Please read the comment before changing. - - home.file = { - # Create wallpaper script to be read by the start_services.sh script. - ".local/share/scripts/wallpaper.sh" = { - executable = true; - text = # sh - '' - # - ## Start wallpaper daemon and set one. - # - OUTPUT_1="eDP-1" - IMAGE_1="/home/wizardlink/Pictures/wallhaven-x6p3y3.jpg" - - function load_wallpapers() { - swww img -t any --transition-bezier 0.0,0.0,1.0,1.0 --transition-duration .8 --transition-step 255 --transition-fps 60 -o $OUTPUT_1 $IMAGE_1; - } - - if ! swww query; then - swww-daemon & - fi - - load_wallpapers & - ''; - }; - }; - - # - # PACKAGES # - # - - programs.direnv = { - config = { - whitelist = { - exact = [ "/home/wizardlink/.system" ]; - - prefix = [ - "/home/wizardlink/Documents/projects" - ]; - }; - }; - }; - - home.packages = with pkgs; [ - ## Tools - # Utilities - brightnessctl - - # Create an FHS environment using the command `fhs`, enabling the execution of non-NixOS packages in NixOS! - ( - let - base = appimageTools.defaultFhsEnvArgs; - in - buildFHSEnv ( - base - // { - name = "fhs"; - targetPkgs = - pkgs: - ( - # pkgs.buildFHSUserEnv provides only a minimal FHS environment, - # lacking many basic packages needed by most software. - # Therefore, we need to add them manually. - # - # pkgs.appimageTools provides basic packages required by most software. - (base.targetPkgs pkgs) - ++ (with pkgs; [ - ]) - ); - profile = "export FHS=1"; - runScript = "bash"; - extraOutputsToInstall = [ "dev" ]; - } - ) - ) - ]; - - # - # MODULES # - # - - # Enable neovim - programs.neovim = { - enable = true; - - # Enable ollama support - ollama.enable = true; - }; - - # Add monitor configuration to hyprland - modules.hyprland = { - # Enable scripts - scripts = { - startup.enable = true; - screenshot.enable = true; - }; - - # Add monitor configuration to hyprland - extraConfig = # hyprlang - '' - # See https://wiki.hyprland.org/Configuring/Monitors/ - monitor = eDP-1, 1920x1080@60.01, 0x0, 1 - - # Bind workspaces to specific monitors - workspace = 1, monitor:eDP-1 - workspace = 2, monitor:eDP-1 - workspace = 3, monitor:eDP-1 - workspace = 4, monitor:eDP-1 - workspace = 5, monitor:eDP-1 - workspace = 6, monitor:eDP-1 - workspace = 7, monitor:eDP-1 - workspace = 8, monitor:eDP-1 - workspace = 9, monitor:eDP-1 - workspace = 0, monitor:eDP-1 - ''; - }; -} diff --git a/hosts/wizlap/nixos.nix b/hosts/wizlap/nixos.nix deleted file mode 100644 index 61437fc..0000000 --- a/hosts/wizlap/nixos.nix +++ /dev/null @@ -1,118 +0,0 @@ -{ config, ... }: - -{ - imports = [ - ../../modules/hyprland/nixos.nix - ../../shared/nixos - ./hardware-configuration.nix - ]; - - # - # NIXOS # - # - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It‘s perfectly fine and recommended to leave - # this value at the release version of the first install of this system. - # Before changing this value read the documentation for this option - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "23.05"; - - # Consume my desktop's binary cache. This is specially useful since (in theory) - # I will always update the flake and desktop machine first, so when I pull the changes, - # my desktop will have all the binaries my laptop needs. - nix.settings.substituters = [ "http://192.168.0.100:7373" ]; - nix.settings.trusted-public-keys = [ - "wizdesk-1:2UvctPjiMwMs7r2r7VPvoPmh4OcUjY3JmaRDJnOTZY8=" - ]; - - # - # SYSTEM # - # - networking.hostName = "wizlap"; # Define your hostname. - - # Open ports in the firewall. - networking.firewall = { - allowedTCPPortRanges = [ - { - from = 1714; - to = 1764; - } # KDEConnect - ]; - allowedUDPPortRanges = [ - { - from = 1714; - to = 1764; - } # KDEConnect - ]; - }; - - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.wizardlink = { - createHome = true; - description = "Alexandre Cavalheiro"; - extraGroups = [ - "docker" - "gamemode" - "libvirtd" - "networkmanager" - "openrazer" - "postgresql" - "wheel" - ]; - - initialPassword = "wizardlink"; - isNormalUser = true; - - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDdGOyRbu6IOw9yqotxE6m7wCif7oP/2D0tlREa5Q6uo Alexandre Cavalheiro S. Tiago da Silva " - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIISfCUsZrnCMZapdrvkUCrdRiX+1xuZBdGrynNRzDI2v" # SpaceEEC - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPInBFp7zBLhFluoww65CZzcnMdhndTawBv8QYJ5s/Xt david.alejandro.rubio@gmail.com" # Kodehawa - ]; - }; - - # Set your time zone. - time.timeZone = "America/Sao_Paulo"; - - # Select internationalisation properties. - i18n = { - defaultLocale = "en_US.UTF-8"; - supportedLocales = [ - "C.UTF-8/UTF-8" - "en_GB.UTF-8/UTF-8" - "en_US.UTF-8/UTF-8" - "ja_JP.UTF-8/UTF-8" - "pt_BR.UTF-8/UTF-8" - ]; - - extraLocaleSettings = { - LANGUAGE = "en_US.UTF-8"; - LC_ADDRESS = "en_US.UTF-8"; - LC_ALL = "en_US.UTF-8"; - LC_IDENTIFICATION = "en_US.UTF-8"; - LC_MEASUREMENT = "pt_BR.UTF-8"; - LC_MONETARY = "en_US.UTF-8"; - LC_NAME = "en_US.UTF-8"; - LC_NUMERIC = "pt_BR.UTF-8"; - LC_PAPER = "pt_BR.UTF-8"; - LC_TELEPHONE = "pt_BR.UTF-8"; - LC_TIME = "en_GB.UTF-8"; - }; - }; - - # - # HARDWARE # - # - - # Enable Zenergy - boot.initrd.kernelModules = [ - "zenergy" - ]; - boot.extraModulePackages = [ - config.boot.kernelPackages.zenergy - ]; - - # enable a better driver for wireless xbox controllers. - hardware.xpadneo.enable = true; -} diff --git a/modules/README.md b/modules/README.md deleted file mode 100644 index 63f1cb6..0000000 --- a/modules/README.md +++ /dev/null @@ -1,10 +0,0 @@ -This directory encompasses all modules/resources that are exported by this repository's flake. - -## Currently maintained modules - -- [hyprland](./hyprland) -- [neovim](./neovim) -- [emacs](./emacs) -- [template](./template) - -> _Be sure to click the hyperlinks for the relevant documentation._ diff --git a/modules/emacs/README.md b/modules/emacs/README.md deleted file mode 100644 index ea139eb..0000000 --- a/modules/emacs/README.md +++ /dev/null @@ -1,6 +0,0 @@ -This module has no options, it simply just adds the necessary packages to run -[DOOM Emacs](https://github.com/doomemacs/doomemacs) and writes contents inside [./doom](./doom) into `$XDG_CONFIG_HOME/doom`. - -## Screenshots - -![image](/assets/screenshots/doomemacs.png) diff --git a/modules/emacs/default.nix b/modules/emacs/default.nix deleted file mode 100644 index dd83dec..0000000 --- a/modules/emacs/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ pkgs, ... }: - -{ - home.packages = with pkgs; [ - # CORE - git - emacs - ripgrep - - # Optional for DOOM - clang - coreutils - fd - - pandoc # For org-pandoc - texliveFull # for latex conversions - (aspellWithDicts ( - dicts: with dicts; [ - en - pt_BR - ] - )) # for flyspell - gnuplot_qt # for plotting graphs - ledger # for accounting and org-ledger - gzip # Otherwise random errors occur from the onChange script - ]; - - # Neatly place the configuration files for doom in their right place. - xdg.configFile."doom" = { - source = ./doom; - recursive = true; - }; -} diff --git a/modules/emacs/doom/config.el b/modules/emacs/doom/config.el deleted file mode 100644 index 18d5583..0000000 --- a/modules/emacs/doom/config.el +++ /dev/null @@ -1,111 +0,0 @@ -;;; $DOOMDIR/config.el -*- lexical-binding: t; -*- - -;; Place your private configuration here! Remember, you do not need to run 'doom -;; sync' after modifying this file! - - -;; Some functionality uses this to identify you, e.g. GPG configuration, email -;; clients, file templates and snippets. It is optional. -(setq user-full-name "Alexandre Cavalheiro S. Tiago da Silva" - user-mail-address "contact@thewizard.link") - -;; Doom exposes five (optional) variables for controlling fonts in Doom: -;; -;; - `doom-font' -- the primary font to use -;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable) -;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for -;; presentations or streaming. -;; - `doom-symbol-font' -- for symbols -;; - `doom-serif-font' -- for the `fixed-pitch-serif' face -;; -;; See 'C-h v doom-font' for documentation and more examples of what they -;; accept. For example: -;; -;;(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light) -;; doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13)) -;; -;; If you or Emacs can't find your font, use 'M-x describe-font' to look them -;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to -;; refresh your font settings. If Emacs still can't find your font, it likely -;; wasn't installed correctly. Font issues are rarely Doom issues! -(setq doom-font (font-spec :family "BlexMono Nerd Font" :size 16)) - -;; There are two ways to load a theme. Both assume the theme is installed and -;; available. You can either set `doom-theme' or manually load a theme with the -;; `load-theme' function. This is the default: -(setq doom-theme 'catppuccin) - -;; This determines the style of line numbers in effect. If set to `nil', line -;; numbers are disabled. For relative line numbers, set this to `relative'. -(setq display-line-numbers-type 'relative) - -;; If you use `org' and don't want your org files in the default location below, -;; change `org-directory'. It must be set before org loads! -(setq org-directory "~/Documents/notes" - org-agenda-files (doom-files-in `(,org-directory, "~/Documents/zettelkasten") :type 'files :match "\\.org\\'")) - - -;; Whenever you reconfigure a package, make sure to wrap your config in an -;; `after!' block, otherwise Doom's defaults may override your settings. E.g. -;; -;; (after! PACKAGE -;; (setq x y)) -;; -;; The exceptions to this rule: -;; -;; - Setting file/directory variables (like `org-directory') -;; - Setting variables which explicitly tell you to set them before their -;; package is loaded (see 'C-h v VARIABLE' to look up their documentation). -;; - Setting doom variables (which start with 'doom-' or '+'). -;; -;; Here are some additional functions/macros that will help you configure Doom. -;; -;; - `load!' for loading external *.el files relative to this one -;; - `use-package!' for configuring packages -;; - `after!' for running code after a package has loaded -;; - `add-load-path!' for adding directories to the `load-path', relative to -;; this file. Emacs searches the `load-path' when you load packages with -;; `require' or `use-package'. -;; - `map!' for binding new keys -;; -;; To get information about any of these functions/macros, move the cursor over -;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k'). -;; This will open documentation for it, including demos of how they are used. -;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces, -;; etc). -;; -;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how -;; they are implemented. - -;; Set the tab size to 2 -(setq tab-width 2) - -;; Configure initial major mode for the scratch buffer -(setq initial-major-mode 'org-mode) - -;; Configure orm-roam -(setq org-roam-directory "~/Documents/zettelkasten") -(map! (:leader :desc "Opens a daily note through the calendar" :n "nrdF" #'org-roam-dailies-find-date)) - -(use-package! org-roam-ui - :after org-roam - :config - (setq org-roam-ui-sync-theme t - org-roam-ui-follow t - org-roam-ui-update-on-save t - org-roam-ui-open-on-start t)) - -;; Configure doom-themes with treemacs -(with-eval-after-load 'doom-themes - (doom-themes-treemacs-config)) - -;; Configure elfeed-org -(setq rmh-elfeed-org-files '("/home/wizardlink/Documents/notes/elfeed.org")) - -;; Set CLI options for ox-pandoc when generating PDFs from LaTeX, -;; ensuring that `latexmk` is used so we have proper citations. -(use-package ox-pandoc - :init - (setq org-pandoc-options-for-latex-pdf '((pdf-engine . "latexmk") - (pdf-engine-opt . "-bibtex") - (biblatex . t)))) diff --git a/modules/hyprland/README.md b/modules/hyprland/README.md deleted file mode 100644 index 2841664..0000000 --- a/modules/hyprland/README.md +++ /dev/null @@ -1,50 +0,0 @@ -The [NixOS] module installs [Hyprland] onto the system. - -Whilst the [Home Manager] module generates the dotfiles for [Hyprland] and optionally [hypridle]. - -It can be configured through `modules.hyprland`. - -## Module options - -### extraConfig - -`modules.hyprland.extraConfig` when set will be appended to the top of the configuration I generate, you can see where -that is [here](./home-manager.nix#L189). - -There are no monitors configured by default, so you should use this option to do so. - -### hypridle.enable - -Whether to configure and enable the [hypridle] package. Be mindful that it may not auto-start, I have yet to find why but -even though it configures to start after `graphical-session.target`, that isn't reached in Hyprland sometimes. - -### scripts.screenshot.enable - -When enabled it will create two script files in `$XDG_DATA_HOME/scripts/hyprland` and two keybinds for you to run these -scripts, allowing you to take screenshots of a region and the entire screen of your first monitor. - -### scripts.startup.enable - -Not my proudest option, this will add two packages containing a startup script for apps that I use in the daily & -services. If this module ever gets actually used by someone, then I'll refine it. - -## Visuals - -### Active window - -![image](/assets/screenshots/hyprland-active.png) - -### Inactive window - -![image](/assets/screenshots/hyprland-inactive.png) - -### Gaps - -![image](/assets/screenshots/hyprland-gaps.png) - - - -[hyprland]: https://hyprland.org/ -[hypridle]: https://github.com/hyprwm/hypridle -[home manager]: https://github.com/nix-community/home-manager -[nixos]: https://nixos.org diff --git a/modules/hyprland/home-manager.nix b/modules/hyprland/home-manager.nix deleted file mode 100644 index 7a2439e..0000000 --- a/modules/hyprland/home-manager.nix +++ /dev/null @@ -1,296 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -let - cfg = config.modules.hyprland; -in -{ - options.modules.hyprland = { - extraConfig = lib.mkOption { - type = lib.types.str; - default = ""; - example = # hyprlang - '' - monitor = DP-3, 1920x1080@74.973, 2560x0, 1 - monitor = DP-2, 2560x1440@165.00301, 0x0, 1 - ''; - description = "Configuration to be appended to my own."; - }; - - hypridle.enable = lib.mkEnableOption "hypridle"; - - scripts = { - screenshot.enable = lib.mkEnableOption "screenshot"; - startup.enable = lib.mkEnableOption "startup"; - }; - }; - - config = { - home.sessionVariables = { - NIXOS_OZONE_WL = "1"; - QT_QPA_PLATFORM = "wayland"; - }; - - xdg.configFile."hypr/frappe.conf".source = builtins.fetchurl { - url = "https://raw.githubusercontent.com/catppuccin/hyprland/main/themes/frappe.conf"; - sha256 = "1clw669i1n3dhawdw4clmjv75fy3smycb5iqk3sanzpr3y0i4vwx"; - }; - - # Enable hypridle - services.hypridle = lib.mkIf cfg.hypridle.enable { - enable = true; - - settings = { - listener = [ - { - timeout = 180; - on-timeout = "hyprctl dispatch dpms off"; - on-resume = "hyprctl dispatch dpms on"; - } - ]; - }; - }; - - # Set-up the scripts for services and apps. - home.packages = lib.mkIf cfg.scripts.startup.enable [ - (import ./scripts/start_services.nix pkgs) - ]; - - # Then add the hyprland screenshot scripts. - xdg.dataFile = lib.mkIf cfg.scripts.screenshot.enable { - "scripts/hyprland/screenshot.sh".source = ./scripts/screenshot.sh; - "scripts/hyprland/screenshot_area.sh".source = ./scripts/screenshot_area.sh; - }; - - # Configure hyprland - we enable it in NixOS. - xdg.configFile."hypr/hyprland.conf".text = # hyprlang - '' - source = $HOME/.config/hypr/frappe.conf - ${cfg.extraConfig} - - # - # Please note not all available settings / options are set here. - # For a full list, see the wiki - # - - autogenerated = 0 # remove this line to remove the warning - - # See https://wiki.hyprland.org/Configuring/Keywords/ for more - - # Inject home-manager session variables - exec-once = /etc/profiles/per-user/wizardlink/etc/profile.d/hm-session-vars.sh - - # Start the core services of my desktop - exec-once = start_services - - # Set cursor size. - exec-once = hyprctl setcursor 24 - env = XCURSOR_SIZE, 24 - - # Source a file (multi-file configs) - # source = ~/.config/hypr/myColors.conf - - # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ - input { - kb_layout = - kb_variant = - kb_model = - kb_options = - kb_rules = - - follow_mouse = 1 - float_switch_override_focus = 1 - - accel_profile = flat - force_no_accel = true - - sensitivity = 0 # -1.0 - 1.0, 0 means no modification. - - tablet { - output = DP-2 - } - } - - general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - gaps_in = 6 - gaps_out = 18 - border_size = 2 - col.active_border = $base $surface0 $green 45deg - col.inactive_border = $base $surface0 $blue 45deg - - layout = dwindle - } - - decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - rounding = 8 - - blur { - enabled = true - size = 8 - passes = 1 - new_optimizations = true - } - - shadow { - enabled = true - range = 4 - render_power = 3 - color = $crust - } - } - - animations { - enabled = yes - - # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more - - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 - - animation = windows, 1, 7, myBezier - animation = windowsOut, 1, 7, default, popin 80% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default - } - - dwindle { - # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more - pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below - preserve_split = yes # you probably want this - } - - master { - # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more - new_status = slave - } - - gestures { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - workspace_swipe = off - } - - # Example windowrule v1 - # windowrule = float, ^(kitty)$ - # Example windowrule v2 - # windowrule = float,class:^(kitty)$,title:^(kitty)$ - # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more - - # See https://wiki.hyprland.org/Configuring/Keywords/ for more - $mainMod = SUPER - - # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more - bind = $mainMod CTRL, F, fullscreenstate, -1 2 - bind = $mainMod CTRL, L, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy - bind = $mainMod CTRL, P, exec, ~/.local/share/scripts/hyprland/screenshot_area.sh - bind = $mainMod CTRL, V, pin - bind = $mainMod SHIFT, F, fullscreen, 1 - bind = $mainMod SHIFT, P, exec, ~/.local/share/scripts/hyprland/screenshot.sh - bind = $mainMod, C, killactive - bind = $mainMod, E, exec, thunar - bind = $mainMod, F, fullscreen - bind = $mainMod, M, exit - bind = $mainMod, O, togglesplit # dwindle - bind = $mainMod, P, pseudo # dwindle - bind = $mainMod, Q, exec, alacritty - bind = $mainMod, R, exec, rofi -show drun - bind = $mainMod, V, togglefloating - - # Move focus with mainMod + arrow keys - bind = $mainMod, H, movefocus, l - bind = $mainMod, L, movefocus, r - bind = $mainMod, K, movefocus, u - bind = $mainMod, J, movefocus, d - - # Switch workspaces with mainMod + [0-9] - bind = $mainMod, 1, workspace, 1 - bind = $mainMod, 2, workspace, 2 - bind = $mainMod, 3, workspace, 3 - bind = $mainMod, 4, workspace, 4 - bind = $mainMod, 5, workspace, 5 - bind = $mainMod, 6, workspace, 6 - bind = $mainMod, 7, workspace, 7 - bind = $mainMod, 8, workspace, 8 - #bind = $mainMod, 9, workspace, 9 - #bind = $mainMod, 0, workspace, 10 - - # Move active window to a workspace with mainMod + SHIFT + [0-9] - bind = $mainMod SHIFT, 1, movetoworkspace, 1 - bind = $mainMod SHIFT, 2, movetoworkspace, 2 - bind = $mainMod SHIFT, 3, movetoworkspace, 3 - bind = $mainMod SHIFT, 4, movetoworkspace, 4 - bind = $mainMod SHIFT, 5, movetoworkspace, 5 - bind = $mainMod SHIFT, 6, movetoworkspace, 6 - bind = $mainMod SHIFT, 7, movetoworkspace, 7 - bind = $mainMod SHIFT, 8, movetoworkspace, 8 - bind = $mainMod SHIFT, 9, movetoworkspace, 9 - bind = $mainMod SHIFT, 0, movetoworkspace, 10 - - # Scroll through existing workspaces with mainMod + scroll - bind = $mainMod, mouse_down, workspace, e+1 - bind = $mainMod, mouse_up, workspace, e-1 - - # Move/resize windows with mainMod + LMB/RMB and dragging - bind = $mainMod SHIFT, H, movewindow, l - bind = $mainMod SHIFT, L, movewindow, r - bind = $mainMod SHIFT, K, movewindow, u - bind = $mainMod SHIFT, J, movewindow, d - bind = $mainMod ALT, H, resizeactive, -5% 0 - bind = $mainMod ALT, L, resizeactive, 5% 0 - bind = $mainMod ALT, K, resizeactive, 0 -5% - bind = $mainMod ALT, J, resizeactive, 0 5% - bindm = $mainMod, mouse:272, movewindow - bindm = $mainMod, mouse:273, resizewindow - - # Volume changes - binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+ - binde = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%- - bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle - - # Passthrough binds - bind = SHIFT CTRL, F12, pass, class:^(com\.obsproject\.Studio)$ - - # Window rules for xwaylandvideobridge - windowrule = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ - windowrule = noanim,class:^(xwaylandvideobridge)$ - windowrule = nofocus,class:^(xwaylandvideobridge)$ - windowrule = noinitialfocus,class:^(xwaylandvideobridge)$ - - # Rules for windowkill - windowrule = tag +windowkill, class:^(steam_app_2726450)$ - windowrule = noborder, tag:windowkill - windowrule = pin, tag:windowkill - windowrule = opacity 0.9, tag:windowkill - - # Rules for Awakened PoE - windowrule = tag +poe, class:^(steam_app_238960)$ - windowrule = allowsinput, tag:poe - - windowrule = tag +apt, class:^(awakened-poe-trade)$ - windowrule = float, tag:apt - windowrule = noblur, tag:apt - windowrule = noborder, tag:apt - windowrule = noshadow, tag:apt - - # Rules for anki - windowrule = float, class:^(anki)$ - - windowrule = tag +gw2, class:^(steam_app_1284210)$ - windowrule = noblur, tag:gw2 - windowrule = noborder, tag:gw2 - - # Rules for godot - windowrule = tag +godot, class:^(Godot)$, title:^(.+)$ - windowrule = center, tag:godot - windowrule = size 50% 50%, tag:godot - ''; - }; -} diff --git a/modules/hyprland/nixos.nix b/modules/hyprland/nixos.nix deleted file mode 100644 index de80852..0000000 --- a/modules/hyprland/nixos.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ pkgs, hyprland, ... }: - -let - hyprland-pkgs = hyprland.inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system}; -in -{ - # Enable Hyprland's cachix - nix.settings.substituters = [ "https://hyprland.cachix.org" ]; - nix.settings.trusted-public-keys = [ - "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" - ]; - - # Enable Hyprland - programs.hyprland = { - enable = true; - - package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; - portalPackage = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; - }; - - # Overwrite the Mesa packages with Hyprland's for consitency - hardware.graphics = { - package = hyprland-pkgs.mesa; - package32 = hyprland-pkgs.pkgsi686Linux.mesa; - }; -} diff --git a/modules/hyprland/scripts/screenshot.sh b/modules/hyprland/scripts/screenshot.sh deleted file mode 100755 index e5e91cc..0000000 --- a/modules/hyprland/scripts/screenshot.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -FILE_PATH="/mnt/internal/personal/screenshots/$(date +'%Y-%m-%d_%H-%M-%S').png" - -grim -t png -o DP-2 $FILE_PATH -wl-copy <$FILE_PATH diff --git a/modules/hyprland/scripts/screenshot_area.sh b/modules/hyprland/scripts/screenshot_area.sh deleted file mode 100755 index e2b6163..0000000 --- a/modules/hyprland/scripts/screenshot_area.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -FILE_PATH="/mnt/internal/personal/screenshots/$(date +'%Y-%m-%d_%H-%M-%S').png" - -grim -t png -g "$(slurp -w 0 -b '#6E738D77')" $FILE_PATH -wl-copy <$FILE_PATH diff --git a/modules/hyprland/scripts/start_services.nix b/modules/hyprland/scripts/start_services.nix deleted file mode 100644 index 068368d..0000000 --- a/modules/hyprland/scripts/start_services.nix +++ /dev/null @@ -1,59 +0,0 @@ -pkgs: - -pkgs.writeShellScriptBin "start_services" '' - # - # Make sure xdg-desktop-portal-hyprland has access to what it needs - # - dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP & - - # - # Start waybar. - # - waybar & - - - # - # Start wallpaper daemon - # - ~/.local/share/scripts/wallpaper.sh & - - # - # Start notification daemon. - # - mako & - - # - # Start polkit agent - # - ${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1 & - - # - # Start kwallet service - # - kwalletd6 & - - # - # Start kdeconnect daemon - # - kdeconnectd & - - # - # Start Fcitx5 - # - fcitx5 & - - # - # Start the blueman applet for managing bluetooth devices - # - blueman-applet & - - # - # Clipboard manager - # - ${pkgs.wl-clipboard}/bin/wl-paste --watch cliphist store & - - # - # Service that syncs X11 and Wayland clipboards - # - clipboard-sync -'' diff --git a/modules/neovim/README.md b/modules/neovim/README.md deleted file mode 100644 index 6e917b5..0000000 --- a/modules/neovim/README.md +++ /dev/null @@ -1,42 +0,0 @@ -This module generates dotfiles for [neovim]. - -The module extends `programs.neovim`. - -## Module options - -### programs.neovim.flakePath - -The location of your system's flake, [nixd] will execute an expression defined in the LSP's configuration that reads -the flake's contents to evaluate [NixOS] and [Home Manager] options. - -This setting is optional since other programs might force you to set the `FLAKE` environment variable; if this is not -set by the time you open [neovim] it will spout an error, impeding critical plugins from starting. - -### programs.neovim.ollama.enable - -Whether to add an [ollama] package to be used with [ollama.nvim](https://github.com/nomnivore/ollama.nvim). - -### programs.neovim.ollama.type - -The type of [ollama] package to be added, valid options are: `amd`, `nvidia` or `cpu`. - -## My neovim failed because of package X not existing - -My configuration is based off of `nixos-unstable` so sometimes your package may not exist or have a different name, I -apologise for that but I don't plan on maintaining backwards compatibility. :( - -## How it looks - -Here's some screenshots of how it currently looks like: - -![image](/assets/screenshots/neovim-dashboard.png) -![image](/assets/screenshots/neovim-nix.png) -![image](/assets/screenshots/neovim-rust.png) - -The theme I'm using is [catppuccin](https://github.com/catppuccin) in case you're curious. - -[neovim]: https://neovim.io/ -[Home Manager]: https://github.com/nix-community/home-manager -[nixos]: https://nixos.org -[nixd]: https://github.com/nix-community/nixd/ -[ollama]: https://ollama.com/ diff --git a/modules/neovim/default.nix b/modules/neovim/default.nix deleted file mode 100644 index 163fad1..0000000 --- a/modules/neovim/default.nix +++ /dev/null @@ -1,160 +0,0 @@ -{ - config, - pkgs, - lib, - blink-cmp, - ... -}: - -let - inherit (lib) - types - mkOption - mkIf - mkEnableOption - ; - - ollamaPackage = mkIf config.programs.neovim.ollama.enable ( - if config.programs.neovim.ollama.type == "amd" then - pkgs.ollama-rocm - else if config.programs.neovim.ollama.type == "nvidia" then - pkgs.ollama-cuda - else - pkgs.ollama - ); -in -{ - options.programs.neovim = { - flakePath = mkOption { - default = null; - description = "The path to your flake, this will be the value of the `FLAKE` environment variable."; - example = "~/.config/nix"; - type = types.nullOr types.str; - }; - - ollama = { - enable = mkEnableOption "enable"; - type = mkOption { - default = "amd"; - description = "The type of ollama package to install, accelerated by an AMD GPU, NVIDIA GPU or CPU."; - example = "amd"; - type = types.enum [ - "amd" - "nvidia" - "cpu" - ]; - }; - }; - }; - - config = { - home.sessionVariables = - { - EDITOR = "nvim"; - MANPAGER = "nvim +Man!"; - } - // lib.optionalAttrs (config.programs.neovim.flakePath != null) { - FLAKE = config.programs.neovim.flakePath; - }; - - programs.neovim = { - withNodeJs = true; - withPython3 = true; - - extraLuaConfig = builtins.readFile ./init.lua; - - extraPackages = - with pkgs; - [ - # Needed by LuaSnip - luajitPackages.jsregexp - - # Treesitter - gcc # For compiling languages - - # CMAKE - neocmakelsp - - # C/C++ - clang-tools - vscode-extensions.ms-vscode.cpptools - - # C# - #csharp-ls Testing roslyn.nvim - roslyn-ls - rzls - csharpier - netcoredbg - - # HTML/CSS/JSON - emmet-ls - vscode-langservers-extracted - - # LUA - lua-language-server - stylua - - # Markdown - markdownlint-cli - marksman - - # Nix - deadnix - nixd - nixfmt-rfc-style - statix - - # Python - basedpyright - python312Packages.flake8 - ruff - - # TypeScript/JavaScript - vtsls - deno - vscode-js-debug - - # Rust - rust-analyzer - cargo # Needed by blink-cmp - taplo - vscode-extensions.vadimcn.vscode-lldb - - # Vue - prettierd - vue-language-server - - # Svelte - nodePackages.svelte-language-server - - # YAML - yaml-language-server - ] - ++ pkgs.lib.optionals config.programs.neovim.ollama.enable [ - # Needed by ollama.nvim - curl - ollamaPackage - ]; - }; - - xdg.configFile."nvim/lua" = { - recursive = true; - source = ./lua; - }; - - xdg.configFile."nvim/queries" = { - recursive = true; - source = ./queries; - }; - - xdg.configFile."nvim/ftplugin" = { - recursive = true; - source = ./ftplugin; - }; - - xdg.dataFile."nvim/lazy/blink.cmp/target/release/libblink_cmp_fuzzy.so" = { - recursive = true; - source = "${blink-cmp.packages.${pkgs.system}.blink-fuzzy-lib}/lib/libblink_cmp_fuzzy.so"; - }; - }; -} diff --git a/modules/neovim/ftplugin/cs.lua b/modules/neovim/ftplugin/cs.lua deleted file mode 100644 index f7b5880..0000000 --- a/modules/neovim/ftplugin/cs.lua +++ /dev/null @@ -1,160 +0,0 @@ ----@class CSFTPlugin.Project ----@field dll_path string ----@field name string ----@field project_path string ----@field target_framework string - ----@class CSFTPlugin.LaunchOptions: dap.Configuration ----@field cwd string? ----@field program (fun(): thread)? - ----@class CSFTPlugin ----@field dotnet_cmd string? ----@field launch_options CSFTPlugin.LaunchOptions? -local M = { - dotnet_cmd = vim.fn.exepath "dotnet", - launch_options = { - name = "Launch project DLL", - request = "launch", - type = "netcoredbg", - }, -} - ----@param command string The shell command to execute ----@return string[] -function M.cmd(command) - -- execute command - local exec_return = vim.fn.execute("!" .. command) - - -- get the output by line - local output = vim.tbl_filter( - ---@param item string - ---@return boolean - function(item) - if item == "" then - return false - else - return true - end - end, - vim.split(exec_return, "[\n]") - ) - - -- remove echo line (":!") - table.remove(output, 1) - - return output -end - ----@return CSFTPlugin.Project[] -function M.find_projects() - ---@type CSFTPlugin.Project[] - local projects = {} - - local csproj_extension = ".csproj" - - local csproj_files = M.cmd("find . -name '*" .. csproj_extension .. "'") - - for _, file_path in ipairs(csproj_files) do - local sub_start, sub_end = string.find(file_path, "%w+%" .. csproj_extension) - - local project_name = string.sub(file_path, sub_start or 1, sub_end - #csproj_extension) - local project_path = vim.fn.simplify(vim.fn.getcwd() .. "/" .. string.sub(file_path, 1, sub_start - 1)) - - local target_framework = M.cmd("rg -e 'TargetFramework>(.*)<' -r '$1' -o " .. file_path)[1] - - projects[#projects + 1] = { - dll_path = project_path .. "bin/Debug/" .. target_framework .. "/" .. project_name .. ".dll", - name = project_name, - project_path = project_path, - target_framework = target_framework, - } - end - - return projects -end - ----@param command string The dotnet CLI command to run ----@return string[] -function M:run(command) - return M.cmd(self.dotnet_cmd .. " " .. command) -end - ----@return boolean -function M:check_version() - local cmd_output = self:run "--version" - - local sub_start = string.find(cmd_output[1], "%d+%.%d+%.%d+") - if not sub_start then - return false - end - - return true -end - ----@return thread -function M:choose_dll() - self.projects = self.find_projects() - - local dap = require "dap" - - return coroutine.create(function(search_coroutine) - vim.ui.select( - self.projects, - { - prompt = "Select project to debug:", - ---@param item CSFTPlugin.Project - ---@return string - format_item = function(item) - return item.name - end, - }, - ---@param item CSFTPlugin.Project - function(item) - local path = item and item.dll_path or dap.ABORT - - if path ~= dap.ABORT then - self:run "build" - self.launch_options.cwd = item.project_path - end - - coroutine.resume(search_coroutine, path) - end - ) - end) -end - -function M:start() - local has_dotnet = self:check_version() - - if not has_dotnet then - vim.notify_once("dotnet executable not present of malfunctioning", vim.log.levels.ERROR) - return - end - - vim.fn.setenv("DOTNET_ENVIRONMENT", "Development") - - local debugger_path = vim.fn.get_nix_store "netcoredbg" .. "/bin/netcoredbg" - - local dap = require "dap" - - ---@type dap.ExecutableAdapter - dap.adapters.netcoredbg = { - type = "executable", - command = debugger_path, - args = { "--interpreter=vscode" }, - } - - self.launch_options.program = function() - return self:choose_dll() - end - - ---@type dap.Configuration[] - dap.configurations.cs = { self.launch_options } - - vim.g.loaded_csftplugin = true -end - -if not vim.g.loaded_csftplugin then - M:start() -end diff --git a/modules/neovim/init.lua b/modules/neovim/init.lua deleted file mode 100644 index d59bf57..0000000 --- a/modules/neovim/init.lua +++ /dev/null @@ -1,23 +0,0 @@ --- This file simply bootstraps the installation of Lazy.nvim and then calls other files for execution --- This file doesn't necessarily need to be touched, BE CAUTIOUS editing this file and proceed at your own risk. -local lazypath = vim.env.LAZY or vim.fn.stdpath "data" .. "/lazy/lazy.nvim" -if not (vim.env.LAZY or (vim.uv or vim.loop).fs_stat(lazypath)) then - -- stylua: ignore - vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", - lazypath }) -end -vim.opt.rtp:prepend(lazypath) - --- validate that lazy is available -if not pcall(require, "lazy") then - -- stylua: ignore - vim.api.nvim_echo( - { { ("Unable to load lazy from: %s\n"):format(lazypath), "ErrorMsg" }, { "Press any key to exit...", "MoreMsg" } }, - true, {}) - vim.fn.getchar() - vim.cmd.quit() -end - -require "util" -require "lazy_setup" -require "polish" diff --git a/modules/neovim/lua/community.lua b/modules/neovim/lua/community.lua deleted file mode 100644 index b752202..0000000 --- a/modules/neovim/lua/community.lua +++ /dev/null @@ -1,36 +0,0 @@ --- AstroCommunity: import any community modules here --- We import this file in `lazy_setup.lua` before the `plugins/` folder. --- This guarantees that the specs are processed before any user plugins. - ----@type LazySpec -return { - "AstroNvim/astrocommunity", - { import = "astrocommunity.colorscheme.catppuccin" }, - - { import = "astrocommunity.media.vim-wakatime" }, - - { import = "astrocommunity.editing-support.todo-comments-nvim" }, - - { import = "astrocommunity.motion.flit-nvim" }, - { import = "astrocommunity.motion.mini-ai" }, - { import = "astrocommunity.motion.mini-surround" }, - - { import = "astrocommunity.recipes.astrolsp-no-insert-inlay-hints" }, - { import = "astrocommunity.recipes.diagnostic-virtual-lines-current-line" }, - - { import = "astrocommunity.test.neotest" }, - - { import = "astrocommunity.pack.cmake" }, - { import = "astrocommunity.pack.cpp" }, - -- { import = "astrocommunity.pack.cs" }, Trying out roslyn.nvim - { import = "astrocommunity.pack.godot" }, - { import = "astrocommunity.pack.html-css" }, - { import = "astrocommunity.pack.json" }, - { import = "astrocommunity.pack.lua" }, - { import = "astrocommunity.pack.markdown" }, - { import = "astrocommunity.pack.rust" }, - { import = "astrocommunity.pack.toml" }, - { import = "astrocommunity.pack.typescript-all-in-one" }, - { import = "astrocommunity.pack.vue" }, - { import = "astrocommunity.pack.yaml" }, -} diff --git a/modules/neovim/lua/lazy_setup.lua b/modules/neovim/lua/lazy_setup.lua deleted file mode 100644 index 6a5b557..0000000 --- a/modules/neovim/lua/lazy_setup.lua +++ /dev/null @@ -1,31 +0,0 @@ -require("lazy").setup({ - { - "AstroNvim/AstroNvim", - version = "^5", -- Remove version tracking to elect for nighly AstroNvim - import = "astronvim.plugins", - opts = { -- AstroNvim options must be set here with the `import` key - mapleader = " ", -- This ensures the leader key must be configured before Lazy is set up - maplocalleader = ",", -- This ensures the localleader key must be configured before Lazy is set up - icons_enabled = true, -- Set to false to disable icons (if no Nerd Font is available) - pin_plugins = nil, -- Default will pin plugins when tracking `version` of AstroNvim, set to true/false to override - }, - }, - { import = "community" }, - { import = "plugins" }, -} --[[@as LazySpec]], { - -- Configure any other `lazy.nvim` configuration options here - install = { colorscheme = { "astrodark", "habamax" } }, - ui = { backdrop = 100 }, - performance = { - rtp = { - -- disable some rtp plugins, add more to your liking - disabled_plugins = { - "gzip", - "netrwPlugin", - "tarPlugin", - "tohtml", - "zipPlugin", - }, - }, - }, -} --[[@as LazyConfig]]) diff --git a/modules/neovim/lua/plugins/astrocore.lua b/modules/neovim/lua/plugins/astrocore.lua deleted file mode 100644 index 2eebb64..0000000 --- a/modules/neovim/lua/plugins/astrocore.lua +++ /dev/null @@ -1,90 +0,0 @@ --- AstroCore provides a central place to modify mappings, vim options, autocommands, and more! --- Configuration documentation can be found with `:h astrocore` --- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) --- as this provides autocomplete and documentation while editing - ----@type LazySpec -return { - "AstroNvim/astrocore", - ---@type AstroCoreOpts - opts = { - -- Configure core features of AstroNvim - features = { - autopairs = true, -- enable autopairs at start - cmp = true, -- enable completion at start - diagnostics = true, -- enable diagnostics at start - highlighturl = true, -- highlight URLs at start - notifications = true, -- enable notifications at start - large_buf = { -- set global limits for large files for disabling features like treesitter - size = 1024 * 100, - lines = 10000, - line_length = 1000, - }, - }, - -- Diagnostics configuration (for vim.diagnostics.config({...})) when diagnostics are on - diagnostics = { - underline = true, - update_in_insert = false, - virtual_lines = { current_line = true }, - virtual_text = true, - }, - -- vim options can be configured here - options = { - opt = { -- vim.opt. - autoindent = true, -- indents automatically based on context - expandtab = true, -- use spaces instead of tabs - grepprg = "rg --vimgrep", -- use ripgrep on grep actions - number = true, -- sets vim.opt.number - relativenumber = true, -- sets vim.opt.relativenumber - shiftwidth = 2, -- how many spaces after indentation - signcolumn = "auto", -- sets vim.opt.signcolumn to auto - smartindent = true, -- smartly indent - spell = false, -- sets vim.opt.spell - tabstop = 2, -- how many spaces to indent when pressing tab - wrap = false, -- sets vim.opt.wrap - }, - g = { -- vim.g. - -- configure global vim variables (vim.g) - -- NOTE: `mapleader` and `maplocalleader` must be set in the AstroNvim opts or before `lazy.setup` - -- This can be found in the `lua/lazy_setup.lua` file - }, - }, - -- Mappings can be configured through AstroCore as well. - -- NOTE: keycodes follow the casing in the vimdocs. For example, `` must be capitalized - mappings = { - -- first key is the mode - n = { - -- second key is the lefthand side of the map - - -- navigate buffer tabs with `H` and `L` - -- L = { - -- function() require("astrocore.buffer").nav(vim.v.count > 0 and vim.v.count or 1) end, - -- desc = "Next buffer", - -- }, - -- H = { - -- function() require("astrocore.buffer").nav(-(vim.v.count > 0 and vim.v.count or 1)) end, - -- desc = "Previous buffer", - -- }, - - -- mappings seen under group name "Buffer" - ["bD"] = { - function() - require("astroui.status.heirline").buffer_picker(function(bufnr) - require("astrocore.buffer").close(bufnr) - end) - end, - desc = "Pick to close", - }, - -- tables with just a `desc` key will be registered with which-key if it's installed - -- this is useful for naming menus - ["b"] = { desc = "Buffers" }, - -- quick save - -- [""] = { ":w!", desc = "Save File" }, -- change description but the same command - }, - t = { - -- setting a mapping to false will disable it - -- [""] = false, - }, - }, - }, -} diff --git a/modules/neovim/lua/plugins/astrolsp.lua b/modules/neovim/lua/plugins/astrolsp.lua deleted file mode 100644 index 8fe0e4e..0000000 --- a/modules/neovim/lua/plugins/astrolsp.lua +++ /dev/null @@ -1,223 +0,0 @@ --- AstroLSP allows you to customize the features in AstroNvim's LSP configuration engine --- Configuration documentation can be found with `:h astrolsp` --- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) --- as this provides autocomplete and documentation while editing - ----@type LazySpec -return { - "AstroNvim/astrolsp", - ---@param opts AstroLSPOpts - ---@return AstroLSPOpts - opts = function(_, opts) - local system_flake_path = os.getenv "FLAKE" - or os.getenv "NH_FLAKE" - or error "FLAKE environment variable must be set." - local hostname = vim.fn.hostname() - - ---@type AstroLSPOpts - local lsp_options = { - -- Configuration table of features provided by AstroLSP - features = { - codelens = true, -- enable/disable codelens refresh on start - inlay_hints = true, -- enable/disable inlay hints on start - semantic_tokens = true, -- enable/disable semantic token highlighting - signature_help = false, -- enable/disable automatic signature help - }, - -- customize lsp formatting options - formatting = { - -- control auto formatting on save - format_on_save = { - enabled = true, -- enable or disable format on save globally - allow_filetypes = { -- enable format on save for specified filetypes only - -- "go", - "c", - "cpp", - "cs", - "gdscript", - "h", - "javascript", - "jsx", - "lua", - "nix", - "rust", - "svelte", - "tsx", - "typescript", - "vue", - }, - ignore_filetypes = { -- disable format on save for specified filetypes - -- "python", - }, - }, - disabled = { -- disable formatting capabilities for the listed language servers - -- disable lua_ls formatting capability if you want to use StyLua to format your lua code - -- "lua_ls", - }, - timeout_ms = 1000, -- default format timeout - -- filter = function(client) -- fully override the default formatting function - -- return true - -- end - }, - -- enable servers that you already have installed without mason - servers = { - "basedpyright", - "clangd", - "cmake", - --"csharp_ls", Testing roslyn.nvim - "cssls", - "denols", - "eslint", - "gdscript", - "html", - "jsonls", - "lua_ls", - "marksman", - "nixd", - "rust_analyzer", - "svelte", - "taplo", - "volar", - "vtsls", - "yamlls", - }, - -- customize language server configuration options passed to `lspconfig` - ---@diagnostic disable: missing-fields - config = { - -- clangd = { capabilities = { offsetEncoding = "utf-8" } }, - ---@type lspconfig.Config - nixd = { - settings = { - nixd = { - nixpkgs = { - expr = "import (builtins.getFlake (" .. system_flake_path .. ")).inputs.nixpkgs { }", - }, - options = { - nixos = { - expr = "(builtins.getFlake (" - .. system_flake_path - .. ")).nixosConfigurations." - .. hostname - .. ".options", - }, - home_manager = { - expr = "(builtins.getFlake (" - .. system_flake_path - .. ")).nixosConfigurations." - .. hostname - .. ".options" - .. ".home-manager.users.type.getSubOptions []", - }, - }, - }, - }, - }, - ---@type lspconfig.Config - vtsls = { - filetypes = { "typescript", "javascript", "javascriptreact", "typescriptreact", "vue" }, - settings = { - vtsls = { - tsserver = { - globalPlugins = { - { - name = "@vue/typescript-plugin", - location = vim.fn.get_nix_store "vue-language-server" - .. "/lib/node_modules/@vue/language-server", - languages = { "vue" }, - configNamespace = "typescript", - enableForWorkspaceTypeScriptVersions = true, - }, - }, - }, - }, - }, - }, - ---@type lspconfig.Config - rust_analyzer = { - settings = { - ["rust-analyzer"] = { - cargo = { - extraEnv = { CARGO_PROFILE_RUST_ANALYZER_INHERITS = "dev" }, - extraArgs = { "--profile", "rust-analyzer" }, - }, - check = { command = "check", extraArgs = {} }, - }, - }, - }, - ---@type lspconfig.Config - html = { - filetypes = { "html", "templ", "razor" }, - }, - }, - -- customize how language servers are attached - handlers = { - -- a function without a key is simply the default handler, functions take two parameters, the server name and the configured options table for that server - -- function(server, opts) require("lspconfig")[server].setup(opts) end - - -- the key is the server that is being setup with `lspconfig` - -- rust_analyzer = false, -- setting a handler to false will disable the set up of that language server - -- pyright = function(_, opts) require("lspconfig").pyright.setup(opts) end -- or a custom handler function can be passed - }, - -- Configure buffer local auto commands to add when attaching a language server - autocmds = { - -- first key is the `augroup` to add the auto commands to (:h augroup) - lsp_document_highlight = { - -- Optional condition to create/delete auto command group - -- can either be a string of a client capability or a function of `fun(client, bufnr): boolean` - -- condition will be resolved for each client on each execution and if it ever fails for all clients, - -- the auto commands will be deleted for that buffer - cond = "textDocument/documentHighlight", - -- cond = function(client, bufnr) return client.name == "lua_ls" end, - -- list of auto commands to set - { - -- events to trigger - event = { "CursorHold", "CursorHoldI" }, - -- the rest of the autocmd options (:h nvim_create_autocmd) - desc = "Document Highlighting", - callback = function() - vim.lsp.buf.document_highlight() - end, - }, - { - event = { "CursorMoved", "CursorMovedI", "BufLeave" }, - desc = "Document Highlighting Clear", - callback = function() - vim.lsp.buf.clear_references() - end, - }, - }, - }, - -- mappings to be set up on attaching of a language server - mappings = { - n = { - gl = { - function() - vim.diagnostic.open_float() - end, - desc = "Hover diagnostics", - }, - -- a `cond` key can provided as the string of a server capability to be required to attach, or a function with `client` and `bufnr` parameters from the `on_attach` that returns a boolean - -- gD = { - -- function() vim.lsp.buf.declaration() end, - -- desc = "Declaration of current symbol", - -- cond = "textDocument/declaration", - -- }, - -- ["uY"] = { - -- function() require("astrolsp.toggles").buffer_semantic_tokens() end, - -- desc = "Toggle LSP semantic highlight (buffer)", - -- cond = function(client) return client.server_capabilities.semanticTokensProvider and vim.lsp.semantic_tokens end, - -- }, - }, - }, - -- A custom `on_attach` function to be run after the default `on_attach` function - -- takes two parameters `client` and `bufnr` (`:h lspconfig-setup`) - on_attach = function(client, bufnr) - -- this would disable semanticTokensProvider for all clients - -- client.server_capabilities.semanticTokensProvider = nil - end, - } - - opts = vim.tbl_deep_extend("force", opts, lsp_options) - - return opts - end, -} diff --git a/modules/neovim/lua/plugins/astroui.lua b/modules/neovim/lua/plugins/astroui.lua deleted file mode 100644 index fb2c345..0000000 --- a/modules/neovim/lua/plugins/astroui.lua +++ /dev/null @@ -1,37 +0,0 @@ --- AstroUI provides the basis for configuring the AstroNvim User Interface --- Configuration documentation can be found with `:h astroui` --- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) --- as this provides autocomplete and documentation while editing - ----@type LazySpec -return { - "AstroNvim/astroui", - ---@type AstroUIOpts - opts = { - -- change colorscheme - colorscheme = "catppuccin-frappe", - -- AstroUI allows you to easily modify highlight groups easily for any and all colorschemes - highlights = { - init = { -- this table overrides highlights in all themes - -- Normal = { bg = "#000000" }, - }, - astrotheme = { -- a table of overrides/changes when applying the astrotheme theme - -- Normal = { bg = "#000000" }, - }, - }, - -- Icons can be configured throughout the interface - icons = { - -- configure the loading of the lsp in the status line - LSPLoading1 = "⠋", - LSPLoading2 = "⠙", - LSPLoading3 = "⠹", - LSPLoading4 = "⠸", - LSPLoading5 = "⠼", - LSPLoading6 = "⠴", - LSPLoading7 = "⠦", - LSPLoading8 = "⠧", - LSPLoading9 = "⠇", - LSPLoading10 = "⠏", - }, - }, -} diff --git a/modules/neovim/lua/plugins/blink-cmp.lua b/modules/neovim/lua/plugins/blink-cmp.lua deleted file mode 100644 index f03b39e..0000000 --- a/modules/neovim/lua/plugins/blink-cmp.lua +++ /dev/null @@ -1,9 +0,0 @@ ----@type LazySpec -return { - "Saghen/blink.cmp", - opts = { - signature = { - enabled = true, - }, - }, -} diff --git a/modules/neovim/lua/plugins/luasnip.lua b/modules/neovim/lua/plugins/luasnip.lua deleted file mode 100644 index 7827042..0000000 --- a/modules/neovim/lua/plugins/luasnip.lua +++ /dev/null @@ -1,15 +0,0 @@ -return { - "L3MON4D3/LuaSnip", - config = function(plugin, opts) - -- include the default astronvim config that calls the setup call - require "astronvim.plugins.configs.luasnip" (plugin, opts) - - -- load snippets paths - require("luasnip.loaders.from_lua").lazy_load { - paths = { vim.fn.stdpath "config" .. "/snippets" }, - } - - -- extend 'razor' files with html snippets - require("luasnip").filetype_extend("razor", { "html" }) - end, -} diff --git a/modules/neovim/lua/plugins/mason.lua b/modules/neovim/lua/plugins/mason.lua deleted file mode 100644 index 23c4fbe..0000000 --- a/modules/neovim/lua/plugins/mason.lua +++ /dev/null @@ -1,16 +0,0 @@ --- Customize Mason - ----@type LazySpec -return { - -- use mason-tool-installer for automatically installing Mason packages - { - "WhoIsSethDaniel/mason-tool-installer.nvim", - -- overrides `require("mason-tool-installer").setup(...)` - opts = function(_, opts) - opts.ensure_installed = nil -- We should always have everything available to neovim, - opts.run_on_start = false -- and we make sure this never runs so it can't install anything. - - return opts - end, - }, -} diff --git a/modules/neovim/lua/plugins/mini-icons.lua b/modules/neovim/lua/plugins/mini-icons.lua deleted file mode 100644 index e4bca1a..0000000 --- a/modules/neovim/lua/plugins/mini-icons.lua +++ /dev/null @@ -1,13 +0,0 @@ ----@type LazySpec -return { - "echasnovski/mini.icons", - lazy = true, - opts = { - extension = { - cshtml = { - glyph = "󱦗", - hl = "MiniIconsPurple", - }, - }, - }, -} diff --git a/modules/neovim/lua/plugins/nix-store.lua b/modules/neovim/lua/plugins/nix-store.lua deleted file mode 100644 index 7607b47..0000000 --- a/modules/neovim/lua/plugins/nix-store.lua +++ /dev/null @@ -1,9 +0,0 @@ ----@type LazySpec -return { - "wizardlink/nix-store.nvim", - priority = 999999, - lazy = false, - opts = { - allow_unfree = true, - }, -} diff --git a/modules/neovim/lua/plugins/none-ls.lua b/modules/neovim/lua/plugins/none-ls.lua deleted file mode 100644 index 6877139..0000000 --- a/modules/neovim/lua/plugins/none-ls.lua +++ /dev/null @@ -1,64 +0,0 @@ --- Customize None-ls sources - ----@type LazySpec -return { - "nvimtools/none-ls.nvim", - dependencies = { - "nvimtools/none-ls-extras.nvim", - }, - opts = function(_, config) - -- config variable is the default configuration table for the setup function call - local null_ls = require "null-ls" - local helpers = require "null-ls.helpers" - - -- local deno_fmt = helpers.make_builtin({ - -- name = "deno_fmt", - -- filetypes = { - -- "angular", - -- "astro", - -- "css", - -- "html", - -- "javascript", - -- "json", - -- "jsonc", - -- "less", - -- "markdown", - -- "sass", - -- "scss", - -- "svelte", - -- "typescript", - -- "vue", - -- "yaml", - -- }, - -- method = { null_ls.methods.FORMATTING }, - -- generator_opts = { - -- command = "deno", - -- args = { "fmt", "--unstable-component", "-" }, - -- to_stdin = true, - -- }, - -- factory = helpers.formatter_factory, - -- }) - - -- Check supported formatters and linters - -- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/formatting - -- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics - config.sources = require("astrocore").list_insert_unique(config.sources, { - -- Set a formatter - require "none-ls.diagnostics.flake8", - require "none-ls.formatting.ruff", - null_ls.builtins.formatting.clang_format.with { - disabled_filetypes = { "cs" }, - }, - null_ls.builtins.formatting.csharpier, - null_ls.builtins.formatting.nixfmt, - null_ls.builtins.formatting.stylua, - --deno_fmt, - null_ls.builtins.formatting.prettierd, - - null_ls.builtins.code_actions.statix, - - null_ls.builtins.diagnostics.deadnix, - }) - return config -- return final config table - end, -} diff --git a/modules/neovim/lua/plugins/nvim-dap.lua b/modules/neovim/lua/plugins/nvim-dap.lua deleted file mode 100644 index 7798b02..0000000 --- a/modules/neovim/lua/plugins/nvim-dap.lua +++ /dev/null @@ -1,84 +0,0 @@ ----@type LazySpec -return { - "mfussenegger/nvim-dap", - config = function() - local dap = require "dap" - - ---@type dap.Adapter - dap.adapters.codelldb = { - port = "${port}", - type = "server", - executable = { - command = "codelldb", - args = { "--port", "${port}" }, - }, - } - - ---@type dap.Configuration[] - dap.configurations.rust = { - { - name = "Launch file", - type = "codelldb", - request = "launch", - program = function() - return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") - end, - cwd = "${workspaceFolder}", - stopOnEntry = false, - }, - } - - ---@type dap.Adapter - dap.adapters.cppdbg = { - id = "cppdbg", - type = "executable", - command = vim.fn.get_nix_store "vscode-extensions.ms-vscode.cpptools" - .. "/share/vscode/extensions/ms-vscode.cpptools/debugAdapters/bin/OpenDebugAD7", - } - - ---@type dap.Configuration[] - dap.configurations.cpp = { - { - name = "Launch file", - type = "cppdbg", - request = "launch", - program = function() - return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") - end, - cwd = "${workspaceFolder}", - stopAtEntry = true, - }, - { - name = "Attach to gdbserver :1234", - type = "cppdbg", - request = "launch", - MIMode = "gdb", - miDebuggerServerAddress = "localhost:1234", - miDebuggerPath = "/usr/bin/gdb", - cwd = "${workspaceFolder}", - program = function() - return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") - end, - }, - } - dap.configurations.c = dap.configurations.cpp - - ---@type dap.Adapter - dap.adapters.godot = { - type = "server", - host = "127.0.0.1", - port = 6006, - } - - ---@type dap.Configuration[] - dap.configurations.gdscript = { - { - name = "Launch scene", - type = "godot", - request = "launch", - project = "${workspaceFolder}", - scene = "current", - }, - } - end, -} diff --git a/modules/neovim/lua/plugins/nvim-lint.lua b/modules/neovim/lua/plugins/nvim-lint.lua deleted file mode 100644 index 83ee6fc..0000000 --- a/modules/neovim/lua/plugins/nvim-lint.lua +++ /dev/null @@ -1,11 +0,0 @@ -return { - { - "mfussenegger/nvim-lint", - optional = true, - opts = { - linters_by_ft = { - nix = { "statix", "deadnix" }, - }, - }, - }, -} diff --git a/modules/neovim/lua/plugins/ollama-nvim.lua b/modules/neovim/lua/plugins/ollama-nvim.lua deleted file mode 100644 index 7425a2c..0000000 --- a/modules/neovim/lua/plugins/ollama-nvim.lua +++ /dev/null @@ -1,33 +0,0 @@ ---- @type LazySpec -return { - "nomnivore/ollama.nvim", - dependencies = { - "nvim-lua/plenary.nvim", - }, - - -- All the user commands added by the plugin - cmd = { "Ollama", "OllamaModel", "OllamaServe", "OllamaServeStop" }, - - keys = { - -- Sample keybind for prompt menu. Note that the is important for selections to work properly. - { - "oo", - ":lua require('ollama').prompt()", - desc = "ollama prompt", - mode = { "n", "v" }, - }, - - -- Sample keybind for direct prompting. Note that the is important for selections to work properly. - { - "oG", - ":lua require('ollama').prompt('Generate_Code')", - desc = "ollama Generate Code", - mode = { "n", "v" }, - }, - }, - - ---@type Ollama.Config - opts = { - -- your configuration overrides - }, -} diff --git a/modules/neovim/lua/plugins/roslyn-nvim.lua b/modules/neovim/lua/plugins/roslyn-nvim.lua deleted file mode 100644 index 9747d5a..0000000 --- a/modules/neovim/lua/plugins/roslyn-nvim.lua +++ /dev/null @@ -1,90 +0,0 @@ ----@type LazySpec -return { - { - "seblyng/roslyn.nvim", - ft = { "cs", "razor" }, - lazy = true, - dependencies = { - { - "tris203/rzls.nvim", - ---@return rzls.Config - opts = function(_, opts) - local has_astrolsp, astrolsp = pcall(require, "astrolsp") - local has_blink, blink = pcall(require, "blink-cmp") - - opts = { - capabilities = has_blink and blink.get_lsp_capabilities({}, true) - or vim.lsp.protocol.make_client_capabilities(), - on_attach = has_astrolsp and astrolsp.on_attach or nil, - path = vim.fn.get_nix_store "rzls" .. "/bin/rzls", - } - - return opts - end, - }, - }, - opts = function(_, opts) - local has_astrolsp, astrolsp = pcall(require, "astrolsp") - local rzlspath = vim.fn.get_nix_store "rzls" - - opts = { - ---@type vim.lsp.ClientConfig - ---@diagnostic disable-next-line: missing-fields - config = { - cmd = { - "Microsoft.CodeAnalysis.LanguageServer", - "--stdio", - "--logLevel=Information", - "--extensionLogDirectory=" .. vim.fs.dirname(vim.lsp.get_log_path()), - "--razorSourceGenerator=" .. rzlspath .. "/lib/rzls/Microsoft.CodeAnalysis.Razor.Compiler.dll", - "--razorDesignTimePath=" - .. rzlspath - .. "/lib/rzls/Targets/Microsoft.NET.Sdk.Razor.DesignTime.targets", - }, - handlers = require "rzls.roslyn_handlers", - on_attach = has_astrolsp and astrolsp.on_attach or nil, - settings = { - ["csharp|inlay_hints"] = { - csharp_enable_inlay_hints_for_implicit_object_creation = true, - csharp_enable_inlay_hints_for_implicit_variable_types = true, - - csharp_enable_inlay_hints_for_lambda_parameter_types = true, - csharp_enable_inlay_hints_for_types = true, - dotnet_enable_inlay_hints_for_indexer_parameters = true, - dotnet_enable_inlay_hints_for_literal_parameters = true, - dotnet_enable_inlay_hints_for_object_creation_parameters = true, - dotnet_enable_inlay_hints_for_other_parameters = true, - dotnet_enable_inlay_hints_for_parameters = true, - dotnet_suppress_inlay_hints_for_parameters_that_differ_only_by_suffix = true, - dotnet_suppress_inlay_hints_for_parameters_that_match_argument_name = true, - dotnet_suppress_inlay_hints_for_parameters_that_match_method_intent = true, - }, - ["csharp|code_lens"] = { - dotnet_enable_references_code_lens = true, - }, - }, - }, - } - - return opts - end, - init = function() - vim.filetype.add { - extension = { - razor = "razor", - cshtml = "razor", - }, - } - end, - }, - { - "nvim-neotest/neotest", - dependencies = { "Issafalcon/neotest-dotnet", config = function() end }, - opts = function(_, opts) - if not opts.adapters then - opts.adapters = {} - end - table.insert(opts.adapters, require "neotest-dotnet" (require("astrocore").plugin_opts "neotest-dotnet")) - end, - }, -} diff --git a/modules/neovim/lua/plugins/snacks-nvim.lua b/modules/neovim/lua/plugins/snacks-nvim.lua deleted file mode 100644 index f0a8baa..0000000 --- a/modules/neovim/lua/plugins/snacks-nvim.lua +++ /dev/null @@ -1,7 +0,0 @@ ---- @type LazySpec -return { - "folke/snacks.nvim", - opts = function(_, opts) - opts.zen = { enabled = true } - end, -} diff --git a/modules/neovim/lua/plugins/treesitter.lua b/modules/neovim/lua/plugins/treesitter.lua deleted file mode 100644 index 26e8950..0000000 --- a/modules/neovim/lua/plugins/treesitter.lua +++ /dev/null @@ -1,57 +0,0 @@ --- Customize Treesitter - ----@type LazySpec -return { - "nvim-treesitter/nvim-treesitter", - ---@param _ LazyPlugin - ---@param opts TSConfig - opts = function(_, opts) - -- disable automatically installing parsers - opts.auto_install = false - - -- add more things to the ensure_installed table protecting against community packs modifying it - opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed --[[@as string[]], { - -- Programming - "c", - "c_sharp", - "cmake", - "cpp", - "css", - "gdscript", - "godot_resource", - "html", - "hyprlang", - "javascript", - "jsdoc", - "lua", - "nim", - "nim_format_string", - "objc", - "proto", - "python", - "svelte", - "tsx", - "typescript", - "vue", - -- Scripting - "bash", - "fish", - "glsl", - -- Configuring - "dockerfile", - "json", - "jsonc", - "nix", - "vhs", - "yaml", - -- Misc - "cuda", - "markdown", - "markdown_inline", - "query", - -- VIM - "vim", - "vimdoc", - }) - end, -} diff --git a/modules/neovim/lua/plugins/user.lua b/modules/neovim/lua/plugins/user.lua deleted file mode 100644 index d607509..0000000 --- a/modules/neovim/lua/plugins/user.lua +++ /dev/null @@ -1,140 +0,0 @@ --- You can also add or configure plugins by creating files in this `plugins/` folder --- Here are some examples: - ----@type LazySpec -return { - -- Customize dashboard options - { - "folke/snacks.nvim", - opts = { - dashboard = { - preset = { - header = table.concat({ - "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⣶⣶⣾⣿⣿⣿⣿⣷⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⣾⣿⣿⣿⣿⣷⣶⣶⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⢀⣠⡴⠾⠟⠋⠉⠉⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠷⢦⣄⡀⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠘⠋⠁⠀⠀⢀⣀⣤⣶⣖⣒⣒⡲⠶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⠶⢖⣒⣒⣲⣶⣤⣀⡀⠀⠀⠈⠙⠂⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⠀⠀⣠⢖⣫⣷⣿⣿⣿⣿⣿⣿⣶⣤⡙⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⢋⣤⣾⣿⣿⣿⣿⣿⣿⣾⣝⡲⣄⠀⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⣄⣀⣠⢿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠻⢿⣿⣿⣦⣳⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣟⣴⣿⣿⡿⠟⠻⢿⣿⣿⣿⣿⣿⣿⣿⡻⣄⣀⣤⠀⠀⠀", - "⠀⠀⠀⠈⠟⣿⣿⣿⡿⢻⣿⣿⣿⠃⠀⠀⠀⠀⠙⣿⣿⣿⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⣿⣿⣿⠋⠀⠀⠀⠀⠘⣿⣿⣿⡟⢿⣿⣿⣟⠻⠁⠀⠀⠀", - "⠤⣤⣶⣶⣿⣿⣿⡟⠀⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⢻⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⡏⠀⠀⠀⠀⠀⠀⣹⣿⣿⣷⠈⢻⣿⣿⣿⣶⣦⣤⠤", - "⠀⠀⠀⠀⠀⢻⣟⠀⠀⣿⣿⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⣿⣿⠀⠀⣿⡟⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⠀⠻⣆⠀⢹⣿⠟⢿⣿⣦⣤⣤⣴⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡿⢷⣤⣤⣤⣴⣿⣿⣿⣿⡇⠀⣰⠟⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⠀⠀⠙⠂⠀⠙⢀⣀⣿⣿⣿⣿⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠻⠁⠀⣻⣿⣿⣿⣿⣿⣿⠏⠀⠘⠃⠀⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡈⠻⠿⣿⣿⣿⡿⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠻⢿⣿⣿⣿⠿⠛⢁⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⠛⣶⣦⣤⣤⣤⡤⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⢤⣤⣤⣤⣶⣾⠛⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", - }, "\n"), - }, - }, - }, - }, - - -- Add the catppuccin colorscheme - { - "catppuccin/nvim", - name = "catppuccin", - priority = 1000, - ---@type CatppuccinOptions - opts = { - integrations = { - aerial = true, - alpha = true, - blink_cmp = true, - cmp = false, - colorful_winsep = { enabled = true, color = "lavender" }, - dap = true, - dap_ui = true, - gitsigns = true, - illuminate = true, - indent_blankline = true, - markdown = true, - mason = true, - native_lsp = { enabled = true }, - neotree = true, - semantic_tokens = true, - snacks = { enabled = true, indent_scope_color = "lavender" }, - symbols_outline = true, - telescope = { enabled = false }, - treesitter = true, - ts_rainbow = false, - ufo = true, - which_key = true, - window_picker = true, - }, - }, - specs = { - { - "akinsho/bufferline.nvim", - optional = true, - opts = function(_, opts) - return require("astrocore").extend_tbl(opts, { - highlights = require("catppuccin.groups.integrations.bufferline").get(), - }) - end, - }, - }, - }, - - -- Makes most if not all groups have a transparent background. - { - "xiyaowong/transparent.nvim", - opts = function(_, opts) - local transparent = require "transparent" - - opts.exclude_groups = { - "StatusLine", - "StatusLineNC", - } - - opts.extra_groups = { - "BlinkCmpSignatureHelpActiveParameter", - "CursorColumn", - "CursorLineFold", - "CursorLineSign", - "FloatBorder", - "FoldColumn", - "Folded", - "GitSignsAdd", - "GitSignsChange", - "GitSignsDelete", - "LineNr", - "LineNrAbove", - "LineNrBelow", - "LineNrBelow", - "LspInlayHint", - "NeoTreeFloatingBorder", - "NeoTreeMessage", - "NeoTreeNormal", - "NeoTreeNormalNC", - "NeoTreeStatusLine", - "NeoTreeStatusLineNC", - "NeoTreeTabActive", - "NeoTreeTabInactive", - "NeoTreeTabSeparatorActive", - "NeoTreeTabSeparatorInactive", - "NeoTreeVertSplit", - "NeoTreeWinSeparator", - "NormalFloat", - "Pmenu", - "TabLine", - "TabLineFill", - "VertSplit", - "WinBar", - "WinBarNC", - "WinSeparator", - } - - transparent.clear_prefix "BufferLine" - transparent.clear_prefix "Diagnostic" - transparent.clear_prefix "NvimTree" - end, - }, - - -- Adds highlighting and lsp features for embedded code in documents. - { - "jmbuhr/otter.nvim", - dependencies = { - "nvim-treesitter/nvim-treesitter", - }, - event = "VeryLazy", - }, -} diff --git a/modules/neovim/lua/polish.lua b/modules/neovim/lua/polish.lua deleted file mode 100644 index f7c2205..0000000 --- a/modules/neovim/lua/polish.lua +++ /dev/null @@ -1,16 +0,0 @@ --- This will run last in the setup process and is a good place to configure --- things like custom filetypes. This just pure lua so anything that doesn't --- fit in the normal config locations above can go here - --- Set up custom filetypes -vim.filetype.add { - extension = { - foo = "fooscript", - }, - filename = { - ["Foofile"] = "fooscript", - }, - pattern = { - ["~/%.config/foo/.*"] = "fooscript", - }, -} diff --git a/modules/neovim/lua/util.lua b/modules/neovim/lua/util.lua deleted file mode 100644 index 8dc9ea4..0000000 --- a/modules/neovim/lua/util.lua +++ /dev/null @@ -1,31 +0,0 @@ ---- Helper function to allow me to run commands grabbed ---- by the current selection. ---- @param isLua boolean ---- @return string -vim.fn.runcmdonmark = function(isLua) - local beginRow, beginCol = unpack(vim.api.nvim_buf_get_mark(0, "<")) - local endRow, endCol = unpack(vim.api.nvim_buf_get_mark(0, ">")) - - if beginRow == nil or beginCol == nil or endRow == nil or endCol == nil then - return "" - end - - local text = table.concat( - vim.tbl_map(function(incoming) - return vim.trim(incoming) - end, vim.api.nvim_buf_get_text(0, beginRow - 1, beginCol, endRow - 1, endCol + 1, {})), - " " - ) - - vim.notify("Running expression: " .. text, vim.log.levels.INFO) - - return vim.api.nvim_cmd( - vim.api.nvim_parse_cmd((isLua == true and ":lua " or "") .. text, {}) --[[@as vim.api.keyset.cmd]], - {} - ) -end - ---- Register the function as a command as well, to facilitate things. -vim.api.nvim_create_user_command("RunCmdOnMark", function(opts) - vim.fn.runcmdonmark((opts.args == "v:false" or opts.args == "false") and false or true) -end, { range = true, nargs = "?" }) diff --git a/modules/neovim/queries/c_sharp/folds.scm b/modules/neovim/queries/c_sharp/folds.scm deleted file mode 100644 index 9c2da39..0000000 --- a/modules/neovim/queries/c_sharp/folds.scm +++ /dev/null @@ -1,16 +0,0 @@ -;; extends - -; Capture entire regions for folding -( - (preproc_region) @region_begin - . - [ - (comment) - (declaration) - (statement) - (type_declaration) - ]* - . - (preproc_endregion) @region_end (#offset! @region_end 0 0 -1 0) - (#make-range! "fold" @region_begin @region_end) -) diff --git a/modules/template/README.md b/modules/template/README.md deleted file mode 100644 index dece098..0000000 --- a/modules/template/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# READ THIS BEFORE PROCEEDING - -Below is a checklist of changes you need to do before rebuilding your system. - -## Generate your system configuration and replace the placeholders. - -You can achieve this by running `sudo nixos-generate-config`, then overwrite `hardware-configuration.nix` and -`configuration.nix` with the contents of the files found in `/etc/nixos`. - -## Replace placeholder text - -In `flake.nix` you will find `your-hostname-here`, replace with your machine's current hostname. - -In `home-manager.nix` you have to replace: -- `your-username-here` with your user's username; -- `your-home-directory-here` with the path of your home directory, usually the same as your username; -- `your-hostname-here` with your machine's current hostname; -- `your-flake-location-here` with where you are storing the flake. diff --git a/modules/template/configuration.nix b/modules/template/configuration.nix deleted file mode 100644 index c915eb0..0000000 --- a/modules/template/configuration.nix +++ /dev/null @@ -1 +0,0 @@ -{ ... }: { } diff --git a/modules/template/flake.nix b/modules/template/flake.nix deleted file mode 100644 index 447a388..0000000 --- a/modules/template/flake.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - description = "NixOS System Flake"; - - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; - # Ideally using nixos-unstable since my configuration - # is based off of this channel. - - home-manager = { - url = "github:nix-community/home-manager"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - linuxware = { - url = "github:wizardlink/linuxware"; - inputs.nixpkgs.follows = "nixpkgs"; # Pin to your local `nixpkgs` if you use the unstable channel. - }; - }; - - outputs = - { - home-manager, - nixpkgs, - linuxware, - ... - }@inputs: - let - system = "x86_64-linux"; - in - { - your-hostname-here = - let - specialArgs = inputs; - modules = [ - ./configuration.nix - home-manager.nixosModules.home-manager - { - home-manager.extraSpecialArgs = inputs; - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.wizardlink = import ./home-manager.nix; - } - linuxware.nixosModules.hyprland - ]; - in - nixpkgs.lib.nixosSystem { inherit system specialArgs modules; }; - }; -} diff --git a/modules/template/hardware-configuration.nix b/modules/template/hardware-configuration.nix deleted file mode 100644 index c915eb0..0000000 --- a/modules/template/hardware-configuration.nix +++ /dev/null @@ -1 +0,0 @@ -{ ... }: { } diff --git a/modules/template/home-manager.nix b/modules/template/home-manager.nix deleted file mode 100644 index 9f6fabc..0000000 --- a/modules/template/home-manager.nix +++ /dev/null @@ -1,90 +0,0 @@ -{ - config, - pkgs, - linuxware, - ... -}: - -{ - imports = [ - linuxware.homeManagerModules.emacs - linuxware.homeManagerModules.hyprland - linuxware.homeManagerModules.neovim - ]; - - # Home Manager needs a bit of information about you and the paths it should - # manage. - home.username = "your-username-here"; - home.homeDirectory = "/home/your-home-directory-here"; - - # This value determines the Home Manager release that your configuration is - # compatible with. This helps avoid breakage when a new Home Manager release - # introduces backwards incompatible changes. - # - # You should not change this value, even if you update Home Manager. If you do - # want to update the value, then make sure to first check the Home Manager - # release notes. - home.stateVersion = "24.11"; # Please read the comment before changing. - - # The home.packages option allows you to install Nix packages into your - # environment. - home.packages = [ - # # Adds the 'hello' command to your environment. It prints a friendly - # # "Hello, world!" when run. - # pkgs.hello - - # # It is sometimes useful to fine-tune packages, for example, by applying - # # overrides. You can do that directly here, just don't forget the - # # parentheses. Maybe you want to install Nerd Fonts with a limited number of - # # fonts? - # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) - - # # You can also create simple shell scripts directly inside your - # # configuration. For example, this adds a command 'my-hello' to your - # # environment: - # (pkgs.writeShellScriptBin "my-hello" '' - # echo "Hello, ${config.home.username}!" - # '') - ]; - - # Home Manager is pretty good at managing dotfiles. The primary way to manage - # plain files is through 'home.file'. - home.file = { - # # Building this configuration will create a copy of 'dotfiles/screenrc' in - # # the Nix store. Activating the configuration will then make '~/.screenrc' a - # # symlink to the Nix store copy. - # ".screenrc".source = dotfiles/screenrc; - - # # You can also set the file content immediately. - # ".gradle/gradle.properties".text = '' - # org.gradle.console=verbose - # org.gradle.daemon.idletimeout=3600000 - # ''; - }; - - # Home Manager can also manage your environment variables through - # 'home.sessionVariables'. These will be explicitly sourced when using a - # shell provided by Home Manager. If you don't want to manage your shell - # through Home Manager then you have to manually source 'hm-session-vars.sh' - # located at either - # - # ~/.nix-profile/etc/profile.d/hm-session-vars.sh - # - # or - # - # ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh - # - # or - # - # /etc/profiles/per-user/wizardlink/etc/profile.d/hm-session-vars.sh - # - home.sessionVariables = { - # EDITOR = "emacs"; - }; - - # Let Home Manager install and manage itself. - programs.home-manager.enable = true; - - # Enable Neovim, pre-configured by `linuxware`. - programs.neovim.enable = true; -} diff --git a/packages/README.md b/packages/README.md deleted file mode 100644 index b68e530..0000000 --- a/packages/README.md +++ /dev/null @@ -1,45 +0,0 @@ -## [zenergy](https://github.com/BoukeHaarsma23/zenergy/) - -This is a kernel driver that adds the ability for user to fetch power draw data from AMD CPUs. I maintain it in -[nixpkgs], so you shouldn't use this package _unless_ it is broken in your current -version of [nixpkgs]. - -Unfortunately this cannot be outputted as a package in the flake since to create a derivation the `kernel` parameter -must be present, which, each user will have their own kernel package. - -Thus you need to copy the `zenergy.nix` file somewhere in your configuration and inside `boot.extraModulePackages` pass -the package with the following expression: `config.boot.kernelPackages.callPackage ./path/to/zenergy.nix`; successfully -installing the package onto your system. - -## wb32dfu-udev-rules - -This package installs the udev rules necessary to allow flashing QMK/Vial onto keyboards that use WB32-DFU bootloaders. - -It is meant to be used in tandem with [NixOS] using the -[`services.udev.packages`](https://search.nixos.org/options?query=services.udev.packages) configuration. - -## [miraclecast](https://github.com/albfan/miraclecast/) - -This is a suite of programs that allows you to connect external monitors through Wi-Fi, though unfortunately some of the -programs have no documentation and some an unhelpful help command too. - -Currently the **package is available in [nixpkgs]** __however it currently fails to compile__, so you have to rely on my -configuration of this package or wait for [nixpkgs#387762](https://github.com/NixOS/nixpkgs/pull/387762) to be merged. - -## [lmms] - -This is a free and open source DAW that is cross platform to Linux, Mac and Windows. - -I maintain here a package since the [PR hasn't been merged](https://github.com/NixOS/nixpkgs/pull/377643) with a newer -version. It has not been updated for 5y, and unfortuantely, there hasn't been any releases of [lmms] since then, so an -unstable version was due to happen in [nixpkgs]. - -The version in [nixpkgs] also doesn't comes with [wine](https://www.winehq.org/) packaged alongside it, limiting your -options for instrument plugins drastically. - - - -[nixpkgs]: https://github.com/NixOS/nixpkgs/ -[nixos]: https://nixos.org -[lmms]: https://lmms.io/ - diff --git a/packages/lmms/0001-chore-allow-injection-of-wine-path-for-nix.patch b/packages/lmms/0001-chore-allow-injection-of-wine-path-for-nix.patch deleted file mode 100644 index 20cc779..0000000 --- a/packages/lmms/0001-chore-allow-injection-of-wine-path-for-nix.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 55c86d9ba9275a58299b31a6a5eb382a20662a44 Mon Sep 17 00:00:00 2001 -From: "Alexandre Cavalheiro S. Tiago da Silva" -Date: Wed, 16 Apr 2025 13:36:00 -0300 -Subject: [PATCH] chore: allow injection of wine path for nix - -Signed-off-by: Alexandre Cavalheiro S. Tiago da Silva ---- - cmake/modules/FindWine.cmake | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/cmake/modules/FindWine.cmake b/cmake/modules/FindWine.cmake -index ea8d90cd2..6b87c61ae 100644 ---- a/cmake/modules/FindWine.cmake -+++ b/cmake/modules/FindWine.cmake -@@ -13,6 +13,13 @@ - # WINE_64_FLAGS - 64-bit linker flags - # - -+set(WINE_INCLUDE_DIR @WINE_LOCATION@/include) -+set(WINE_BUILD @WINE_LOCATION@/bin/winebuild) -+set(WINE_CXX @WINE_LOCATION@/bin/wineg++) -+set(WINE_GCC @WINE_LOCATION@/bin/winegcc) -+set(WINE_32_LIBRARY_DIRS @WINE_LOCATION@/lib/wine/i386-unix) -+set(WINE_64_LIBRARY_DIRS @WINE_LOCATION@/lib/wine/x86_64-windows) -+ - MACRO(_findwine_find_flags output expression result) - STRING(REPLACE " " ";" WINEBUILD_FLAGS "${output}") - FOREACH(FLAG ${WINEBUILD_FLAGS}) -@@ -32,6 +39,7 @@ ENDMACRO() - - # Prefer newest wine first - list(APPEND WINE_LOCATIONS -+ @WINE_LOCATION@ - /opt/wine-staging - /opt/wine-devel - /opt/wine-stable --- -2.48.1 - diff --git a/packages/lmms/package.nix b/packages/lmms/package.nix deleted file mode 100644 index b641eed..0000000 --- a/packages/lmms/package.nix +++ /dev/null @@ -1,117 +0,0 @@ -{ - SDL2, - alsa-lib, - carla, - cmake, - fetchFromGitHub, - fftwFloat, - fltk, - fluidsynth, - glibc_multi, - lame, - lib, - libgig, - libjack2, - libogg, - libpulseaudio, - libsForQt5, - libsamplerate, - libsndfile, - libsoundio, - libvorbis, - lilv, - lv2, - perl540, - perl540Packages, - pkg-config, - portaudio, - qt5, - sndio, - stdenv, - substitute, - suil, - wineWowPackages, - withOptionals ? false, -}: - -let - winePackage = if lib.isDerivation wineWowPackages then wineWowPackages else wineWowPackages.minimal; -in -stdenv.mkDerivation { - pname = "lmms"; - version = "0-unstable-2025-04-16"; - - src = fetchFromGitHub { - owner = "LMMS"; - repo = "lmms"; - rev = "64053342d8cae2d38c49cfb6c5b24fe4234ffdef"; - sha256 = "sha256-X2Dkydmq7EOhhUIwdZoRAfM3zNXgZLgrIHU8ijX8+dU="; - fetchSubmodules = true; - }; - - nativeBuildInputs = [ - cmake - libsForQt5.qt5.qttools - pkg-config - qt5.wrapQtAppsHook - ]; - - buildInputs = - [ - fftwFloat - libsForQt5.qt5.qtbase - libsForQt5.qt5.qtx11extras - libsamplerate - libsndfile - ] - ++ lib.optionals withOptionals [ - SDL2 - alsa-lib - carla - fltk - fluidsynth - glibc_multi - lame - libgig - libjack2 - libogg - libpulseaudio - libsoundio - libvorbis - lilv - lv2 - perl540 - perl540Packages.ListMoreUtils - perl540Packages.XMLParser - portaudio - sndio - suil - winePackage - ]; - - patches = lib.optionals withOptionals [ - (substitute { - src = ./0001-chore-allow-injection-of-wine-path-for-nix.patch; - substitutions = [ - "--replace-fail" - "@WINE_LOCATION@" - winePackage - ]; - }) - ]; - - cmakeFlags = lib.optionals withOptionals [ - "-DWANT_WEAKJACK=OFF" - ]; - - meta = with lib; { - description = "DAW similar to FL Studio (music production software)"; - mainProgram = "lmms"; - homepage = "https://lmms.io"; - license = licenses.gpl2Plus; - platforms = [ - "x86_64-linux" - ]; - maintainers = with maintainers; [ wizardlink ]; - }; -} diff --git a/packages/miraclecast.nix b/packages/miraclecast.nix deleted file mode 100644 index 681a386..0000000 --- a/packages/miraclecast.nix +++ /dev/null @@ -1,91 +0,0 @@ -{ - lib, - fetchFromGitHub, - glib, - gst_all_1, - iproute2, - libtool, - makeBinaryWrapper, - meson, - miraclecast, - ninja, - pkg-config, - readline, - stdenv, - systemdLibs, - testers, - udev, - wpa_supplicant, - relyUdev ? true, -}: - -let - gstreamerPluginPaths = lib.concatMapStrings (pth: pth + "/lib/gstreamer-1.0:") [ - (lib.getLib gst_all_1.gstreamer) - gst_all_1.gst-libav - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good - ]; -in -stdenv.mkDerivation { - pname = "miraclecast"; - version = "1.0-unstable-2024-07-13"; - - src = fetchFromGitHub { - owner = "albfan"; - repo = "miraclecast"; - rev = "937747fd4de64a33bccf5adb73924c435ceb821b"; - hash = "sha256-y37+AOz8xYjtDk9ITxMB7UeWeMpDH+b6HQBczv+x5zo="; - }; - - nativeBuildInputs = [ - makeBinaryWrapper - meson - ninja - pkg-config - ]; - - buildInputs = [ - glib - gst_all_1.gstreamer - iproute2 - libtool - readline - systemdLibs - udev - wpa_supplicant - ]; - - mesonFlags = - [ - "-Dbuild-tests=true" - "-Dip-binary=${iproute2}/bin/ip" - ] - ++ lib.optionals relyUdev [ - "-Drely-udev=true" - ]; - - postPatch = '' - substituteInPlace res/miracle-gst \ - --replace-fail "/usr/bin/gst-launch-1.0" "${gst_all_1.gstreamer}/bin/gst-launch-1.0" - ''; - - postInstall = '' - wrapProgram $out/bin/miracle-gst --set GST_PLUGIN_SYSTEM_PATH_1_0 ${gstreamerPluginPaths} - ''; - - passthru.tests.version = testers.testVersion { - package = miraclecast; - command = "miracled --version"; - version = "Miraclecast 1"; - }; - - meta = with lib; { - description = "Connect external monitors to your system via Wifi-Display specification also known as Miracast"; - homepage = "https://github.com/albfan/miraclecast"; - license = licenses.lgpl21Plus; - maintainers = [ maintainers.wizardlink ]; - platforms = platforms.linux; - }; -} diff --git a/packages/wb32dfu-udev-rules/default.nix b/packages/wb32dfu-udev-rules/default.nix deleted file mode 100644 index d277fbc..0000000 --- a/packages/wb32dfu-udev-rules/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - stdenv, -}: - -stdenv.mkDerivation { - pname = "wb32dfu-udev-rules"; - version = "0-unstable-2024-09-15"; - src = ./.; - - dontBuild = true; - - installPhase = '' - runHook preInstall - - install -D wb32dfu.rules $out/lib/udev/rules.d/50-wb32dfu.rules - - runHook postInstall - ''; -} diff --git a/packages/wb32dfu-udev-rules/wb32dfu.rules b/packages/wb32dfu-udev-rules/wb32dfu.rules deleted file mode 100644 index 925fdcc..0000000 --- a/packages/wb32dfu-udev-rules/wb32dfu.rules +++ /dev/null @@ -1,2 +0,0 @@ -# WB32 DFU -SUBSYSTEMS=="usb", ATTRS{idVendor}=="342d", ATTRS{idProduct}=="dfa0", TAG+="uaccess" diff --git a/packages/zenergy.nix b/packages/zenergy.nix deleted file mode 100644 index cfdb63d..0000000 --- a/packages/zenergy.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - kernel, - kmod, -}: - -let - kernelDirectory = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; -in -stdenv.mkDerivation { - pname = "zenergy"; - version = "0-unstable-2024-10-10"; - - src = fetchFromGitHub { - owner = "BoukeHaarsma23"; - repo = "zenergy"; - rev = "7c4e83d5e2f887f4c31edaf92e5f94e9448e9764"; - hash = "sha256-5fYelEr4IYnuXrly15IcyicFrF0tYjs7OBqIhUYQXZ0="; - }; - - nativeBuildInputs = [ kmod ] ++ kernel.moduleBuildDependencies; - - hardeningDisable = [ - "format" - "pic" - ]; - - makeFlags = kernel.makeFlags ++ [ "KDIR=${kernelDirectory}" ]; - - installTargets = [ "modules_install" ]; - - preBuild = '' - substituteInPlace Makefile --replace-fail "PWD modules_install" "PWD INSTALL_MOD_PATH=$out modules_install" - ''; - - meta = with lib; { - description = "Based on AMD_ENERGY driver, but with some jiffies added so non-root users can read it safely."; - homepage = "https://github.com/BoukeHaarsma23/zenergy"; - license = licenses.gpl2Only; - maintainers = with maintainers; [ wizardlink ]; - platforms = platforms.linux; - }; -} diff --git a/shared/README.md b/shared/README.md deleted file mode 100644 index c0143fe..0000000 --- a/shared/README.md +++ /dev/null @@ -1,55 +0,0 @@ -In this directory you will find the configuration for [NixOS] and [Home Manager] that I share across multiple machines. - -## File structure - -### ./nixos - -- `default.nix` - - _Entry point._ -- `common.nix` - - _General configuration and packages._ -- `desktop.nix` - - _Desktop specific configuration._ -- `gaming.nix` - - _Gaming related configuration._ -- `hardware.nix` - - _Hardware specific configuration._ -- `system.nix` - - _Configuration pertaining the system._ -- `virtualization.nix` - - _Virtualization packages and configuration._ - -### ./home-manager - -- `default.nix` - - _Entry point._ -- `common.nix` - - _General and misc. packages alongside uncategorized dotfiles._ -- `gaming.nix` - - _Packages and dotfiles pertaining games/gaming._ -- `theming.nix` - - _Theming of the system and it's packages._ -- `dotfiles/` - - _Program specific user configuration._ -- `scripts/` - - _Contains scripts that I may use day to day._ - -#### Screenshots - -Alacritty & Fish: - -![image](/assets/screenshots/alacritty-and-fish.png) - -Waybar: - -![image](/assets/screenshots/waybar.png) - -Rofi: - -![image](/assets/screenshots/rofi.png) - - - - -[nixos]: https://nixos.org -[home manager]: https://github.com/nix-community/home-manager diff --git a/shared/home-manager/common.nix b/shared/home-manager/common.nix deleted file mode 100644 index b20610e..0000000 --- a/shared/home-manager/common.nix +++ /dev/null @@ -1,139 +0,0 @@ -{ - self, - pkgs, - clipboard-sync, - ... -}: - -{ - # Let Home Manager install and manage itself. - programs.home-manager.enable = true; - - home.file = { - # My utility scripts - ".local/share/scripts" = { - source = ./scripts; - recursive = true; - }; - - # Configuration for mako, a notification daemon. - ".config/mako".source = ./dotfiles/mako; - - # Configure pipewire for microphone noise supression. - ".config/pipewire/pipewire.conf.d/99-input-denoising.conf".text = '' - context.modules = [ - { name = libpipewire-module-filter-chain - args = { - node.description = "Noise Canceling source" - media.name = "Noise Canceling source" - filter.graph = { - nodes = [ - { - type = ladspa - name = rnnoise - plugin = ${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so - label = noise_suppressor_mono - control = { - "VAD Threshold (%)" = 60.0 - "VAD Grace Period (ms)" = 175 - "Retroactive VAD Grace (ms)" = 50 - } - } - ] - } - capture.props = { - node.name = "capture.rnnoise_source" - node.passive = true - audio.rate = 48000 - } - playback.props = { - node.name = "rnnoise_source" - media.class = Audio/Source - audio.rate = 48000 - } - } - } - ] - ''; - }; - - # Configure XDG - xdg.mimeApps.defaultApplications = { - "inode/directory" = [ "thunar.desktop" ]; - "text/html" = [ "firefox.desktop" ]; - "video/mp4" = [ "vlc.desktop" ]; - "video/x-matroska" = [ "vlc.desktop" ]; - "x-scheme-handler/about" = [ "firefox.desktop" ]; - "x-scheme-handler/http" = [ "firefox.desktop" ]; - "x-scheme-handler/https" = [ "firefox.desktop" ]; - "x-scheme-handler/unknown" = [ "firefox.desktop" ]; - }; - - home.packages = with pkgs; [ - # # You can also create simple shell scripts directly inside your - # # configuration. For example, this adds a command 'my-hello' to your - # # environment: - # (pkgs.writeShellScriptBin "my-hello" '' - # echo "Hello, ${config.home.username}!" - # '') - - ## Tools - # Utilities - fastfetch - firefox - pavucontrol - # protonvpn-gui # WARNING: Marked as broken https://github.com/NixOS/nixpkgs/commit/84faa614a5256a84e3dd4e445053ff76f4c0a5d4 - qbittorrent - qdirstat - speedcrunch - vlc - yt-dlp - zathura - - # Personal utilities - anki - ledger - vesktop - - # Editing - libreoffice - - # Creative work - aseprite - blender - krita - self.packages.${system}.lmms - orca-slicer - shotcut - vcv-rack - vhs - - ## Entertainment - jellyfin-media-player - tidal-hifi - - ## Libraries - libsForQt5.kdegraphics-thumbnailers - libsForQt5.kio-extras - rnnoise-plugin - - ## Development - dbeaver-bin - godot_4 - hoppscotch - lazygit - - ## Desktop environment - clipboard-sync.packages.${pkgs.stdenv.hostPlatform.system}.default - cliphist - grim - libsForQt5.ark - loupe - mako - slurp - swww - - # Mail client - thunderbird - ]; -} diff --git a/shared/home-manager/default.nix b/shared/home-manager/default.nix deleted file mode 100644 index e0205e4..0000000 --- a/shared/home-manager/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: - -{ - imports = [ - ./common.nix - ./dotfiles - ./gaming.nix - ./theming.nix - ]; -} diff --git a/shared/home-manager/dotfiles/alacritty.nix b/shared/home-manager/dotfiles/alacritty.nix deleted file mode 100644 index 39b9c77..0000000 --- a/shared/home-manager/dotfiles/alacritty.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ pkgs, ... }: - -let - catppuccin-theme = pkgs.fetchFromGitHub { - owner = "catppuccin"; - repo = "alacritty"; - rev = "94800165c13998b600a9da9d29c330de9f28618e"; - hash = "sha256-Pi1Hicv3wPALGgqurdTzXEzJNx7vVh+8B9tlqhRpR2Y="; - }; -in -{ - programs.alacritty = { - enable = true; - settings = { - general.import = [ "${catppuccin-theme}/catppuccin-frappe.toml" ]; - - font = { - normal = { - family = "BlexMono Nerd Font"; - style = "Regular"; - }; - - size = 12; - }; - - window = { - decorations = "None"; - opacity = 0.8; - - padding = { - x = 18; - y = 18; - }; - }; - }; - }; -} diff --git a/shared/home-manager/dotfiles/default.nix b/shared/home-manager/dotfiles/default.nix deleted file mode 100644 index e08e113..0000000 --- a/shared/home-manager/dotfiles/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ ... }: - -{ - imports = [ - ./alacritty.nix - ./direnv - ./fish - ./git.nix - ./mangohud.nix - ./obs-studio.nix - ./rofi - ./spotify - ./tmux - ./waybar.nix - ]; -} diff --git a/shared/home-manager/dotfiles/direnv/default.nix b/shared/home-manager/dotfiles/direnv/default.nix deleted file mode 100644 index c27cb2c..0000000 --- a/shared/home-manager/dotfiles/direnv/default.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ ... }: - -{ - programs.direnv = { - enable = true; - nix-direnv.enable = true; - }; -} diff --git a/shared/home-manager/dotfiles/fish/Catppuccin-Frappe.theme b/shared/home-manager/dotfiles/fish/Catppuccin-Frappe.theme deleted file mode 100644 index 3dc51d4..0000000 --- a/shared/home-manager/dotfiles/fish/Catppuccin-Frappe.theme +++ /dev/null @@ -1,30 +0,0 @@ -# name: 'Catppuccin frappe' -# url: 'https://github.com/catppuccin/fish' -# preferred_background: 303446 - -fish_color_normal c6d0f5 -fish_color_command 8caaee -fish_color_param eebebe -fish_color_keyword e78284 -fish_color_quote a6d189 -fish_color_redirection f4b8e4 -fish_color_end ef9f76 -fish_color_comment 838ba7 -fish_color_error e78284 -fish_color_gray 737994 -fish_color_selection --background=414559 -fish_color_search_match --background=414559 -fish_color_option a6d189 -fish_color_operator f4b8e4 -fish_color_escape ea999c -fish_color_autosuggestion 737994 -fish_color_cancel e78284 -fish_color_cwd e5c890 -fish_color_user 81c8be -fish_color_host 8caaee -fish_color_host_remote a6d189 -fish_color_status e78284 -fish_pager_color_progress 737994 -fish_pager_color_prefix f4b8e4 -fish_pager_color_completion c6d0f5 -fish_pager_color_description 737994 diff --git a/shared/home-manager/dotfiles/fish/default.nix b/shared/home-manager/dotfiles/fish/default.nix deleted file mode 100644 index aef3482..0000000 --- a/shared/home-manager/dotfiles/fish/default.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ ... }: - -{ - home.file = { - # Cattpuccin theme for fish shell. - ".config/fish/themes/Catppuccin-Frappe.theme".source = ./Catppuccin-Frappe.theme; - }; - - programs.fish = { - enable = true; - - interactiveShellInit = '' - ## Set vim mode - set -g fish_key_bindings fish_vi_key_bindings - - # Configure FZF - set -x FZF_DEFAULT_OPTS '--color=fg:#f8f8f2,hl:#bd93f9 --color=fg+:#f8f8f2,bg+:#44475a,hl+:#bd93f9 --color=info:#ffb86c,prompt:#50fa7b,pointer:#ff79c6 --color=marker:#ff79c6,spinner:#ffb86c,header:#6272a4 --layout=reverse --height 50%' - - # Remove welcome message - set -x fish_greeting "" - - ## Add directories to $PATH - fish_add_path /home/wizardlink/.local/share/scripts \ - /home/wizardlink/.config/emacs/bin \ - /home/wizardlink/.nimble/bin \ - /home/wizardlink/.cargo/bin \ - /home/wizardlink/.local/bin \ - /lib/flatpak/exports/bin - - zoxide init --cmd cd fish | source - ''; - - shellAbbrs = { - z = "zoxide"; - pkg_expr = { - position = "anywhere"; - expansion = "--expr 'with import { % }; '"; - }; - impure_cmd = { - position = "command"; - expansion = "NIXPKGS_ALLOW_UNFREE=1 nix % --impure"; - }; - }; - - shellAliases = { - del = "trash_file"; - dev = "nix develop -c fish"; - doom = "~/.config/emacs/bin/doom"; - repl = "NIXPKGS_ALLOW_UNFREE=1 nix repl --impure --extra-experimental-features 'flakes' nixpkgs#legacyPackages.x86_64-linux"; - }; - - functions = { - fish_prompt.body = '' - set_color CC241D - echo '&' (set_color normal) - ''; - - fzf_edit.body = '' - fzf --multi --bind 'enter:become(nvim {+})' - ''; - - trash_file.body = '' - mv $argv ~/.local/share/Trash - ''; - - ya.body = '' - set tmp (mktemp -t "yazi-cwd.XXXXX") - yazi $argv --cwd-file="$tmp" - if set cwd (cat -- "$tmp"); and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ] - cd -- "$cwd" - end - rm -f -- "$tmp" - ''; - }; - }; -} diff --git a/shared/home-manager/dotfiles/git.nix b/shared/home-manager/dotfiles/git.nix deleted file mode 100644 index 1d5ae80..0000000 --- a/shared/home-manager/dotfiles/git.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ ... }: - -{ - # Enable GIT. - programs.git = { - enable = true; - lfs.enable = true; - - aliases = { - # List aliases - aliases = "config --get-regexp alias"; - - # List all the contributors with commit amount - contributors = "shortlog --summary --numbered"; - - # Output verbose info about branches and tags - branches = "branch -avv"; - - # List all tags - tags = "tag -l"; - - # Pretty logs - plog = "log --graph --decorate --all"; - - # Pretty grep - gcommit = "log --graph --decorate --grep"; - }; - - extraConfig = { - core = { - # Set the editor to be used by GIT - editor = "nvim"; - - # Custom .gitignore - excludesfile = "~/.gitignore"; - - # Treat trailing whitespaces and spaces before tabs as an error - whitespace = "space-before-tab,-indent-with-non-tab,trailing-space"; - }; - - color = { - # Use colors in GIT commmands. - ui = "auto"; - }; - - commit = { - # https://help.github.com/articles/signing-commits-using-gpg/ - gpgsign = true; - }; - - tag = { - gpgsign = true; - }; - - difftool = { - prompt = true; - }; - - mergetool = { - # https://www.git-scm.com/docs/git-mergetool#Documentation/git-mergetool.txt---no-prompt - prompt = false; - }; - - merge = { - # https://git-scm.com/docs/git-merge#_how_conflicts_are_presented - conflictstyle = "diff3"; - }; - - push = { - # https://stackoverflow.com/questions/21839651/git-what-is-the-difference-between-push-default-matching-and-simple - default = "simple"; - - # git-push pushes relevant annotated tags when pushing branches out - followTags = true; - }; - - user = { - name = "Alexandre Cavalheiro S. Tiago da Silva"; - email = "contact@thewizard.link"; - signingkey = "A1D3A2B4E14BD7C0445BB749A5767B54367CFBDF"; - }; - - pull = { - ff = "only"; - }; - - init = { - defaultBranch = "main"; - }; - }; - }; -} diff --git a/shared/home-manager/dotfiles/mangohud.nix b/shared/home-manager/dotfiles/mangohud.nix deleted file mode 100644 index 9dd6217..0000000 --- a/shared/home-manager/dotfiles/mangohud.nix +++ /dev/null @@ -1,101 +0,0 @@ -{ ... }: - -{ - programs.mangohud = { - enable = true; - - settings = { - # Limitations - fps_limit = 165; - #vsync = 1; # Disables VSync - #gl_vsync = 0; # - in OpenGL applications - - # GPU Statistics - gpu_core_clock = true; - gpu_fan = true; - gpu_junction_temp = true; - gpu_load_change = true; - gpu_load_color = [ - "39F900" - "FDFD09" - "B22222" - ]; - gpu_load_value = [ - 60 - 90 - ]; - gpu_mem_clock = true; - gpu_mem_temp = true; - gpu_power = true; - gpu_stats = true; - gpu_temp = true; - gpu_voltage = true; - - # CPU Statistics - cpu_load_change = true; - cpu_load_color = [ - "39F900" - "FDFD09" - "B22222" - ]; - cpu_load_value = [ - 60 - 90 - ]; - cpu_mhz = true; - cpu_power = true; - cpu_stats = true; - cpu_temp = true; - - # IO Statistics - io_read = true; - io_stats = true; - io_write = true; - - # RAM Statistics - ram = true; - swap = true; - vram = true; - - # FPS Statistics - fps = true; - fps_color_change = true; - fps_value = [ - 60 - 90 - ]; - fps_color = [ - "B22222" - "FDFD09" - "39F900" - ]; - frametime = true; - frame_timing = true; # Display graphs - histogram = true; # ^ - - # Show whether gamemode is enabled for the application. - gamemode = true; - - # Make so MangoHud starts hidden. - no_display = true; - - # Show whether the GPU is throttling. - throttling_status = true; - - # Show wine/proton version. - wine = true; - - # Show the vulkan driver in-use. - vulkan_driver = true; - - # Display the process' memory usage. - procmem = true; - - # Show the application's architecture. - arch = true; - - # Where to output log files. - output_folder = /home/wizardlink/.config/MangoHud; - }; - }; -} diff --git a/shared/home-manager/dotfiles/obs-studio.nix b/shared/home-manager/dotfiles/obs-studio.nix deleted file mode 100644 index 1a287af..0000000 --- a/shared/home-manager/dotfiles/obs-studio.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ pkgs, ... }: - -{ - programs.obs-studio = { - enable = true; - plugins = with pkgs.obs-studio-plugins; [ - input-overlay - obs-backgroundremoval - obs-gstreamer - obs-pipewire-audio-capture - obs-vkcapture - ]; - }; - - home.packages = [ - pkgs.obs-studio-plugins.obs-vkcapture - ]; -} diff --git a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Frappe.conf b/shared/home-manager/dotfiles/qt5ct/Catppuccin-Frappe.conf deleted file mode 100644 index 48e4169..0000000 --- a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Frappe.conf +++ /dev/null @@ -1,4 +0,0 @@ -[ColorScheme] -active_colors=#ffc6d0f5, #ff292c3c, #ffa5adce, #ff949cbb, #ff51576d, #ff737994, #ffc6d0f5, #ffc6d0f5, #ffc6d0f5, #ff303446, #ff292c3c, #ff838ba7, #ff8caaee, #ff303446, #ff8caaee, #ffe78284, #ff303446, #ffc6d0f5, #ff232634, #ffc6d0f5, #80838ba7 -disabled_colors=#ffa5adce, #ff292c3c, #ffa5adce, #ff949cbb, #ff51576d, #ff737994, #ffa5adce, #ffa5adce, #ffa5adce, #ff303446, #ff292c3c, #ff838ba7, #ff626880, #ffb5bfe2, #ff8caaee, #ffe78284, #ff303446, #ffc6d0f5, #ff232634, #ffc6d0f5, #80838ba7 -inactive_colors=#ffc6d0f5, #ff292c3c, #ffa5adce, #ff949cbb, #ff51576d, #ff737994, #ffc6d0f5, #ffc6d0f5, #ffc6d0f5, #ff303446, #ff292c3c, #ff838ba7, #ff414559, #ffa5adcb, #ff8caaee, #ffe78284, #ff303446, #ffc6d0f5, #ff232634, #ffc6d0f5, #80838ba7 diff --git a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Latte.conf b/shared/home-manager/dotfiles/qt5ct/Catppuccin-Latte.conf deleted file mode 100644 index 42db9c5..0000000 --- a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Latte.conf +++ /dev/null @@ -1,4 +0,0 @@ -[ColorScheme] -active_colors=#ff4c4f69, #ffe6e9ef, #ff6c6f85, #ff7c7f93, #ffbcc0cc, #ff9ca0b0, #ff4c4f69, #ff4c4f69, #ff4c4f69, #ffeff1f5, #ffe6e9ef, #ff8c8fa1, #ff1e66f5, #ffeff1f5, #ff7287fd, #ffe64553, #ffeff1f5, #ff4c4f69, #ffdce0e8, #ff4c4f69, #808c8fa1 -disabled_colors=#ff6c6f85, #ffe6e9ef, #ff6c6f85, #ff7c7f93, #ffbcc0cc, #ff9ca0b0, #ff6c6f85, #ff6c6f85, #ff6c6f85, #ffeff1f5, #ffe6e9ef, #ff8c8fa1, #ff9ca0b0, #ff5c5f77, #ff7287fd, #ffe64553, #ffeff1f5, #ff4c4f69, #ffdce0e8, #ff4c4f69, #808c8fa1 -inactive_colors=#ff4c4f69, #ffe6e9ef, #ff6c6f85, #ff7c7f93, #ffbcc0cc, #ff9ca0b0, #ff4c4f69, #ff4c4f69, #ff4c4f69, #ffeff1f5, #ffe6e9ef, #ff8c8fa1, #ffccd0da, #ff6c6f85, #ff7287fd, #ffe64553, #ffeff1f5, #ff4c4f69, #ffdce0e8, #ff4c4f69, #808c8fa1 diff --git a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Macchiato.conf b/shared/home-manager/dotfiles/qt5ct/Catppuccin-Macchiato.conf deleted file mode 100644 index fdae012..0000000 --- a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Macchiato.conf +++ /dev/null @@ -1,4 +0,0 @@ -[ColorScheme] -active_colors=#ffcad3f5, #ff1e2030, #ffa5adcb, #ff939ab7, #ff494d64, #ff6e738d, #ffcad3f5, #ffcad3f5, #ffcad3f5, #ff24273a, #ff1e2030, #ff8087a2, #ff8aadf4, #ff24273a, #ff8aadf4, #ffed8796, #ff24273a, #ffcad3f5, #ff181926, #ffcad3f5, #808087a2 -disabled_colors=#ffa5adcb, #ff1e2030, #ffa5adcb, #ff939ab7, #ff494d64, #ff6e738d, #ffa5adcb, #ffa5adcb, #ffa5adcb, #ff24273a, #ff1e2030, #ff8087a2, #ff8aadf4, #ff494d64, #ff8aadf4, #ffed8796, #ff24273a, #ffcad3f5, #ff181926, #ffcad3f5, #808087a2 -inactive_colors=#ffcdd6f4, #ff1e2030, #ffa5adcb, #ff939ab7, #ff494d64, #ff6e738d, #ffcad3f5, #ffcad3f5, #ffcad3f5, #ff24273a, #ff1e2030, #ff8087a2, #ff8aadf4, #ffa5adcb, #ff8aadf4, #ffed8796, #ff24273a, #ffcad3f5, #ff181926, #ffcad3f5, #808087a2 diff --git a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Mocha.conf b/shared/home-manager/dotfiles/qt5ct/Catppuccin-Mocha.conf deleted file mode 100644 index e566a63..0000000 --- a/shared/home-manager/dotfiles/qt5ct/Catppuccin-Mocha.conf +++ /dev/null @@ -1,4 +0,0 @@ -[ColorScheme] -active_colors=#ffcdd6f4, #ff1e1e2e, #ffa6adc8, #ff9399b2, #ff45475a, #ff6c7086, #ffcdd6f4, #ffcdd6f4, #ffcdd6f4, #ff1e1e2e, #ff181825, #ff7f849c, #ff89b4fa, #ff1e1e2e, #ff89b4fa, #fff38ba8, #ff1e1e2e, #ffcdd6f4, #ff11111b, #ffcdd6f4, #807f849c -disabled_colors=#ffa6adc8, #ff1e1e2e, #ffa6adc8, #ff9399b2, #ff45475a, #ff6c7086, #ffa6adc8, #ffa6adc8, #ffa6adc8, #ff1e1e2e, #ff11111b, #ff7f849c, #ff89b4fa, #ff45475a, #ff89b4fa, #fff38ba8, #ff1e1e2e, #ffcdd6f4, #ff11111b, #ffcdd6f4, #807f849c -inactive_colors=#ffcdd6f4, #ff1e1e2e, #ffa6adc8, #ff9399b2, #ff45475a, #ff6c7086, #ffcdd6f4, #ffcdd6f4, #ffcdd6f4, #ff1e1e2e, #ff181825, #ff7f849c, #ff89b4fa, #ffa6adc8, #ff89b4fa, #fff38ba8, #ff1e1e2e, #ffcdd6f4, #ff11111b, #ffcdd6f4, #807f849c diff --git a/shared/home-manager/dotfiles/rofi/catppuccin-frappe.rasi b/shared/home-manager/dotfiles/rofi/catppuccin-frappe.rasi deleted file mode 100644 index 79cb8dc..0000000 --- a/shared/home-manager/dotfiles/rofi/catppuccin-frappe.rasi +++ /dev/null @@ -1,111 +0,0 @@ -* { - bg-col: #303446; - bg-col-light: #303446; - border-col: #303446; - selected-col: #303446; - blue: #8caaee; - fg-col: #c6d0f5; - fg-col2: #e78284; - grey: #737994; - - width: 600; - font: "IBM Plex Sans 14"; -} - -element-text, element-icon , mode-switcher { - background-color: inherit; - text-color: inherit; -} - -window { - height: 360px; - border: 3px; - border-color: @border-col; - background-color: @bg-col; -} - -mainbox { - background-color: @bg-col; -} - -inputbar { - children: [prompt,entry]; - background-color: @bg-col; - border-radius: 5px; - padding: 2px; -} - -prompt { - background-color: @blue; - padding: 6px; - text-color: @bg-col; - border-radius: 3px; - margin: 20px 0px 0px 20px; -} - -textbox-prompt-colon { - expand: false; - str: ":"; -} - -entry { - padding: 6px; - margin: 20px 0px 0px 10px; - text-color: @fg-col; - background-color: @bg-col; -} - -listview { - border: 0px 0px 0px; - padding: 6px 0px 0px; - margin: 10px 0px 0px 20px; - columns: 2; - lines: 5; - background-color: @bg-col; -} - -element { - padding: 5px; - background-color: @bg-col; - text-color: @fg-col ; -} - -element-icon { - size: 25px; -} - -element selected { - background-color: @selected-col ; - text-color: @fg-col2 ; -} - -mode-switcher { - spacing: 0; - } - -button { - padding: 10px; - background-color: @bg-col-light; - text-color: @grey; - vertical-align: 0.5; - horizontal-align: 0.5; -} - -button selected { - background-color: @bg-col; - text-color: @blue; -} - -message { - background-color: @bg-col-light; - margin: 2px; - padding: 2px; - border-radius: 5px; -} - -textbox { - padding: 6px; - margin: 20px 0px 0px 20px; - text-color: @blue; - background-color: @bg-col-light; -} diff --git a/shared/home-manager/dotfiles/rofi/default.nix b/shared/home-manager/dotfiles/rofi/default.nix deleted file mode 100644 index ea802ae..0000000 --- a/shared/home-manager/dotfiles/rofi/default.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ pkgs, ... }: - -{ - programs.rofi = { - enable = true; - package = pkgs.rofi-wayland; - - font = "IBM Plex Sans"; - - extraConfig = { - disable-history = false; - display-Network = " 󰤨 Network"; - display-drun = "  Apps "; - display-run = "  Run "; - display-window = " 﩯 Window"; - drun-display-format = "{icon} {name}"; - hide-scrollbar = true; - icon-theme = "Papirus-Dark"; - location = 0; - modi = "run,drun,window"; - show-icons = true; - sidebar-mode = true; - terminal = "alacritty"; - }; - - theme = ./catppuccin-frappe.rasi; - }; -} diff --git a/shared/home-manager/dotfiles/spotify/default.nix b/shared/home-manager/dotfiles/spotify/default.nix deleted file mode 100644 index 9ae1c18..0000000 --- a/shared/home-manager/dotfiles/spotify/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, spicetify-nix, ... }: - -let - spicePkgs = spicetify-nix.legacyPackages.${pkgs.system}; -in -{ - imports = [ spicetify-nix.homeManagerModules.default ]; - - programs.spicetify = { - enable = true; - theme = spicePkgs.themes.catppuccin; - colorScheme = "frappe"; - - enabledExtensions = with spicePkgs.extensions; [ - autoVolume - shuffle - ]; - }; -} diff --git a/shared/home-manager/dotfiles/tmux/default.nix b/shared/home-manager/dotfiles/tmux/default.nix deleted file mode 100644 index 0e67e98..0000000 --- a/shared/home-manager/dotfiles/tmux/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ pkgs, ... }: - -{ - programs.tmux = { - enable = true; - clock24 = true; - keyMode = "vi"; - terminal = "screen-256color"; - - extraConfig = '' - # Fix colors - set -sg terminal-overrides ",*:RGB" - ''; - - plugins = with pkgs.tmuxPlugins; [ - { - plugin = catppuccin; - extraConfig = '' - # Set theme - set -g @catppuccin_flavour 'frappe' - ''; - } - ]; - }; -} diff --git a/shared/home-manager/dotfiles/waybar.nix b/shared/home-manager/dotfiles/waybar.nix deleted file mode 100644 index 0f58e50..0000000 --- a/shared/home-manager/dotfiles/waybar.nix +++ /dev/null @@ -1,205 +0,0 @@ -{ ... }: -{ - programs.waybar = { - enable = true; - - settings = { - mainBar = { - layer = "top"; - margin = "10px 10px 0"; - height = 30; - - modules-left = [ "hyprland/workspaces" ]; - modules-center = [ "clock" ]; - modules-right = [ - "network" - "memory" - "cpu" - "temperature" - "battery" - "tray" - ]; - - "hyprland/workspaces" = { - format = "{icon}"; - - format-icons = { - active = ""; - default = ""; - empty = ""; - persistent = ""; - special = ""; - urgent = ""; - }; - }; - - clock = { - format = "{:%H:%M} "; - format-alt = "{:%A; %B %d, %Y (%R)} "; - tooltip-format = "{calendar}"; - calendar = { - mode = "month"; - mode-mon-col = 3; - weeks-pos = "right"; - on-scroll = 1; - on-click-right = "mode"; - format = { - months = "{}"; - days = "{}"; - weeks = "W{}"; - weekdays = "{}"; - today = "{}"; - }; - actions = { - on-click-backward = "tz_down"; - on-click-forward = "tz_up"; - on-click-right = "mode"; - on-scroll-down = "shift_down"; - on-scroll-up = "shift_up"; - }; - }; - }; - - network = { - interval = 5; - format = " {bandwidthUpBits} 󰇙 {bandwidthDownBits} "; - format-disconnected = " No connection"; - tooltip-format-wifi = " {essid} ({signalStrength}%)"; - }; - - memory = { - interval = 5; - format = " {percentage}%"; - states = { - warning = 70; - critical = 90; - }; - "tooltip-format" = " {used:0.1f}G/{total:0.1f}G"; - }; - - cpu = { - interval = 5; - tooltip = false; - format = " {usage}%"; - format-alt = " {load}"; - states = { - warning = 70; - critical = 90; - }; - }; - - temperature = { - critical-threshold = 90; - interval = 5; - format = "{icon} {temperatureC}°"; - format-icons = [ - "" - "" - "" - "" - "" - ]; - tooltip = false; - }; - - # Module configuration - battery = { - interval = 10; - states = { - warning = 30; - critical = 15; - }; - - format-time = "{H}:{M:02}"; - format = "{icon} {capacity}% ({time})"; - format-charging = " {capacity}% ({time})"; - format-charging-full = " {capacity}%"; - format-full = "{icon} {capacity}%"; - format-alt = "{icon} {power}W"; - format-icons = [ - "" - "" - "" - "" - "" - ]; - tooltip = false; - }; - - tray = { - icon-size = 18; - spacing = 10; - }; - }; - }; - - style = '' - /* Using https://github.com/catppuccin/catppuccin for color reference. */ - - /* Keyframes */ - @keyframes blink-critical { - to { - /*color: @white;*/ - background-color: @critical; - } - } - - * { - all: unset; - color: #c6d0f5; - font-family: "IBM Plex Sans", 'Courier New', Courier, monospace; - font-size: 14px; - } - - .modules-left, - .modules-right, - .modules-center { - padding: 0 20px; - border-radius: 10px; - background-color: rgba(48, 52, 70, 0.85); - } - - tooltip { - background-color: rgba(48, 52, 70, 0.85); - border-radius: 10px; - padding: 8px; - } - - tooltip label { - color: #c6d0f5; - } - - #workspaces { - margin-left: -5px; - padding-left: 0px; - } - - #workspaces button { - margin: 0 8px; - } - - #workspaces button:hover { - background: #414559; - border: none; - } - - #clock { - padding: 0 10px; - } - - #network, #cpu, #memory, #temperature { - margin: 0 8px; - } - - #tray { - margin-left: 8px; - } - - #tray menu { - background-color: rgba(48, 52, 70, 0.85); - border-radius: 10px; - padding: 8px; - } - ''; - }; -} diff --git a/shared/home-manager/gaming.nix b/shared/home-manager/gaming.nix deleted file mode 100644 index 86bb334..0000000 --- a/shared/home-manager/gaming.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ pkgs, ... }: - -{ - - home.file = { - # Configuration for gamemode, for running games with optimizations. - ".config/gamemode.ini".source = ./dotfiles/gamemode.ini; - - # Configure DXVK - ".config/dxvk.conf".text = '' - dxvk.enableGraphicsPipelineLibrary = Auto - ''; - }; - - home.packages = with pkgs; [ - gamescope - heroic - protontricks - r2modman - wineWowPackages.stableFull - winetricks - - # Games - openttd - prismlauncher - shattered-pixel-dungeon - xonotic - ]; -} diff --git a/shared/home-manager/scripts/games/launch.sh b/shared/home-manager/scripts/games/launch.sh deleted file mode 100755 index 0754dfa..0000000 --- a/shared/home-manager/scripts/games/launch.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# I've removed all environment variables -# but there might be useful ones in the future. -# https://docs.mesa3d.org/envvars.html - -obs-gamecapture mangohud gamemoderun "$@" diff --git a/shared/home-manager/theming.nix b/shared/home-manager/theming.nix deleted file mode 100644 index 0ae790d..0000000 --- a/shared/home-manager/theming.nix +++ /dev/null @@ -1,79 +0,0 @@ -{ pkgs, ... }: - -{ - home.packages = with pkgs; [ - ibm-plex - nerd-fonts.blex-mono - nerd-fonts.symbols-only - libsForQt5.qtstyleplugin-kvantum - libsForQt5.qtwayland - qt6Packages.qtstyleplugin-kvantum - qt6Packages.qtwayland - ]; - - home.file = { - ## Kvantum's theme configuration. - ".config/Kvantum/catppuccin-frappe-lavender" = { - source = "${ - pkgs.catppuccin-kvantum.override { - accent = "lavender"; - variant = "frappe"; - } - }/share/Kvantum/catppuccin-frappe-lavender"; - }; - - ".config/Kvantum/kvantum.kvconfig".text = '' - [General] - theme=catppuccin-frappe-lavender - ''; - ## - - ## Theming configuration for qt5 and qt6 - ".config/qt5ct/colors".source = ./dotfiles/qt5ct; - - ".config/qt6ct/colors".source = ./dotfiles/qt5ct; # We use the qt5ct because it's the SAME spec - ## - - ".local/share/SpeedCrunch/color-schemes/catppuccin-frappe.json" = { - recursive = true; - source = builtins.fetchurl { - url = "https://raw.githubusercontent.com/catppuccin/speedcrunch/34f2b382de0188d2fd85f59a8a366f313fc30a71/themes/catppuccin-frappe.json"; - sha256 = "sha256:0imx5a53p3ls5kddplgr7mbpbidrmzl9qiwpv7r8jjmsf8yxs0i4"; - }; - }; - }; - - home.pointerCursor = { - package = pkgs.catppuccin-cursors.frappeLavender; - name = "catppuccin-frappe-lavender-cursors"; - - size = 24; - - gtk.enable = true; - x11.enable = true; - }; - - # Configure GTK. - gtk = { - enable = true; - - gtk3.extraConfig = { - gtk-application-prefer-dark-theme = true; - }; - - gtk4.extraConfig = { - gtk-application-prefer-dark-theme = true; - }; - - iconTheme = { - name = "Papirus-Dark"; - package = pkgs.papirus-icon-theme.override { color = "violet"; }; - }; - }; - - # Configure QT - qt = { - enable = true; - platformTheme.name = "qtct"; - }; -} diff --git a/shared/nixos/common.nix b/shared/nixos/common.nix deleted file mode 100644 index f03844d..0000000 --- a/shared/nixos/common.nix +++ /dev/null @@ -1,70 +0,0 @@ -{ pkgs, nixpkgs, ... }: - -{ - # Enable experimental features - nix.settings.experimental-features = [ - "nix-command" - "flakes" - ]; - - # Optimize storage - nix.optimise.automatic = true; - nix.settings.auto-optimise-store = true; - - # Pin the nix registry - nix.registry = { - nixpkgs.flake = nixpkgs; - }; - - # Allow unfree packages - nixpkgs.config.allowUnfree = true; - - # Enable nh, a bundle of CLI utilities for NixOS - programs.nh = { - enable = true; - - # Enable automatic garbage collection. - clean.enable = true; - clean.dates = "daily"; - clean.extraArgs = "--keep-since 4d --keep 3"; - - flake = "/home/wizardlink/.system"; - }; - - # Enable flatpak to all users. - services.flatpak.enable = true; - - environment.systemPackages = with pkgs; [ - ## Tools - # Utilities - bat - duf - fuseiso - lm_sensors - p7zip - tree - unrar - unzip - wget - zip - - # File managing - sshfs - yazi - - # Networking - gping - nmap - - # Processes - (btop.override { - # AMD GPU support - rocmSupport = true; - }) - killall - - # Filter - fzf - ripgrep - ]; -} diff --git a/shared/nixos/default.nix b/shared/nixos/default.nix deleted file mode 100644 index 7662091..0000000 --- a/shared/nixos/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ ... }: - -{ - imports = [ - ./common.nix - ./desktop.nix - ./gaming.nix - ./hardware.nix - ./system.nix - ./virtualization.nix - ]; -} diff --git a/shared/nixos/desktop.nix b/shared/nixos/desktop.nix deleted file mode 100644 index 1a64096..0000000 --- a/shared/nixos/desktop.nix +++ /dev/null @@ -1,109 +0,0 @@ -{ - pkgs, - ... -}: - -{ - # Enable SDDM. - services.displayManager.sddm = { - enable = true; - wayland.enable = true; - theme = "catppuccin-frappe"; - package = pkgs.kdePackages.sddm; - }; - - # Enable XDG Desktop Portals. - xdg.portal = { - enable = true; - - config = { - common = { - default = [ "wlr" ]; - }; - }; - }; - - # Needed for home-manager - environment.pathsToLink = [ - "/share/xdg-desktop-portal" - "/share/applications" - ]; - - # Enable OpenGL. - hardware.graphics = { - enable = true; - enable32Bit = true; - - extraPackages = with pkgs; [ - rocmPackages.clr.icd # OpenGL hwa - ]; - }; - - # Set the default fonts for the system. - fonts.fontconfig = { - defaultFonts = { - serif = [ "IBM Plex Serif" ]; - sansSerif = [ "IBM Plex Sans" ]; - monospace = [ "IBM Plex Mono" ]; - }; - }; - - # Enable Thunar and it's dependencies - programs.thunar = { - enable = true; - plugins = with pkgs.xfce; [ thunar-archive-plugin ]; - }; - programs.xfconf.enable = true; # For configuring - services.gvfs.enable = true; # For mounting drives, trash, etc. - services.tumbler.enable = true; # Thumbnail support - - # Enable KDEConnect - programs.kdeconnect = { - enable = true; - package = pkgs.kdePackages.kdeconnect-kde; - }; - - # Enable the Fcitx5 IME - i18n.inputMethod = { - enable = true; - type = "fcitx5"; - - fcitx5 = { - addons = with pkgs; [ - fcitx5-mozc - fcitx5-gtk - fcitx5-catppuccin - ]; - - quickPhrase = { - proud = "<( ̄︶ ̄)>"; - }; - - waylandFrontend = true; - }; - }; - - environment.sessionVariables = { - # Set env for Fcitx5 - QMODIFIERS = "@im=fcitx5"; - }; - - environment.systemPackages = with pkgs; [ - wl-clipboard - xclip - zoxide - (catppuccin-sddm.override # So SDDM finds the theme files. - { - flavor = "frappe"; - font = "IBM Plex Sans"; - fontSize = "11"; - background = "${../../assets/sddm/Background.jpg}"; - loginBackground = true; - } - ) - - ## Libraries - libsForQt5.qt5.qtgraphicaleffects - libsForQt5.qt5.qtquickcontrols2 - ]; -} diff --git a/shared/nixos/gaming.nix b/shared/nixos/gaming.nix deleted file mode 100644 index 5ccdf3e..0000000 --- a/shared/nixos/gaming.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ pkgs, ... }: - -{ - # Enable Steam. - programs.steam = { - enable = true; - - remotePlay.openFirewall = true; - localNetworkGameTransfers.openFirewall = true; - # ^ Enables so we can transfer games to other computers in the network. - - # Add Proton-GE to 'compatibilitytools.d'. - extraCompatPackages = with pkgs; [ proton-ge-bin ]; - }; - - # Enable and configure gamemode. - programs.gamemode = { - enable = true; - enableRenice = true; - settings = { - gpu = { - apply_gpu_optimisations = "accept-responsibility"; - gpu_device = 1; - amd_performance_level = "auto"; - }; - }; - }; -} diff --git a/shared/nixos/hardware.nix b/shared/nixos/hardware.nix deleted file mode 100644 index 184f32f..0000000 --- a/shared/nixos/hardware.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ ... }: - -{ - # Add AMD drivers - boot.initrd.kernelModules = [ - "amdgpu" - ]; - - # Enable Bluetooth - hardware.bluetooth = { - enable = true; - powerOnBoot = true; - }; - services.blueman.enable = true; - - # Enable fstrim for better ssd lifespan - services.fstrim.enable = true; -} diff --git a/shared/nixos/system.nix b/shared/nixos/system.nix deleted file mode 100644 index 8f22fe5..0000000 --- a/shared/nixos/system.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ pkgs, config, ... }: - -{ - # Kernel - boot.kernelPackages = pkgs.linuxPackages_zen; - - boot.initrd.kernelModules = [ - "v4l2loopback" - "zenergy" - ]; - - boot.extraModulePackages = [ - config.boot.kernelPackages.v4l2loopback - config.boot.kernelPackages.zenergy # Allows fetching power draw information on AMD CPUs - ]; - - # Configure v4l2loopback - boot.extraModprobeConfig = '' - options v4l2loopback devices=1 video_nr=1 card_label="Virtual camera" exclusive_caps=1 - ''; - - # Bootloader. - boot.loader = { - systemd-boot = { - enable = true; - configurationLimit = 10; - }; - - efi.canTouchEfiVariables = true; - }; - - # Enables zram. - zramSwap.enable = true; - - # Enable networking - networking.networkmanager.enable = true; - - # Enable sound with pipewire. - services.pulseaudio.enable = false; - services.pipewire = { - enable = true; - audio.enable = true; - - alsa.enable = true; - alsa.support32Bit = true; - - pulse.enable = true; - }; - - # Enable fish system-wide to integrate with nixpkgs. - programs.fish.enable = true; - - # Set fish as the default shell for all users. - users.defaultUserShell = pkgs.fish; - - # Enable CUPS to print documents. - services.printing.enable = true; - - # And the service that enables IPP Everywhere - services.avahi = { - enable = true; - nssmdns4 = true; - nssmdns6 = true; - openFirewall = true; - }; - - # Enable the OpenSSH daemon. - services.openssh = { - enable = true; - - settings = { - PasswordAuthentication = false; - PermitRootLogin = "no"; - StreamLocalBindUnlink = "yes"; - }; - }; - - # Enable GPG. - programs.gnupg.agent = { - enable = true; - enableSSHSupport = true; - }; - - # Enable polkit, - security.polkit.enable = true; - - # install an agent to interface with it, - environment.systemPackages = with pkgs; [ polkit_gnome ]; - - # And enable GNOME keyring for registering keys. - services.gnome.gnome-keyring.enable = true; -} diff --git a/shared/nixos/virtualization.nix b/shared/nixos/virtualization.nix deleted file mode 100644 index 6cec7a6..0000000 --- a/shared/nixos/virtualization.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ pkgs, ... }: - -{ - # Enable Docker. - virtualisation.docker.enable = true; - - # Enable virt-manager - programs.virt-manager.enable = true; - - # Enable virtd and spice USB redirection - virtualisation.spiceUSBRedirection.enable = true; - virtualisation.libvirtd.enable = true; - - environment.systemPackages = with pkgs; [ - docker-compose - quickemu - ]; -}