ranger fix

This commit is contained in:
Buliway 2024-08-18 01:02:17 +03:00
parent af42fd9f21
commit 13b82aa5ac
10 changed files with 237 additions and 77 deletions

View file

@ -9,7 +9,7 @@ from ranger.ext.get_executables import get_executables
class YankContent(Command): class YankContent(Command):
""" """
Copy the content of image file and text file with xclip Copy the file path as a URI with xclip
""" """
def execute(self): def execute(self):
@ -29,22 +29,29 @@ class YankContent(Command):
self.fm.notify('{} is not a file.'.format(file.relative_path)) self.fm.notify('{} is not a file.'.format(file.relative_path))
return return
relative_path = file.relative_path # relative_path = file.relative_path
cmd = ['xclip', '-selection', 'clipboard'] # cmd = ['xclip', '-selection', 'clipboard']
if not file.is_binary(): # if not file.is_binary():
with open(file.path, 'rb') as fd: # with open(file.path, 'rb') as fd:
subprocess.check_call(cmd, stdin=fd) # subprocess.check_call(cmd, stdin=fd)
elif file.image: # elif file.image:
cmd += ['-t', file.mimetype, file.path] # cmd += ['-t', file.mimetype, file.path]
subprocess.check_call(cmd) # subprocess.check_call(cmd)
self.fm.notify('Content of {} is copied to x clipboard'.format(relative_path)) # self.fm.notify('Content of {} is copied to x clipboard'.format(relative_path))
else: # else:
self.fm.notify('{} is not an image file or a text file.'.format(relative_path)) # self.fm.notify('{} is not an image file or a text file.'.format(relative_path))
# Выше гавно стоковое. Я заменил на это
cmd = "echo -n 'file://{}' | xclip -sel clip -t text/uri-list -i".format(file.path)
subprocess.check_call(cmd, shell=True)
self.fm.notify("File path {} is copied to clipboard as a URI".format(file.relative_path))
def tab(self, tabnum): def tab(self, tabnum):
return self._tab_directory_content() return self._tab_directory_content()
class YankContentWl(Command): class YankContentWl(Command):
""" """
Copy the content of image file and text file with wl-clipboard Copy the content of image file and text file with wl-clipboard

View file

