Compare commits
No commits in common. "main" and "24.06" have entirely different histories.
225
.clang-format
225
.clang-format
@ -1,225 +0,0 @@
|
|||||||
---
|
|
||||||
Language: Cpp
|
|
||||||
# BasedOnStyle: LLVM
|
|
||||||
AccessModifierOffset: -2
|
|
||||||
AlignAfterOpenBracket: DontAlign
|
|
||||||
AlignArrayOfStructures: Left
|
|
||||||
AlignConsecutiveAssignments:
|
|
||||||
Enabled: true
|
|
||||||
AcrossEmptyLines: false
|
|
||||||
AcrossComments: false
|
|
||||||
AlignCompound: false
|
|
||||||
PadOperators: true
|
|
||||||
AlignConsecutiveBitFields:
|
|
||||||
Enabled: true
|
|
||||||
AcrossEmptyLines: false
|
|
||||||
AcrossComments: false
|
|
||||||
AlignCompound: false
|
|
||||||
PadOperators: false
|
|
||||||
AlignConsecutiveDeclarations:
|
|
||||||
Enabled: true
|
|
||||||
AcrossEmptyLines: false
|
|
||||||
AcrossComments: false
|
|
||||||
AlignCompound: false
|
|
||||||
PadOperators: false
|
|
||||||
AlignConsecutiveMacros:
|
|
||||||
Enabled: true
|
|
||||||
AcrossEmptyLines: false
|
|
||||||
AcrossComments: false
|
|
||||||
AlignCompound: false
|
|
||||||
PadOperators: false
|
|
||||||
AlignEscapedNewlines: Right
|
|
||||||
AlignOperands: Align
|
|
||||||
AlignTrailingComments:
|
|
||||||
Kind: Always
|
|
||||||
OverEmptyLines: 0
|
|
||||||
AllowAllArgumentsOnNextLine: true
|
|
||||||
AllowAllParametersOfDeclarationOnNextLine: true
|
|
||||||
AllowShortBlocksOnASingleLine: Never
|
|
||||||
AllowShortCaseLabelsOnASingleLine: false
|
|
||||||
AllowShortEnumsOnASingleLine: true
|
|
||||||
AllowShortFunctionsOnASingleLine: None
|
|
||||||
AllowShortIfStatementsOnASingleLine: Never
|
|
||||||
AllowShortLambdasOnASingleLine: All
|
|
||||||
AllowShortLoopsOnASingleLine: false
|
|
||||||
AlwaysBreakAfterDefinitionReturnType: None
|
|
||||||
AlwaysBreakAfterReturnType: None
|
|
||||||
AlwaysBreakBeforeMultilineStrings: false
|
|
||||||
AlwaysBreakTemplateDeclarations: MultiLine
|
|
||||||
AttributeMacros:
|
|
||||||
- __capability
|
|
||||||
BinPackArguments: false
|
|
||||||
BinPackParameters: true
|
|
||||||
BitFieldColonSpacing: Both
|
|
||||||
BraceWrapping:
|
|
||||||
AfterCaseLabel: false
|
|
||||||
AfterClass: false
|
|
||||||
AfterControlStatement: Never
|
|
||||||
AfterEnum: false
|
|
||||||
AfterExternBlock: false
|
|
||||||
AfterFunction: false
|
|
||||||
AfterNamespace: false
|
|
||||||
AfterObjCDeclaration: false
|
|
||||||
AfterStruct: false
|
|
||||||
AfterUnion: false
|
|
||||||
BeforeCatch: false
|
|
||||||
BeforeElse: false
|
|
||||||
BeforeLambdaBody: false
|
|
||||||
BeforeWhile: false
|
|
||||||
IndentBraces: false
|
|
||||||
SplitEmptyFunction: true
|
|
||||||
SplitEmptyRecord: true
|
|
||||||
SplitEmptyNamespace: true
|
|
||||||
BreakAfterAttributes: Never
|
|
||||||
BreakAfterJavaFieldAnnotations: false
|
|
||||||
BreakArrays: true
|
|
||||||
BreakBeforeBinaryOperators: None
|
|
||||||
BreakBeforeConceptDeclarations: Always
|
|
||||||
BreakBeforeBraces: Attach
|
|
||||||
BreakBeforeInlineASMColon: OnlyMultiline
|
|
||||||
BreakBeforeTernaryOperators: true
|
|
||||||
BreakConstructorInitializers: BeforeColon
|
|
||||||
BreakInheritanceList: BeforeColon
|
|
||||||
BreakStringLiterals: true
|
|
||||||
ColumnLimit: 120
|
|
||||||
CommentPragmas: '^ IWYU pragma:'
|
|
||||||
CompactNamespaces: false
|
|
||||||
ConstructorInitializerIndentWidth: 4
|
|
||||||
ContinuationIndentWidth: 4
|
|
||||||
Cpp11BracedListStyle: true
|
|
||||||
DerivePointerAlignment: false
|
|
||||||
DisableFormat: false
|
|
||||||
EmptyLineAfterAccessModifier: Never
|
|
||||||
EmptyLineBeforeAccessModifier: LogicalBlock
|
|
||||||
ExperimentalAutoDetectBinPacking: false
|
|
||||||
FixNamespaceComments: true
|
|
||||||
ForEachMacros:
|
|
||||||
- foreach
|
|
||||||
- Q_FOREACH
|
|
||||||
- BOOST_FOREACH
|
|
||||||
IfMacros:
|
|
||||||
- KJ_IF_MAYBE
|
|
||||||
IncludeBlocks: Preserve
|
|
||||||
IncludeCategories:
|
|
||||||
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
|
|
||||||
Priority: 2
|
|
||||||
SortPriority: 0
|
|
||||||
CaseSensitive: false
|
|
||||||
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
|
|
||||||
Priority: 3
|
|
||||||
SortPriority: 0
|
|
||||||
CaseSensitive: false
|
|
||||||
- Regex: '.*'
|
|
||||||
Priority: 1
|
|
||||||
SortPriority: 0
|
|
||||||
CaseSensitive: false
|
|
||||||
IncludeIsMainRegex: '(Test)?$'
|
|
||||||
IncludeIsMainSourceRegex: ''
|
|
||||||
IndentAccessModifiers: false
|
|
||||||
IndentCaseBlocks: false
|
|
||||||
IndentCaseLabels: false
|
|
||||||
IndentExternBlock: AfterExternBlock
|
|
||||||
IndentGotoLabels: true
|
|
||||||
IndentPPDirectives: None
|
|
||||||
IndentRequiresClause: true
|
|
||||||
IndentWidth: 2
|
|
||||||
IndentWrappedFunctionNames: false
|
|
||||||
InsertBraces: false
|
|
||||||
InsertNewlineAtEOF: false
|
|
||||||
InsertTrailingCommas: None
|
|
||||||
IntegerLiteralSeparator:
|
|
||||||
Binary: 0
|
|
||||||
BinaryMinDigits: 0
|
|
||||||
Decimal: 0
|
|
||||||
DecimalMinDigits: 0
|
|
||||||
Hex: 0
|
|
||||||
HexMinDigits: 0
|
|
||||||
JavaScriptQuotes: Leave
|
|
||||||
JavaScriptWrapImports: true
|
|
||||||
KeepEmptyLinesAtTheStartOfBlocks: true
|
|
||||||
LambdaBodyIndentation: Signature
|
|
||||||
LineEnding: DeriveLF
|
|
||||||
MacroBlockBegin: ''
|
|
||||||
MacroBlockEnd: ''
|
|
||||||
MaxEmptyLinesToKeep: 1
|
|
||||||
NamespaceIndentation: None
|
|
||||||
ObjCBinPackProtocolList: Auto
|
|
||||||
ObjCBlockIndentWidth: 2
|
|
||||||
ObjCBreakBeforeNestedBlockParam: true
|
|
||||||
ObjCSpaceAfterProperty: false
|
|
||||||
ObjCSpaceBeforeProtocolList: true
|
|
||||||
PackConstructorInitializers: BinPack
|
|
||||||
PenaltyBreakAssignment: 2
|
|
||||||
PenaltyBreakBeforeFirstCallParameter: 19
|
|
||||||
PenaltyBreakComment: 300
|
|
||||||
PenaltyBreakFirstLessLess: 120
|
|
||||||
PenaltyBreakOpenParenthesis: 0
|
|
||||||
PenaltyBreakString: 1000
|
|
||||||
PenaltyBreakTemplateDeclaration: 10
|
|
||||||
PenaltyExcessCharacter: 1000000
|
|
||||||
PenaltyIndentedWhitespace: 0
|
|
||||||
PenaltyReturnTypeOnItsOwnLine: 60
|
|
||||||
PointerAlignment: Right
|
|
||||||
PPIndentWidth: -1
|
|
||||||
QualifierAlignment: Leave
|
|
||||||
ReferenceAlignment: Pointer
|
|
||||||
ReflowComments: true
|
|
||||||
RemoveBracesLLVM: false
|
|
||||||
RemoveSemicolon: false
|
|
||||||
RequiresClausePosition: OwnLine
|
|
||||||
RequiresExpressionIndentation: OuterScope
|
|
||||||
SeparateDefinitionBlocks: Leave
|
|
||||||
ShortNamespaceLines: 1
|
|
||||||
SortIncludes: CaseSensitive
|
|
||||||
SortJavaStaticImport: Before
|
|
||||||
SortUsingDeclarations: LexicographicNumeric
|
|
||||||
SpaceAfterCStyleCast: false
|
|
||||||
SpaceAfterLogicalNot: false
|
|
||||||
SpaceAfterTemplateKeyword: true
|
|
||||||
SpaceAroundPointerQualifiers: Default
|
|
||||||
SpaceBeforeAssignmentOperators: true
|
|
||||||
SpaceBeforeCaseColon: false
|
|
||||||
SpaceBeforeCpp11BracedList: false
|
|
||||||
SpaceBeforeCtorInitializerColon: true
|
|
||||||
SpaceBeforeInheritanceColon: true
|
|
||||||
SpaceBeforeParens: ControlStatements
|
|
||||||
SpaceBeforeParensOptions:
|
|
||||||
AfterControlStatements: true
|
|
||||||
AfterForeachMacros: true
|
|
||||||
AfterFunctionDefinitionName: false
|
|
||||||
AfterFunctionDeclarationName: false
|
|
||||||
AfterIfMacros: true
|
|
||||||
AfterOverloadedOperator: false
|
|
||||||
AfterRequiresInClause: false
|
|
||||||
AfterRequiresInExpression: false
|
|
||||||
BeforeNonEmptyParentheses: false
|
|
||||||
SpaceBeforeRangeBasedForLoopColon: true
|
|
||||||
SpaceBeforeSquareBrackets: false
|
|
||||||
SpaceInEmptyBlock: false
|
|
||||||
SpaceInEmptyParentheses: false
|
|
||||||
SpacesBeforeTrailingComments: 1
|
|
||||||
SpacesInAngles: Never
|
|
||||||
SpacesInConditionalStatement: false
|
|
||||||
SpacesInContainerLiterals: true
|
|
||||||
SpacesInCStyleCastParentheses: false
|
|
||||||
SpacesInLineCommentPrefix:
|
|
||||||
Minimum: 1
|
|
||||||
Maximum: -1
|
|
||||||
SpacesInParentheses: false
|
|
||||||
SpacesInSquareBrackets: false
|
|
||||||
Standard: Latest
|
|
||||||
StatementAttributeLikeMacros:
|
|
||||||
- Q_EMIT
|
|
||||||
StatementMacros:
|
|
||||||
- Q_UNUSED
|
|
||||||
- QT_REQUIRE_VERSION
|
|
||||||
TabWidth: 8
|
|
||||||
UseTab: Never
|
|
||||||
WhitespaceSensitiveMacros:
|
|
||||||
- BOOST_PP_STRINGIZE
|
|
||||||
- CF_SWIFT_NAME
|
|
||||||
- NS_SWIFT_NAME
|
|
||||||
- PP_STRINGIZE
|
|
||||||
- STRINGIZE
|
|
||||||
...
|
|
||||||
|
|
68
Makefile
68
Makefile
@ -1,61 +1,43 @@
|
|||||||
|
SRCS = $(wildcard src/*.c)
|
||||||
HEADERS = $(wildcard src/*.h)
|
HEADERS = $(wildcard src/*.h)
|
||||||
CSRCS = $(wildcard src/*.c)
|
|
||||||
|
|
||||||
PO_SRCS = $(wildcard locale/*/*/*.po)
|
|
||||||
PO_OUTS = $(patsubst locale/%.po,locale/%.mo,$(PO_SRCS))
|
|
||||||
PO_DIRS = $(wildcard locale/*/*)
|
PO_DIRS = $(wildcard locale/*/*)
|
||||||
|
PO_FILES = $(wildcard locale/*/*/*.po)
|
||||||
CFLAGS = -fstack-protector-strong -fcf-protection=full -fstack-clash-protection
|
|
||||||
LIBS = -lncurses -lmenu -lm
|
|
||||||
|
|
||||||
prefix = /usr
|
prefix = /usr
|
||||||
CC = gcc
|
|
||||||
|
|
||||||
VERSION = 24.08
|
dist/xcfg: $(SRCS) $(HEADERS) $(PO_FILES)
|
||||||
|
|
||||||
all: dist/xcfg $(PO_OUTS)
|
|
||||||
|
|
||||||
dist/xcfg: $(CSRCS) $(HEADERS)
|
|
||||||
mkdir -p dist
|
mkdir -p dist
|
||||||
$(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" $(CSRCS) -o $@ $(LIBS)
|
gcc $(CFLAGS) $(SRCS) -o $@ -lncurses -lmenu -lm
|
||||||
|
|
||||||
locale/%.mo: locale/%.po
|
|
||||||
msgfmt $^ -o $@
|
|
||||||
|
|
||||||
locale/%.po: locale/xcfg.pot
|
|
||||||
cp $@ $@.old
|
|
||||||
if msgmerge $@ $^ -o $@ ; then \
|
|
||||||
rm $@.old ; \
|
|
||||||
echo "merge success: $@" ; \
|
|
||||||
else \
|
|
||||||
echo "merge failed: $@" ; \
|
|
||||||
install -m644 $@.old $@ ; \
|
|
||||||
fi; \
|
|
||||||
|
|
||||||
locale/xcfg.pot: $(CSRCS)
|
|
||||||
mkdir -p locale
|
mkdir -p locale
|
||||||
xgettext -k_ -c $^ -o $@
|
xgettext -k_ -c $(SRCS) -o locale/xcfg.pot
|
||||||
|
@for po in $(PO_DIRS) ; do \
|
||||||
|
mv $$po/xcfg.po $$po/mp.old.po ; \
|
||||||
|
if msgmerge $$po/mp.old.po locale/xcfg.pot -o $$po/xcfg.po ; then \
|
||||||
|
rm $$po/mp.old.po ; \
|
||||||
|
echo "merge success: $$po/xcfg.po" ; \
|
||||||
|
else \
|
||||||
|
echo "merge failed: $$po/xcfg.po" ; \
|
||||||
|
mv $$po/mp.old.po $$po/xcfg.po ; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
@for po in $(PO_DIRS) ; do \
|
||||||
|
msgfmt $$po/xcfg.po -o $$po/xcfg.mo ; \
|
||||||
|
done
|
||||||
|
|
||||||
install:
|
install:
|
||||||
mkdir -pv $(DESTDIR)/$(prefix)/bin
|
mkdir -p $(DESTDIR)$(prefix)/bin
|
||||||
install -v -m755 dist/xcfg $(DESTDIR)/$(prefix)/bin/xcfg
|
install -m755 dist/xcfg $(DESTDIR)$(prefix)/bin/xcfg
|
||||||
@for po in $(PO_DIRS) ; do \
|
@for po in $(PO_DIRS) ; do \
|
||||||
echo "installing locale: $$po/xcfg.mo" ; \
|
echo "installing locale: $$po/xcfg.mo" ; \
|
||||||
install -v -Ddm755 $(DESTDIR)/usr/share/$$po ; \
|
mkdir -pv $(DESTDIR)/usr/share/$$po ; \
|
||||||
install -m644 $$po/xcfg.mo $(DESTDIR)/usr/share/$$po ; \
|
cp $$po/xcfg.mo $(DESTDIR)/usr/share/$$po ; \
|
||||||
done
|
done
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
rm -v $(DESTDIR)/$(prefix)/bin/xcfg
|
rm $(DESTDIR)$(prefix)/bin/xcfg
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -v dist/xcfg
|
|
||||||
rm -v locale/xcfg.pot
|
|
||||||
@for po in $(PO_DIRS) ; do \
|
|
||||||
rm $$po/xcfg.mo ; \
|
|
||||||
done
|
|
||||||
|
|
||||||
format:
|
format:
|
||||||
clang-format -i -style=file $(HEADERS) $(CSRCS)
|
clang-format -i -style=file src/*.c src/*.h
|
||||||
|
|
||||||
.PHONY: install uninstall clean
|
.PHONY: install uninstall format
|
||||||
|
@ -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:33+0300\n"
|
"POT-Creation-Date: 2024-04-23 02:27+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:189
|
#: src/main.c:49 src/main.c:185
|
||||||
#, 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,70 +32,60 @@ 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:195
|
#: src/main.c:100 src/main.c:191
|
||||||
#, 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:116
|
#: src/main.c:112
|
||||||
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:121
|
#: src/main.c:123
|
||||||
#, 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:136
|
#: src/main.c:130
|
||||||
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:142
|
#: src/main.c:136
|
||||||
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:145
|
#: src/main.c:140
|
||||||
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:150
|
#: src/main.c:146
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "matt is not installed!"
|
msgid "mp is not installed!"
|
||||||
msgstr "mp kurulu değil"
|
msgstr "mp kurulu değil"
|
||||||
|
|
||||||
#: src/main.c:159
|
#: src/main.c:155
|
||||||
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:174
|
#: src/main.c:170
|
||||||
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:180
|
#: src/main.c:176
|
||||||
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:201
|
#: src/main.c:197
|
||||||
msgid "Configuration has been saved!"
|
msgid "Configuration has been saved!"
|
||||||
msgstr "Konfigürasyon kaydedildi!"
|
msgstr "Konfigürasyon kaydedildi!"
|
||||||
|
|
||||||
#: src/main.c:203
|
#: src/main.c:199
|
||||||
#, fuzzy, c-format
|
#, fuzzy, c-format
|
||||||
msgid "Installing %s"
|
msgid "Installing %s"
|
||||||
msgstr "%s kuruluyor"
|
msgstr "%s kuruluyor"
|
||||||
|
|
||||||
#: src/main.c:207
|
#: src/main.c:203
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Installation failed"
|
msgid "Installation failed"
|
||||||
msgstr "Kurulum başarısız oldu"
|
msgstr "Kurulum başarısız oldu"
|
||||||
@ -107,7 +97,3 @@ msgstr "Evet"
|
|||||||
#: src/term.c:82
|
#: src/term.c:82
|
||||||
msgid "No"
|
msgid "No"
|
||||||
msgstr "Hayır"
|
msgstr "Hayır"
|
||||||
|
|
||||||
#, fuzzy
|
|
||||||
#~ msgid "Feiled to get the home directory"
|
|
||||||
#~ msgstr "Ev dizini bulmak başarısız oldu"
|
|
||||||
|
32
src/main.c
32
src/main.c
@ -108,20 +108,14 @@ 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;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argc >= 2 && strcmp(argv[1], "--version") == 0) {
|
signal(SIGINT, SIG_IGN);
|
||||||
success(_("Simple xorg configuration tool %s"), VERSION);
|
setlocale(LC_ALL, "");
|
||||||
info(_("Licensed under GPLv3, see https://www.gnu.org/licenses/ for more information"));
|
textdomain("xcfg");
|
||||||
return EXIT_SUCCESS;
|
|
||||||
}
|
|
||||||
|
|
||||||
struct Desktop desktops[] = {
|
struct Desktop desktops[] = {
|
||||||
{
|
{
|
||||||
@ -142,12 +136,14 @@ int main(int argc, char **argv, char **envp) {
|
|||||||
.desc = _("Tiling window manager based on binary space partitioning"),
|
.desc = _("Tiling window manager based on binary space partitioning"),
|
||||||
.pkg = "bspwm",
|
.pkg = "bspwm",
|
||||||
.cmd = "bspwm\n"},
|
.cmd = "bspwm\n"},
|
||||||
{.name = "i3", .desc = _("Improved tiling window manager"), .pkg = "i3", .cmd = "i3\n"}
|
{.name = "i3",
|
||||||
};
|
.desc = _("Improved tiling window manager"),
|
||||||
|
.pkg = "i3",
|
||||||
|
.cmd = "i3\n"}};
|
||||||
|
|
||||||
char *mpi_path = check_path("matt");
|
char *mpi_path = check_path("mp-install");
|
||||||
if (NULL == mpi_path) {
|
if (NULL == mpi_path) {
|
||||||
error(_("matt is not installed!"));
|
error(_("mp is not installed!"));
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
free(mpi_path);
|
free(mpi_path);
|
||||||
@ -182,32 +178,32 @@ int main(int argc, char **argv, char **envp) {
|
|||||||
term_finish();
|
term_finish();
|
||||||
|
|
||||||
if (autox && !add_startx())
|
if (autox && !add_startx())
|
||||||
goto fail;
|
goto FAIL;
|
||||||
|
|
||||||
char xinitrc[PATH_MAX];
|
char xinitrc[PATH_MAX];
|
||||||
if (!joinhome(xinitrc, ".xinitrc")) {
|
if (!joinhome(xinitrc, ".xinitrc")) {
|
||||||
error(_("Failed to get the home directory"));
|
error(_("Failed to get the home directory"));
|
||||||
goto fail;
|
goto FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
FILE *xf = fopen(xinitrc, "w");
|
FILE *xf = fopen(xinitrc, "w");
|
||||||
if (fwrite(desktops[indx].cmd, 1, strlen(desktops[indx].cmd), xf) < 0) {
|
if (fwrite(desktops[indx].cmd, 1, strlen(desktops[indx].cmd), xf) < 0) {
|
||||||
error(_("Failed to write to %s"), xinitrc);
|
error(_("Failed to write to %s"), xinitrc);
|
||||||
fclose(xf);
|
fclose(xf);
|
||||||
goto fail;
|
goto FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
fclose(xf);
|
fclose(xf);
|
||||||
success(_("Configuration has been saved!"));
|
success(_("Configuration has been saved!"));
|
||||||
|
|
||||||
info(_("Installing %s"), desktops[indx].name, mpi_path);
|
info(_("Installing %s"), desktops[indx].name, mpi_path);
|
||||||
char *args[] = {doas_path, "matt", "install", "--skip", desktops[indx].pkg, NULL};
|
char *args[] = {doas_path, "mp-install", desktops[indx].pkg, NULL};
|
||||||
|
|
||||||
if (execvp(doas_path, args) != 0) {
|
if (execvp(doas_path, args) != 0) {
|
||||||
error(_("Installation failed"));
|
error(_("Installation failed"));
|
||||||
}
|
}
|
||||||
|
|
||||||
fail:
|
FAIL:
|
||||||
free(doas_path);
|
free(doas_path);
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
@ -17,9 +17,7 @@ bool joinhome(char *res, char *path) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool exists(char *path) {
|
bool exists(char *path) { return access(path, F_OK) == 0; }
|
||||||
return access(path, F_OK) == 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool endswith(const char *str, const char *suf) {
|
bool endswith(const char *str, const char *suf) {
|
||||||
int strl = strlen(str);
|
int strl = strlen(str);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user