Все Новый

user:thomas фрагментов создано пользователем

title:mygist фрагментов с указанным заголовком

description:sync gists with given description

filename:myfile.txt фрагменты содержащие файлы с указанным именем

extension:yml фрагменты, содержащие файлы с указанным расширением

language:go фрагменты, содержащие файлы с указанным языком

topic:homelab фрагменты с заданной темой

all:systemctl search all fields

Регистрация

Войти

Все Новый Регистрация Войти

Все фрагменты

Свежие сверху по дате создания
Свежие снизу по дате создания
Свежие сверху по дате обновления
Свежие снизу по дате обновления

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 {
2 "wgctl_version": "unknown",
3 "export_type": "peer",
4 "exported_at": "2026-05-27T03:47:24Z",
5 "data": {
6 "name": "phone-nuno",
7 "ip": "10.1.3.1",
8 "type": "",
9 "public_key": "Fo5Y80l5Woh/kqzApU0OeVqaNJUUa17ojG6XH4USnVQ=",
10 "conf": "...",

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:5:function ui::subnet::header() {
2 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:11:function ui::policy::list_row() {
3 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:32:function ui::policy::detail_field() {
4 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:38:function ui::subnet::row() {
5 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:47:function ui::subnet::row_scalar() {
6 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:55:function ui::subnet::row_group_parent() {
7 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:60:function ui::subnet::row_group_child() {
8 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:68:function ui::subnet::group_separator() {
9 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:72:function ui::subnet::detail() {
10 /etc/wireguard/wgctl/modules/ui/subnet.module.sh:78:function ui::subnet::detail_field() {

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 function ui::peer::status_color() {
2 echo "\033[2;31m" # dim red — blocked offline
3 echo "\033[2;33m" # dim yellow — restricted offline
4 echo "\033[2m" # dim gray — plain offline
5 local status_color
6 status_color=$(ui::peer::status_color "$is_blocked" "$is_restricted" "$status")
7 # Colored row — entire row in row_color, status uses status_color
8 "$status_color" "$status_pad" \
9 "$status_color" "$ts_pad"
10 "$status_color" "$status_pad" \

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 108: local last_seen
2 109: last_seen=$(peers::format_last_seen "$name" "$public_key" \
3 127: ui::row "Last seen" "$last_seen"
4 297: local last_seen="-"
5 301: last_seen="$(fmt::datetime_short "$attempt_ts") (dropped)"
6 306: last_seen="${ts_display} (handshake)"
7 308: last_seen="$ts_display"
8 315: "$status" "$last_seen" \
9 335: while IFS='|' read -r name ip type rule group status last_seen is_blocked is_restricted; do
10 337: ui::peer::list_row_compact \

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 72: group="${5:-}" status="${6:-}" last_seen="${7:-}" \
2 84: local name_pad ip_pad type_pad ts_pad status_pad
3 88: ts_pad=$(printf "%-11s" "$last_seen")
4 105: "$status_color" "$ts_pad"
5 107: # Normal online row — white fields, colored status/last_seen
6 113: "$status_color" "$ts_pad"
7 147: group="${5:-}" status="${6:-}" last_seen="${7:-}"
8 155: "$padded_status" "$last_seen"
9 159: "$padded_status" "$last_seen"
10 177: group="${5:-}" subnet="${6:-}" status="${7:-}" last_seen="${8:-}" \

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 "$row_color" \
2 "$name_pad" "$ip_pad" "$type_pad" \
3 "$row_color" "$rule_val" "$rule_pad_n" "" \
4 "$row_color" "$group_val" "$group_pad_n" "" \
5 "$status_color" "$status_pad" \
6 "$status_color" "$ts_pad"
7 else
8 # Normal online row — white fields, colored status/last_seen
9 printf " %s %s %s \033[2mrule:\033[0m %s%*s \033[2mgroup:\033[0m %s%*s %b%s\033[0m %b%s\033[0m\n" \
10 "$name_pad" "$ip_pad" "$type_pad" \

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 22: local is_blocked="${1:-false}" is_restricted="${2:-false}" status="${3:-}"
2 23: if [[ "$is_blocked" == "true" && "$status" == "online"* ]]; then
3 24: echo "\033[1;31m"
4 25: elif [[ "$is_blocked" == "true" ]]; then
5 39:function ui::peer::_row_color() {
6 40: local is_blocked="${1:-false}" is_restricted="${2:-false}" status="${3:-}"
7 45: if [[ "$is_blocked" == "true" ]]; then
8 53: if [[ "$is_blocked" == "true" ]]; then
9 54: echo "\033[1;31m" # bold red — blocked active
10 67:function ui::peer::list_row_compact() {

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 function peers::format_status() {
2 local name="${1:-}" public_key="${2:-}" is_blocked="${3:-false}"
3 local is_restricted="${4:-false}" handshake_ts="${5:-0}" last_ts="${6:-}"
4
5 local state
6 state=$(peers::connection_state "$is_blocked" "$is_restricted" \
7 "$handshake_ts" "$last_ts")
8
9 local conn_str modifier color
10 IFS="|" read -r conn_str modifier color <<< "$state"

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 /etc/wireguard/wgctl/modules/ui/activity.module.sh:32:function ui::activity::header_table() {
2 /etc/wireguard/wgctl/modules/ui/activity.module.sh:37:function ui::activity::peer_row_table() {
3 /etc/wireguard/wgctl/modules/ui/activity.module.sh:44:function ui::activity::service_row_table() {
4 /etc/wireguard/wgctl/modules/ui/group.module.sh:52:function ui::group::list_header_table() {
5 /etc/wireguard/wgctl/modules/ui/group.module.sh:57:function ui::group::list_row_table() {
6 /etc/wireguard/wgctl/modules/ui/group.module.sh:101:function ui::group::show_header_table() {
7 /etc/wireguard/wgctl/modules/ui/group.module.sh:106:function ui::group::show_member_row_table() {
8 /etc/wireguard/wgctl/modules/ui/hosts.module.sh:34:function ui::hosts::list_row_table() {
9 /etc/wireguard/wgctl/modules/ui/hosts.module.sh:40:function ui::hosts::list_header_table() {
10 /etc/wireguard/wgctl/modules/ui/identity.module.sh:67:function ui::identity::list_row_table() {

nuno / gistfile1.txt

0 лайк(-ов)
0 форк(-ов)
1 файл(-ов)
Последняя активность 1 month ago
1 Default labels — which fields should show labels by default? My lean: rule, group, subnet (not obvious from value alone). Not status (color-coded), not ip (obvious), not name (always first).
2 Where does it live? — modules/display.module.sh loaded in wgctl alongside others, or core/display.sh always available? I'd say module since it's optional functionality.
Новее Позже

Работает на Opengist ⋅ Load: 139ms⋅

Русский
Čeština Deutsch English Español Français Magyar Italiano 日本語 Polski Português Русский Türkçe Українська 中文 繁體中文
⋅ KrilHub