@ -40,12 +40,15 @@ FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lowe
## Settings ## Settings
HIGHLIGHT_SIZE_MAX=262143 # 256KiB HIGHLIGHT_SIZE_MAX=262143 # 256KiB
HIGHLIGHT_TABWIDTH=${HIGHLIGHT_TABWIDTH:-8} HIGHLIGHT_TABWIDTH="${HIGHLIGHT_TABWIDTH:-8}"
HIGHLIGHT_STYLE=${HIGHLIGHT_STYLE:-pablo} HIGHLIGHT_STYLE="${HIGHLIGHT_STYLE:-pablo}"
HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}" HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}"
PYGMENTIZE_STYLE=${PYGMENTIZE_STYLE:-autumn} PYGMENTIZE_STYLE="${PYGMENTIZE_STYLE:-autumn}"
OPENSCAD_IMGSIZE=${RNGR_OPENSCAD_IMGSIZE:-1000,1000} BAT_STYLE="${BAT_STYLE:-plain}"
OPENSCAD_COLORSCHEME=${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night} OPENSCAD_IMGSIZE="${RNGR_OPENSCAD_IMGSIZE:-1000,1000}"
OPENSCAD_COLORSCHEME="${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night}"
SQLITE_TABLE_LIMIT=20 # Display only the top <limit> tables in database, set to 0 for no exhaustive preview (only the sqlite_master table is displayed).
SQLITE_ROW_LIMIT=5 # Display only the first and the last (<limit> - 1) records in each table, set to 0 for no limits.
handle_extension() { handle_extension() {
case "${FILE_EXTENSION_LOWER}" in case "${FILE_EXTENSION_LOWER}" in
@ -80,12 +83,16 @@ handle_extension() {
exit 1;; exit 1;;
## OpenDocument ## OpenDocument
odt|ods|odp|sxw) odt|sxw)
## Preview as text conversion ## Preview as text conversion
odt2txt "${FILE_PATH}" && exit 5 odt2txt "${FILE_PATH}" && exit 5
## Preview as markdown conversion ## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;; exit 1;;
ods|odp)
## Preview as text conversion (unsupported by pandoc for markdown)
odt2txt "${FILE_PATH}" && exit 5
exit 1;;
## XLSX ## XLSX
xlsx) xlsx)
@ -109,6 +116,14 @@ handle_extension() {
python -m json.tool -- "${FILE_PATH}" && exit 5 python -m json.tool -- "${FILE_PATH}" && exit 5
;; ;;
## Jupyter Notebooks
ipynb)
jupyter nbconvert --to markdown "${FILE_PATH}" --stdout | env COLORTERM=8bit bat --color=always --style=plain --language=markdown && exit 5
jupyter nbconvert --to markdown "${FILE_PATH}" --stdout && exit 5
jq --color-output . "${FILE_PATH}" && exit 5
python -m json.tool -- "${FILE_PATH}" && exit 5
;;
## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected ## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected
## by file(1). ## by file(1).
dff|dsf|wv|wvc) dff|dsf|wv|wvc)
@ -127,12 +142,14 @@ handle_image() {
local mimetype="${1}" local mimetype="${1}"
case "${mimetype}" in case "${mimetype}" in
# SVG ## SVG
image/svg+xml|image/svg) image/svg+xml|image/svg)
convert -- "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6 rsvg-convert --keep-aspect-ratio --width "${DEFAULT_SIZE%x*}" "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}.png" \
&& mv "${IMAGE_CACHE_PATH}.png" "${IMAGE_CACHE_PATH}" \
&& exit 6
exit 1;; exit 1;;
# DjVu ## DjVu
image/vnd.djvu) image/vnd.djvu)
ddjvu -format=tiff -quality=90 -page=1 -size="${DEFAULT_SIZE}" \ ddjvu -format=tiff -quality=90 -page=1 -size="${DEFAULT_SIZE}" \
- "${IMAGE_CACHE_PATH}" < "${FILE_PATH}" \ - "${IMAGE_CACHE_PATH}" < "${FILE_PATH}" \
@ -149,16 +166,24 @@ handle_image() {
convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6 convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6
fi fi
## `w3mimgdisplay` will be called for all images (unless overriden ## `w3mimgdisplay` will be called for all images (unless overridden
## as above), but might fail for unsupported types. ## as above), but might fail for unsupported types.
exit 7;; exit 7;;
# Video ## Video
video/*) video/*)
# Thumbnail # Get embedded thumbnail
ffmpeg -i "${FILE_PATH}" -map 0:v -map -0:V -c copy "${IMAGE_CACHE_PATH}" && exit 6
# Get frame 10% into video
ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6 ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6
exit 1;; exit 1;;
## Audio
audio/*)
# Get embedded thumbnail
ffmpeg -i "${FILE_PATH}" -map 0:v -map -0:V -c copy \
"${IMAGE_CACHE_PATH}" && exit 6;;
## PDF ## PDF
application/pdf) application/pdf)
pdftoppm -f 1 -l 1 \ pdftoppm -f 1 -l 1 \
@ -170,7 +195,7 @@ handle_image() {
&& exit 6 || exit 1;; && exit 6 || exit 1;;
# ePub, MOBI, FB2 (using Calibre) ## ePub, MOBI, FB2 (using Calibre)
application/epub+zip|application/x-mobipocket-ebook|\ application/epub+zip|application/x-mobipocket-ebook|\
application/x-fictionbook+xml) application/x-fictionbook+xml)
# ePub (using https://github.com/marianosimone/epub-thumbnailer) # ePub (using https://github.com/marianosimone/epub-thumbnailer)
@ -218,7 +243,8 @@ handle_image() {
# { [ "$rar" ] && fn=$(unrar lb -p- -- "${FILE_PATH}"); } || \ # { [ "$rar" ] && fn=$(unrar lb -p- -- "${FILE_PATH}"); } || \
# { [ "$zip" ] && fn=$(zipinfo -1 -- "${FILE_PATH}"); } || return # { [ "$zip" ] && fn=$(zipinfo -1 -- "${FILE_PATH}"); } || return
# #
# fn=$(echo "$fn" | python -c "import sys; import mimetypes as m; \ # fn=$(echo "$fn" | python -c "from __future__ import print_function; \
# import sys; import mimetypes as m; \
# [ print(l, end='') for l in sys.stdin if \ # [ print(l, end='') for l in sys.stdin if \
# (m.guess_type(l[:-1])[0] or '').startswith('image/') ]" |\ # (m.guess_type(l[:-1])[0] or '').startswith('image/') ]" |\
# sort -V | head -n 1) # sort -V | head -n 1)
@ -248,17 +274,21 @@ handle_image() {
} }
case "${FILE_EXTENSION_LOWER}" in case "${FILE_EXTENSION_LOWER}" in
## 3D models ## 3D models
## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH} ## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH}
## is hardcoded as jpeg. So we make a tempfile.png and just ## is hardcoded as jpeg. So we make a tempfile.png and just
## move/rename it to jpg. This works because image libraries are ## move/rename it to jpg. This works because image libraries are
## smart enough to handle it. ## smart enough to handle it.
csg|scad) csg|scad)
openscad_image "${FILE_PATH}" && exit 6 openscad_image "${FILE_PATH}" && exit 6
;; ;;
3mf|amf|dxf|off|stl) 3mf|amf|dxf|off|stl)
openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6 openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6
;; ;;
drawio)
draw.io -x "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" \
--width "${DEFAULT_SIZE%x*}" && exit 6
exit 1;;
esac esac
} }
@ -276,12 +306,17 @@ handle_mime() {
## DOCX, ePub, FB2 (using markdown) ## DOCX, ePub, FB2 (using markdown)
## You might want to remove "|epub" and/or "|fb2" below if you have ## You might want to remove "|epub" and/or "|fb2" below if you have
## uncommented other methods to preview those formats ## uncommented other methods to preview those formats
# *wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml) *wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml)
*wordprocessingml.document)
## Preview as markdown conversion ## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;; exit 1;;
## E-mails
message/rfc822)
## Parsing performed by mu: https://github.com/djcb/mu
mu view -- "${FILE_PATH}" && exit 5
exit 1;;
## XLS ## XLS
*ms-excel) *ms-excel)
## Preview as csv conversion ## Preview as csv conversion
@ -290,6 +325,93 @@ handle_mime() {
xls2csv -- "${FILE_PATH}" && exit 5 xls2csv -- "${FILE_PATH}" && exit 5
exit 1;; exit 1;;
## SQLite
*sqlite3)
## Preview as text conversion
sqlite_tables="$( sqlite3 "file:${FILE_PATH}?mode=ro" '.tables' )" \
|| exit 1
[ -z "${sqlite_tables}" ] &&
{ echo "Empty SQLite database." && exit 5; }
sqlite_show_query() {
sqlite-utils query "${FILE_PATH}" "${1}" --table --fmt fancy_grid \
|| sqlite3 "file:${FILE_PATH}?mode=ro" "${1}" -header -column
}
## Display basic table information
sqlite_rowcount_query="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
'SELECT group_concat(
"SELECT """ || name || """ AS tblname,
count(*) AS rowcount
FROM " || name,
" UNION ALL "
)
FROM sqlite_master
WHERE type="table" AND name NOT LIKE "sqlite_%";'
)"
sqlite_show_query \
"SELECT tblname AS 'table', rowcount AS 'count',
(
SELECT '(' || group_concat(name, ', ') || ')'
FROM pragma_table_info(tblname)
) AS 'columns',
(
SELECT '(' || group_concat(
upper(type) || (
CASE WHEN pk > 0 THEN ' PRIMARY KEY' ELSE '' END
),
', '
) || ')'
FROM pragma_table_info(tblname)
) AS 'types'
FROM (${sqlite_rowcount_query});"
if [ "${SQLITE_TABLE_LIMIT}" -gt 0 ] &&
[ "${SQLITE_ROW_LIMIT}" -ge 0 ]; then
## Do exhaustive preview
echo && printf '>%.0s' $( seq "${PV_WIDTH}" ) && echo
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT name FROM sqlite_master
WHERE type='table' AND name NOT LIKE 'sqlite_%'
LIMIT ${SQLITE_TABLE_LIMIT};" |
while read -r sqlite_table; do
sqlite_rowcount="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT count(*) FROM ${sqlite_table}"
)"
echo
if [ "${SQLITE_ROW_LIMIT}" -gt 0 ] &&
[ "${SQLITE_ROW_LIMIT}" \
-lt "${sqlite_rowcount}" ]; then
echo "${sqlite_table} [${SQLITE_ROW_LIMIT} of ${sqlite_rowcount}]:"
sqlite_ellipsis_query="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT 'SELECT ' || group_concat(
'''...''', ', '
)
FROM pragma_table_info(
'${sqlite_table}'
);"
)"
sqlite_show_query \
"SELECT * FROM (
SELECT * FROM ${sqlite_table} LIMIT 1
)
UNION ALL ${sqlite_ellipsis_query} UNION ALL
SELECT * FROM (
SELECT * FROM ${sqlite_table}
LIMIT (${SQLITE_ROW_LIMIT} - 1)
OFFSET (
${sqlite_rowcount}
- (${SQLITE_ROW_LIMIT} - 1)
)
);"
else
echo "${sqlite_table} [${sqlite_rowcount}]:"
sqlite_show_query "SELECT * FROM ${sqlite_table};"
fi
done
fi
exit 5;;
## Text ## Text
text/* | */xml) text/* | */xml)
## Syntax highlight ## Syntax highlight
@ -306,7 +428,7 @@ handle_mime() {
env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \ env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \
--out-format="${highlight_format}" \ --out-format="${highlight_format}" \
--force -- "${FILE_PATH}" && exit 5 --force -- "${FILE_PATH}" && exit 5
env COLORTERM=8bit bat --color=always --style="plain" \ env COLORTERM=8bit bat --color=always --style="${BAT_STYLE}" \
-- "${FILE_PATH}" && exit 5 -- "${FILE_PATH}" && exit 5
pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\ pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\
-- "${FILE_PATH}" && exit 5 -- "${FILE_PATH}" && exit 5
@ -331,12 +453,16 @@ handle_mime() {
mediainfo "${FILE_PATH}" && exit 5 mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5 exiftool "${FILE_PATH}" && exit 5
exit 1;; exit 1;;
## ELF files (executables and shared objects)
application/x-executable | application/x-pie-executable | application/x-sharedlib)
readelf -WCa "${FILE_PATH}" && exit 5
exit 1;;
esac esac
} }
handle_fallback() { handle_fallback() {
echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5 echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
exit 1
} }
@ -348,4 +474,4 @@ handle_extension
handle_mime "${MIMETYPE}" handle_mime "${MIMETYPE}"
handle_fallback handle_fallback
exit 1 exit 1

