Лично убедитесь (следующий сценарий отображает текущее "состояние времени" в псевдореальное время при входе внезапных изменений в значении),
#!/bin/sh
set -eu
get_time() {
local line="$1"
timedatectl \
| sed -nE $line'p' \
| sed -E 's/.* ([0-9]+):([0-9]+):([0-9]+).*/\1\2\3/'
}
get_time_status() {
adjtimex --print \
| grep -F status \
| awk '{print "obase=2;" $2}' \
| bc
}
num_diff() {
local a="$1" b="$2"
echo "ah = ${a:0:2}; am = ${a:2:2}; as = ${a:4:2}
bh = ${b:0:2}; bm = ${b:2:2}; bs = ${b:4:2}
a = ah * 60 * 60 + am * 60 + as
b = bh * 60 * 60 + bm * 60 + bs
if (a > b) a - b else b - a" | bc
}
print_line() {
local f1="$1" f2="$2"
printf "%20s %-$(($(tput cols) - 21))s\n" "$f1" "$f2"
}
localt=
universalt=
rtct=
ntp_enabled=
ntp_synchronized=
time_status=
localt_prv="$(get_time 1)"
universalt_prv="$(get_time 2)"
rtct_prv="$(get_time 3)"
ntp_enabled_prv="$(timedatectl | grep -E 'NTP enabled' | awk '{print $3}')"
ntp_synchronized_prv="$(timedatectl | grep -E 'NTP synchronized' | awk '{print $3}')"
time_status_prv="$(get_time_status)"
while true; do
localt="$(get_time 1)"
universalt="$(get_time 2)"
rtct="$(get_time 3)"
ntp_enabled="$(timedatectl | grep -E 'NTP enabled' | awk '{print $3}')"
ntp_synchronized="$(timedatectl | grep -E 'NTP synchronized' | awk '{print $3}')"
time_status="$(get_time_status)"
if [ "$(num_diff $localt $localt_prv)" -gt 5 ]; then
print_line "[$(date +%H:%M:%S)]" "localt: $localt_prv -> $localt"
fi
if [ "$(num_diff $universalt $universalt_prv)" -gt 5 ]; then
print_line "[$(date +%H:%M:%S)]" "universalt: $universalt_prv -> $universalt"
fi
if [ "$(num_diff $rtct $rtct_prv)" -gt 5 ]; then
print_line "[$(date +%H:%M:%S)]" "rtct: $rtct_prv -> $rtct"
fi
if [ "$ntp_enabled" != "$ntp_enabled_prv" ]; then
print_line "[$(date +%H:%M:%S)]" "ntp_enabled: $ntp_enabled_prv -> $ntp_enabled"
fi
if [ "$ntp_synchronized" != "$ntp_synchronized_prv" ]; then
print_line "[$(date +%H:%M:%S)]" "ntp_synchronized: $ntp_synchronized_prv -> $ntp_synchronized"
fi
if [ "$time_status" != "$time_status_prv" ]; then
print_line "[$(date +%H:%M:%S)]" "time_status: $time_status_prv -> $time_status"
fi
print_line local: "$localt"
print_line universal: "$universalt"
print_line rtc: "$rtct"
print_line 'NTP enabled:' "$ntp_enabled"
print_line 'NTP synchronized:' "$ntp_synchronized"
print_line 'time status:' "$time_status"
sleep 1
localt_prv="$localt"
universalt_prv="$universalt"
rtct_prv="$rtct"
ntp_enabled_prv="$ntp_enabled"
ntp_synchronized_prv="$ntp_synchronized"
time_status_prv="$time_status"
printf '\033[6A'
done
Найдите "естественную-hpadding" строку в (/usr/share/gnome-shell/theme/gnome-shell.css) и замените 12 пкс значением, которое Вы любите:
.panel-button {
-natural-hpadding: 5px;
-minimum-hpadding: 6px;
font-weight: bold;
color: #ccc;
transition-duration: 100ms;
}
Для получения дополнительной информации и подсказки видят: http://forums.linuxmint.com/viewtopic.php?f=42&t=86813 (разделяют 2 г),
В Ubuntu 18.04 (Gnome 3 )таблица стилей называется /usr/share/gnome-shell/theme/ubuntu.css
.
Как писал jpoppe, .panel-button
> natural-hpadding
необходимо скорректировать. Если пространство все еще слишком велико на ваш вкус, также уменьшитеminimum-hpadding
:
.panel-button {
-natural-hpadding: 12px; /* change HERE */
-minimum-hpadding: 6px; /* and here */
font-weight: bold;
color: #eee;
text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9);
transition-duration: 100ms;
}
Если вы не хотите перезагружаться, вы также можете перезагрузить тему только через
gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval 'Main.loadTheme();'
Редактировать:В Ubuntu 20.04 таблица стилей упакована в /usr/share/gnome-shell/gdm3-theme.gresource
.
Список файлов
gresource list /usr/share/gnome-shell/gdm3-theme.gresource
Извлечь файл
gresource extract /usr/share/gnome-shell/gdm3-theme.gresource /org/gnome/shell/theme/gdm3.css > gdm3.css
Хотя можно изменить файл и перекомпилировать его обратно в файл gresource
, вместо этого лучше создать дочернюю тему .
mkdir -p ~/.themes/NAME/gnome-shell
Создать манифестtheme.json
(необязательно):
{
"shell-theme": {
"name": "NAME",
"author": "AUTHOR",
"version": "0.0",
"type": "custom",
"url": "URL"
}
}
Создать стильgnome-shell.css
:
#panel {
font-size: 0.9em;
}
.panel-button {
-natural-hpadding: 4px;
-minimum-hpadding: 2px;
}
Он должен автоматически включать CSS по умолчанию. Если это не работает, попробуйте добавить в начало одну из следующих строк:
@import url("resource:///org/gnome/shell/theme/gdm3.css");
@import url("/usr/share/gnome-shell/theme/gdm3.css");
Выберите тему NAME
с помощьюgnome-tweak-tool
(Tweaks > Appearance > Shell)