new: implement --version option

This commit is contained in:
ngn 2024-08-15 04:34:14 +03:00
parent 22364da8be
commit d0013946f4
3 changed files with 40 additions and 19 deletions

View File

@ -5,14 +5,19 @@ PO_SRCS = $(wildcard locale/*/*/*.po)
PO_OUTS = $(patsubst locale/%.po,locale/%.mo,$(PO_SRCS)) PO_OUTS = $(patsubst locale/%.po,locale/%.mo,$(PO_SRCS))
PO_DIRS = $(wildcard locale/*/*) PO_DIRS = $(wildcard locale/*/*)
CFLAGS = -fstack-protector-strong -fcf-protection=full -fstack-clash-protection
LIBS = -lncurses -lmenu -lm
prefix = /usr prefix = /usr
CC = gcc CC = gcc
VERSION = 24.08
all: dist/xcfg $(PO_OUTS) all: dist/xcfg $(PO_OUTS)
dist/xcfg: $(CSRCS) $(HEADERS) dist/xcfg: $(CSRCS) $(HEADERS)
mkdir -p dist mkdir -p dist
$(CC) $(CFLAGS) $(CSRCS) -o $@ -lncurses -lmenu -lm $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" $(CSRCS) -o $@ $(LIBS)
locale/%.mo: locale/%.po locale/%.mo: locale/%.po
msgfmt $^ -o $@ msgfmt $^ -o $@

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-08-15 04:16+0300\n" "POT-Creation-Date: 2024-08-15 04:33+0300\n"
"PO-Revision-Date: 2024-02-20 20:36+0300\n" "PO-Revision-Date: 2024-02-20 20:36+0300\n"
"Last-Translator: <ngn@ngn.tf>\n" "Last-Translator: <ngn@ngn.tf>\n"
"Language-Team: Turkish <gnome-turk@gnome.org>\n" "Language-Team: Turkish <gnome-turk@gnome.org>\n"
@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: src/main.c:49 src/main.c:183 #: src/main.c:49 src/main.c:189
#, fuzzy #, fuzzy
msgid "Failed to get the home directory" msgid "Failed to get the home directory"
msgstr "Ev dizini bulmak başarısız oldu" msgstr "Ev dizini bulmak başarısız oldu"
@ -32,60 +32,70 @@ msgstr "%s dosyasını okumak için açmak başarısız oldu"
msgid "Failed to open %s for writing" msgid "Failed to open %s for writing"
msgstr "%s dosyasını yazmak için açmak başarısız oldu" msgstr "%s dosyasını yazmak için açmak başarısız oldu"
#: src/main.c:100 src/main.c:189 #: src/main.c:100 src/main.c:195
#, c-format #, c-format
msgid "Failed to write to %s" msgid "Failed to write to %s"
msgstr "%s dosyasına yazmak başarısız oldu" msgstr "%s dosyasına yazmak başarısız oldu"
#: src/main.c:112 #: src/main.c:116
msgid "You should use this script as a regular user, not as root!" msgid "You should use this script as a regular user, not as root!"
msgstr "" msgstr ""
"Bu betiği normal bir kullanıcı olarak kullanmalısınız, kök kullanıcı olarak " "Bu betiği normal bir kullanıcı olarak kullanmalısınız, kök kullanıcı olarak "
"değil!" "değil!"
#: src/main.c:123 #: src/main.c:121
#, c-format
msgid "Simple xorg configuration tool %s"
msgstr ""
#: src/main.c:122
msgid ""
"Licensed under GPLv3, see https://www.gnu.org/licenses/ for more information"
msgstr ""
#: src/main.c:129
msgid "Lightweight desktop environment for UNIX-like operating systems" msgid "Lightweight desktop environment for UNIX-like operating systems"
msgstr "UNIX-gibi işletim sistemleri için hafif bir masaütü" msgstr "UNIX-gibi işletim sistemleri için hafif bir masaütü"
#: src/main.c:130 #: src/main.c:136
msgid "Free desktop environment with comparatively low resource requirements" msgid "Free desktop environment with comparatively low resource requirements"
msgstr "Nispeten düşük sistem gereksinimleri olan özgür bir masaüstü ortamı" msgstr "Nispeten düşük sistem gereksinimleri olan özgür bir masaüstü ortamı"
#: src/main.c:136 #: src/main.c:142
msgid "Tiling window manager based on binary space partitioning" msgid "Tiling window manager based on binary space partitioning"
msgstr "İkili alan bölme tabanlı döşeme pencere yöneticisi" msgstr "İkili alan bölme tabanlı döşeme pencere yöneticisi"
#: src/main.c:139 #: src/main.c:145
msgid "Improved tiling window manager" msgid "Improved tiling window manager"
msgstr "Geliştirilmiş döşeme pencere yöneticisi" msgstr "Geliştirilmiş döşeme pencere yöneticisi"
#: src/main.c:144 #: src/main.c:150
#, fuzzy #, fuzzy
msgid "matt is not installed!" msgid "matt is not installed!"
msgstr "mp kurulu değil" msgstr "mp kurulu değil"
#: src/main.c:153 #: src/main.c:159
msgid "Install doas or sudo to use this script" msgid "Install doas or sudo to use this script"
msgstr "Bu betiği kullanmak için doas ya da sudo kurun" msgstr "Bu betiği kullanmak için doas ya da sudo kurun"
#: src/main.c:168 #: src/main.c:174
msgid "Choose a desktop enviroment" msgid "Choose a desktop enviroment"
msgstr "Bir masaüstü ortamı seçin" msgstr "Bir masaüstü ortamı seçin"
#: src/main.c:174 #: src/main.c:180
msgid "Add auto-startx to shell configuration?" msgid "Add auto-startx to shell configuration?"
msgstr "Otomatik-startx kabuk konfigürasyonu ekle?" msgstr "Otomatik-startx kabuk konfigürasyonu ekle?"
#: src/main.c:195 #: src/main.c:201
msgid "Configuration has been saved!" msgid "Configuration has been saved!"
msgstr "Konfigürasyon kaydedildi!" msgstr "Konfigürasyon kaydedildi!"
#: src/main.c:197 #: src/main.c:203
#, fuzzy, c-format #, fuzzy, c-format
msgid "Installing %s" msgid "Installing %s"
msgstr "%s kuruluyor" msgstr "%s kuruluyor"
#: src/main.c:201 #: src/main.c:207
#, fuzzy #, fuzzy
msgid "Installation failed" msgid "Installation failed"
msgstr "Kurulum başarısız oldu" msgstr "Kurulum başarısız oldu"

View File

@ -108,14 +108,20 @@ END:
} }
int main(int argc, char **argv, char **envp) { int main(int argc, char **argv, char **envp) {
signal(SIGINT, SIG_IGN);
setlocale(LC_ALL, "");
textdomain("xcfg");
if (getuid() == 0) { if (getuid() == 0) {
error(_("You should use this script as a regular user, not as root!")); error(_("You should use this script as a regular user, not as root!"));
return EXIT_FAILURE; return EXIT_FAILURE;
} }
signal(SIGINT, SIG_IGN); if (argc >= 2 && strcmp(argv[1], "--version") == 0) {
setlocale(LC_ALL, ""); success(_("Simple xorg configuration tool %s"), VERSION);
textdomain("xcfg"); info(_("Licensed under GPLv3, see https://www.gnu.org/licenses/ for more information"));
return EXIT_SUCCESS;
}
struct Desktop desktops[] = { struct Desktop desktops[] = {
{ {