View file

@ -7,5 +7,9 @@
enableFishIntegration = true; enableFishIntegration = true;
enableZshIntegration = true; enableZshIntegration = true;
}; };
settings = {
window_padding_width = 5;
};
}; };
} }

View file

@ -39,9 +39,14 @@
}; };
# Environment variables that will be set for zsh session. # Environment variables that will be set for zsh session.
sessionVariables = { # sessionVariables = {
HISTORY_SUBSTRING_SEARCH_FUZZY = true; # HISTORY_SUBSTRING_SEARCH_FUZZY = true; # Нечёткий поиск для стрелок вверх/вниз. Не работает
}; # };
# Extra commands that should be added to .zshrc
# initExtra = ''
# ssh-add ~/.ssh/id_ed25519
# '';
historySubstringSearch.enable = true; # Чтоб вверх/вниз учитывал уже написанную команду historySubstringSearch.enable = true; # Чтоб вверх/вниз учитывал уже написанную команду
@ -50,7 +55,7 @@
plugins = [ # Комментирую то, в надобности чего не уверен, но показалось интересным. Можно удалить plugins = [ # Комментирую то, в надобности чего не уверен, но показалось интересным. Можно удалить
# "alias-finder" # Напомнит, если у написанной команды есть алиас (нет, так что заменил пакетом) # "alias-finder" # Напомнит, если у написанной команды есть алиас (нет, так что заменил пакетом)
"aliases" # "als" в терминале покажет все алиасы (нет). Можно добавить слово для фильтрации "aliases" # "als" в терминале покажет все алиасы (нет). Можно добавить слово для фильтрации
"autoenv" # If a directory contains an .env file, it will automatically be executed when you cd into it # "autoenv" # If a directory contains an .env file, it will automatically be executed when you cd into it (нет)
"bgnotify" # Оповещения для долгих комманд. Make sure you have "notify-send" or "kdialog" installed "bgnotify" # Оповещения для долгих комманд. Make sure you have "notify-send" or "kdialog" installed
"colored-man-pages" # Adds colors to man pages "colored-man-pages" # Adds colors to man pages
#"command-not-found" # Скажет какой пакет скачать, если команда не найдена #"command-not-found" # Скажет какой пакет скачать, если команда не найдена
@ -91,7 +96,7 @@
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
zsh-autoenv # Для плагина autoenv в oh-my-zsh zsh-autoenv # Плагина autoenv в oh-my-zsh не работает. Мб этот заработает
zsh-you-should-use # Напомнит, если у написанной команды есть алиас zsh-you-should-use # Напомнит, если у написанной команды есть алиас
# zsh-nix-shell # zsh plugin that lets you use zsh in nix-shell shell # zsh-nix-shell # zsh plugin that lets you use zsh in nix-shell shell
]; ];

View file

@ -45,7 +45,7 @@ Copy of `man bspc`
## Узнать имя и класс окна ## Узнать имя и класс окна
Чтобы узнать имя окна, пишем в терминал `xprop` и кликаем по нужному окну. Команда xprop выведет много информации о выбранном окне. . Ищите строки, содержащие `WM_CLASS` и `WM_NAME`. Или просто используем grep: Чтобы узнать имя окна, пишем в терминал `xprop` и кликаем по нужному окну. Команда xprop выведет много информации о выбранном окне. Ищите строки, содержащие `WM_CLASS` и `WM_NAME`. Или просто используем grep:
```sh ```sh
xprop | grep -E 'WM_CLASS|WM_NAME' xprop | grep -E 'WM_CLASS|WM_NAME'
``` ```

View file

@ -50,6 +50,10 @@
"polybar" = { layer = "above"; }; "polybar" = { layer = "above"; };
"Screenkey" = { manage = false; }; "Screenkey" = { manage = false; };
"gcolor3" = { state = "floating"; }; "gcolor3" = { state = "floating"; };
"steam" = { state = "floating"; };
"steam:steamwebhelper:Steam" = { state = "tiled"; };
"SshAskpass" = { state = "floating"; };
"Nm-connection-editor" = { state = "floating"; };
"ksnip" = floating1600x900; "ksnip" = floating1600x900;
"ark" = floating1200x800; "ark" = floating1200x800;
"nekoray" = floating1200x800; "nekoray" = floating1200x800;
@ -58,19 +62,18 @@
"qt5ct" = floating1200x800; "qt5ct" = floating1200x800;
"qt6ct" = floating1200x800; "qt6ct" = floating1200x800;
"pavucontrol" = floating900x600; "pavucontrol" = floating900x600;
"nm-connection-editor" = floating900x600;
# blueman-манагер надо флоатинг # blueman-манагер надо флоатинг
}; };
settings = { settings = {
# Цвет бордера для не активного окна # Цвет бордера для не активного окна
normal_border_color = lib.mkForce "#${config.lib.stylix.colors.base0B}"; normal_border_color = lib.mkForce "#${config.lib.stylix.colors.base0B}"; # #b8bb26
# Цвет бордера для фокусед окна на анфокусед мониторе (считаей не активное окно) # Цвет бордера для фокусед окна на анфокусед мониторе (считаей не активное окно)
active_border_color = lib.mkForce "#${config.lib.stylix.colors.base0B}"; active_border_color = lib.mkForce "#${config.lib.stylix.colors.base0B}"; # #b8bb26
# Цвет бордера для окна в фокусе # Цвет бордера для окна в фокусе
focused_border_color = lib.mkForce "#${config.lib.stylix.colors.base09}"; focused_border_color = lib.mkForce "#${config.lib.stylix.colors.base09}"; # #fe8019
# Устанавливает ширину границ окон в 2 пикселя. # Устанавливает ширину границ окон в 2 пикселя.
border_width = 2; border_width = 2;

View file

@ -77,7 +77,7 @@ in {
## rofi ## ## rofi ##
########## ##########
"super + a" = "rofi -show drun"; # Applications. Запускатор софта "super + a" = "rofi -show drun -show-icons"; # Applications. Запускатор софта
"super + c" = "rofi -show calc -modi calc -no-show-match -no-sort"; # Calculator имбовый. Можно даже написать `5600 USD to BTC` или `500 + 25%`. "super + c" = "rofi -show calc -modi calc -no-show-match -no-sort"; # Calculator имбовый. Можно даже написать `5600 USD to BTC` или `500 + 25%`.
"super + p" = "rofi-pass"; # Passwords. Пароли из утилиты pass "super + p" = "rofi-pass"; # Passwords. Пароли из утилиты pass
"super + v" = "clipmenu"; # История буфера обмена. Как ctrl+v, но через win. "super + v" = "clipmenu"; # История буфера обмена. Как ctrl+v, но через win.

View file

@ -66,7 +66,6 @@
################################################## ##################################################
## Хули блять у всех работают темы для qt ## ## Хули блять у всех работают темы для qt ##
## Один я далбаёб проебал 3 дня ## ## Один я далбаёб проебал 3 дня ##
## И нихуя не настроил блять ##
## Прочитал весь код ебаного stylix ## ## Прочитал весь код ебаного stylix ##
## И нихуя не работает блять ## ## И нихуя не работает блять ##
## Так что поставлю руками грувбокс через qtct ## ## Так что поставлю руками грувбокс через qtct ##

View file

@ -14,21 +14,24 @@ in {
./packages.nix ./packages.nix
]; ];
boot.kernelPackages = pkgs.linuxPackages_latest; # Ядро линуха, ласт версия boot = {
# boot.plymouth.enable = true; # Логотип загрузки вместо спама? kernelPackages = pkgs.linuxPackages_latest; # Ядро линуха, ласт версия
boot.loader = { loader = {
# systemd-boot.enable = true; # systemd-boot.enable = true;
grub = { grub = {
enable = true; enable = true;
efiSupport = true; efiSupport = true;
device = "nodev"; # nodev позволяет не устанавливать grub в конкретное место, но видеть его ui device = "nodev"; # nodev позволяет не устанавливать grub в конкретное место, но видеть его ui
};
efi.canTouchEfiVariables = true;
# kernelParams = [ # https://nixos.wiki/wiki/AMD_GPU#Dual_Monitors
# "video=DP-3:1920x1080@165"
# "video=HDMI-A-1:1920x1080@75"
# ];
}; };
efi.canTouchEfiVariables = true;
# kernelParams = [ # https://nixos.wiki/wiki/AMD_GPU#Dual_Monitors
# "video=DP-3:1920x1080@165"
# "video=HDMI-A-1:1920x1080@75"
# ];
}; };
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.

View file

@ -6,6 +6,7 @@
noto-fonts-cjk-serif # Отображение иероглифов. Версия с засечками noto-fonts-cjk-serif # Отображение иероглифов. Версия с засечками
noto-fonts-cjk-sans # Отображение иероглифов. Версия без засечек noto-fonts-cjk-sans # Отображение иероглифов. Версия без засечек
noto-fonts-color-emoji noto-fonts-color-emoji
noto-fonts-monochrome-emoji
(nerdfonts.override {fonts = ["JetBrainsMono" "Noto" "CascadiaCode"];}) (nerdfonts.override {fonts = ["JetBrainsMono" "Noto" "CascadiaCode"];})
carlito # Совместим с Calibri, разработан как его свободная альтернатива. Без засечек carlito # Совместим с Calibri, разработан как его свободная альтернатива. Без засечек
terminus_font terminus_font
@ -307,19 +308,18 @@
helix # A Kakoune / Neovim inspired editor, written in Rust. helix # A Kakoune / Neovim inspired editor, written in Rust.
########### ###########
## Other ## ## Icons ##
########### ###########
qmk # Прошивка для моих раздельных клавиатур adwaita-icon-theme
vial # GUI для qmk, если клавиатура поддерживает libsForQt5.breeze-icons # qt5
fontconfig kdePackages.breeze-icons # qt6
zlib papirus-icon-theme
google-fonts
libva-utils # Проверяет работоспособность VAAPI? ############
clinfo # Проверяет работоспособность OpenCL? ## Vulkan ##
libcap # Мб надо для nekoray ############
# Vulkan?
gfxreconstruct gfxreconstruct
glslang glslang
spirv-cross spirv-cross
@ -339,6 +339,19 @@
vkd3d-proton vkd3d-proton
# vkbasalt # Баф Vulkan для улучшения визуальной графики игр https://github.com/DadSchoorse/vkBasalt # vkbasalt # Баф Vulkan для улучшения визуальной графики игр https://github.com/DadSchoorse/vkBasalt
###########
## Other ##
###########
qmk # Прошивка для моих раздельных клавиатур
vial # GUI для qmk, если клавиатура поддерживает
fontconfig
zlib
google-fonts
libva-utils # Проверяет работоспособность VAAPI?
clinfo # Проверяет работоспособность OpenCL?
libcap # Мб надо для nekoray
# lxqt.lxqt-policykit # Меню для воода пароля при запуске с правами админа. Пока юзаю от гнома # lxqt.lxqt-policykit # Меню для воода пароля при запуске с правами админа. Пока юзаю от гнома
]; ];
} }