Compare commits
38 Commits
hello.ftl-
...
develop
Author | SHA1 | Date |
---|---|---|
Valeria Fadeeva | 0790a6f84c | |
Valeria Fadeeva | 3b5af9e3c2 | |
Valeria Fadeeva | 6eddfea79e | |
Valeria Fadeeva | 4fb41cd5ed | |
Valeria Fadeeva | 796b712c4c | |
Valeria Fadeeva | e2d5b8606c | |
Valeria Fadeeva | 648d13e4f9 | |
Valeria Fadeeva | 71d270e074 | |
Valeria Fadeeva | a91b115c49 | |
Valeria Fadeeva | 3dde6d13d1 | |
Valeria Fadeeva | c9d6961a84 | |
Valeria Fadeeva | 665973e260 | |
Valeria Fadeeva | a949e95971 | |
Valeria Fadeeva | aa37736189 | |
Valeria Fadeeva | fb83293f26 | |
Valeria Fadeeva | 8a70487450 | |
Valeria Fadeeva | 050ec226f9 | |
Valeria Fadeeva | 78226c985c | |
Peter Jung | d7b3fbfe23 | |
Vladislav Nepogodin | cf04feaecc | |
Vladislav Nepogodin | 70f4774931 | |
Vladislav Nepogodin | b4adc46487 | |
Vladislav Nepogodin | a5c451c09e | |
Vladislav Nepogodin | 6c4eb4abf5 | |
Vladislav Nepogodin | 3511d3d90f | |
Piotr Gorski | ac5d1e04d2 | |
Vladislav Nepogodin | 61b7c65da2 | |
Vladislav Nepogodin | 7601d14d08 | |
Vladislav Nepogodin | e541053a03 | |
Vladislav Nepogodin | f43471d257 | |
NextWorks | dbb6b85ee3 | |
Vladislav Nepogodin | 2cc9c3395a | |
Vladislav Nepogodin | a40d87f9d1 | |
Vladislav Nepogodin | 878e7953d9 | |
Vladislav Nepogodin | 07f4f0a10a | |
Vladislav Nepogodin | a0c85883ff | |
Vladislav Nepogodin | 032ba4dc1d | |
Damian N | 41c60988c6 |
|
@ -0,0 +1,18 @@
|
|||
BasedOnStyle: WebKit
|
||||
AccessModifierOffset: -3
|
||||
AllowShortLoopsOnASingleLine: true
|
||||
AlignConsecutiveAssignments: true
|
||||
AlignConsecutiveMacros: true
|
||||
AlignTrailingComments: true
|
||||
BreakBeforeBraces: Custom
|
||||
BreakConstructorInitializers: BeforeColon
|
||||
BreakStringLiterals: false
|
||||
ConstructorInitializerIndentWidth: 2
|
||||
Cpp11BracedListStyle: true
|
||||
PointerAlignment: Left
|
||||
FixNamespaceComments: true
|
||||
SpaceBeforeCpp11BracedList: false
|
||||
SpacesBeforeTrailingComments: 2
|
||||
Standard: c++17
|
||||
TabWidth: 4
|
||||
UseTab: Never
|
42
Cargo.toml
|
@ -1,29 +1,33 @@
|
|||
[package]
|
||||
name = "cachyos-hello"
|
||||
version = "0.9.10"
|
||||
name = "melawy-welcome"
|
||||
version = "0.10.1"
|
||||
authors = ["Vladislav Nepogodin <nepogodin.vlad@gmail.com>"]
|
||||
license = "GPLv3"
|
||||
edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
alpm = { default-features = false, version = "2.2.2" }
|
||||
alpm-utils = { features = ["conf"], default-features = false, version = "2.0.0" }
|
||||
pacmanconf = "2.0.0"
|
||||
alpm = { default-features = false, version = "4" }
|
||||
alpm-utils = { features = ["conf"], default-features = false, version = "4" }
|
||||
pacmanconf = "3"
|
||||
|
||||
subprocess = "0.2.9"
|
||||
once_cell = { default-features = false, version = "1.17.1" }
|
||||
i18n-embed = { version = "0.13.8", features = ["fluent-system", "desktop-requester"] }
|
||||
i18n-embed-fl = "0.6.6"
|
||||
rust-embed = { version = "6.6.1", features = ["debug-embed", "include-exclude"] }
|
||||
gtk = { version = "0.17.1", default-features = false }
|
||||
gio = { version = "0.17.9", default-features = false }
|
||||
gdk = "0.17.1"
|
||||
gdk-pixbuf = "0.17.0"
|
||||
glib = { default-features = false, version = "0.17.9" }
|
||||
serde = { version = "1.0.162", default-features = false }
|
||||
serde_json = "1.0.96"
|
||||
reqwest = { version = "0.11.17", features = ["blocking"] }
|
||||
unic-langid = "0.9.1"
|
||||
subprocess = "0.2"
|
||||
once_cell = { default-features = false, version = "1.19" }
|
||||
i18n-embed = { version = "0.14", features = ["fluent-system", "desktop-requester"] }
|
||||
i18n-embed-fl = "0.7"
|
||||
rust-embed = { version = "8", features = ["debug-embed", "include-exclude"] }
|
||||
gtk = { version = "0.18", default-features = false }
|
||||
gio = { version = "0.18", default-features = false }
|
||||
gdk = "0.18"
|
||||
gdk-pixbuf = "0.18"
|
||||
glib = { default-features = false, version = "0.18" }
|
||||
serde = { version = "1", default-features = false }
|
||||
serde_json = "1"
|
||||
reqwest = { version = "0.11", features = ["blocking"] }
|
||||
unic-langid = "0.9"
|
||||
phf = { version = "0.11", features = ["macros"], default-features = false }
|
||||
|
||||
[build-dependencies]
|
||||
anyhow = "1"
|
||||
|
||||
[profile.release]
|
||||
strip = "symbols"
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
<div align="center">
|
||||
<h1>Melawy Welcome</h1>
|
||||
<p>
|
||||
<strong>Welcome screen for Melawy Linux written in Rust</strong>
|
||||
</p>
|
||||
<p>
|
||||
|
||||
[![Dependency Status](https://deps.rs/repo/github/cachyos/cachyos-welcome/status.svg)](https://deps.rs/repo/github/cachyos/cachyos-welcome)
|
||||
<br />
|
||||
[![CI](https://github.com/cachyos/cachyos-welcome/actions/workflows/rust.yml/badge.svg)](https://github.com/cachyos/cachyos-welcome/actions/workflows/rust.yml)
|
||||
|
||||
</p>
|
||||
</div>
|
39
build.rs
|
@ -1,3 +1,4 @@
|
|||
use std::io::Write;
|
||||
use std::process::{self, Command};
|
||||
use std::{env, fs};
|
||||
|
||||
|
@ -12,8 +13,8 @@ fn main() {
|
|||
let out_dir = env::var("OUT_DIR").unwrap();
|
||||
|
||||
let status = Command::new("glib-compile-resources")
|
||||
.arg(&format!("--target={}/cachyos-welcome.gresource", out_dir))
|
||||
.arg("cachyos-welcome.gresource.xml")
|
||||
.arg(format!("--target={}/melawy-welcome.gresource", out_dir))
|
||||
.arg("melawy-welcome.gresource.xml")
|
||||
.status()
|
||||
.unwrap();
|
||||
|
||||
|
@ -21,4 +22,38 @@ fn main() {
|
|||
eprintln!("glib-compile-resources failed with exit status {}", status);
|
||||
process::exit(1);
|
||||
}
|
||||
|
||||
println!("cargo:rerun-if-changed=src/config.rs.in");
|
||||
println!("cargo:rerun-if-changed=src/config.rs");
|
||||
gen_config().expect("Failed to gen config.rs");
|
||||
}
|
||||
|
||||
fn gen_config() -> anyhow::Result<()> {
|
||||
let base_id = "org.melawy.welcome";
|
||||
|
||||
let version = env::var("CARGO_PKG_VERSION")?;
|
||||
|
||||
let (profile, version_suffix, app_id) = if env::var("PROFILE")? == "debug" {
|
||||
let profile = "Devel";
|
||||
let vcs_tag = get_vcs_tag()?;
|
||||
let version_suffix =
|
||||
if vcs_tag.is_empty() { "-devel".to_string() } else { format!("-{vcs_tag}") };
|
||||
(profile.to_owned(), version_suffix, format!("{base_id}.{profile}"))
|
||||
} else {
|
||||
(String::new(), String::new(), base_id.to_owned())
|
||||
};
|
||||
|
||||
let final_config = fs::read_to_string("src/config.rs.in")?
|
||||
.replace("@APP_ID@", &format!("\"{app_id}\""))
|
||||
.replace("@PROFILE@", &format!("\"{profile}\""))
|
||||
.replace("@VERSION@", &format!("\"{version}{version_suffix}\""));
|
||||
|
||||
let mut file = fs::File::create("src/config.rs")?;
|
||||
file.write_all(final_config.as_bytes())?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn get_vcs_tag() -> anyhow::Result<String> {
|
||||
let output = Command::new("git").args(["rev-parse", "--short", "HEAD"]).output()?;
|
||||
Ok(String::from_utf8(output.stdout)?)
|
||||
}
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gresources>
|
||||
<gresource prefix="/org/cachyos/hello">
|
||||
<file compressed="true" preprocess="xml-stripblanks">ui/cachyos-hello.glade</file>
|
||||
<file compressed="true">ui/style.css</file>
|
||||
<file compressed="true">data/img/external-link.png</file>
|
||||
<file compressed="true">data/img/discord.png</file>
|
||||
<file compressed="true">data/img/reddit.png</file>
|
||||
<file compressed="true">data/img/telegram.png</file>
|
||||
<file compressed="true">data/img/twitter.png</file>
|
||||
</gresource>
|
||||
</gresources>
|
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 220 B After Width: | Height: | Size: 302 B |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 51 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 980 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.1 KiB |
|
@ -1 +0,0 @@
|
|||
de
|
|
@ -1,37 +0,0 @@
|
|||
<big>Danke für ihre Unterstützung</big>
|
||||
|
||||
CachyOS Linux bekommt eine Menge Unterstützung von seiner Benutzer-Gemeinschaft, und wir wollen jedem einzelnen Beitragenden fürs mitmachen danken. Wir wachsen in gleichmäßigem Tempo und unsere Distribution wird dank ihnen jeden Tag besser.
|
||||
|
||||
Es ist sehr leicht etwas zu bewegen. Abhängig von ihren Fähigkeiten, ihrer Verfügbarkeit können Sie CachyOS in einem oder mehreren Wegen helfen:
|
||||
|
||||
<big>Unterstützung und Werbung</big>
|
||||
|
||||
<b>Die Nachricht verbreiten</b>
|
||||
|
||||
Wenn Sie CachyOS mögen, lassen Sie es andere wissen. Schreiben Sie eine Rezension und veröffentlichen sie auf distrowatch.com. Reden Sie darüber mit ihren Freunden und den Leuten die Sie treffen.
|
||||
|
||||
<b>Der Gemeinschaft beitreten</b>
|
||||
|
||||
CachyOS ist nicht nur ein Betriebssystem, es ist auch eine dynamische Gemeinschaft von Benutzern die ein freies und offenes Projekt genießen, sich dafür versammeln und zusammenwirken. Sei es, indem Sie anderen helfen, Probleme zu lösen, indem Sie ihnen das Gefühl geben, willkommen zu sein, oder einfach indem Sie andere CachyOS-Benutzer treffen und sich mit ihnen unterhalten - wir empfehlen Ihnen, der Gemeinschaft beizutreten und daran mitzuwirken, CachyOS besser zu machen.
|
||||
|
||||
<b>Anderen helfen</b>
|
||||
|
||||
Wenn Sie etwas Freizeit haben und bereit sind, anderen Benutzern bei technischen Problemen zu helfen, sollten Sie ernsthaft in Erwägung ziehen, die Foren zu lesen und/oder dem IRC-Channel beizutreten und anderen CachyOS-Benutzern bei der Lösung der Probleme zu helfen, die Sie zu beheben wissen.
|
||||
|
||||
<big>Beiträge zum Projekt</big>
|
||||
|
||||
<b>Fehlerberichte</b>
|
||||
|
||||
Wenn Sie etwas bemerkt haben, das bei der Benutzung von CachyOS nicht richtig funktioniert, lassen Sie es uns wissen. Das Problem, das Sie entdeckt haben, wird wahrscheinlich auch andere betreffen; je früher wir davon wissen, desto schneller können wir es beheben.
|
||||
|
||||
<b>Neue Ideen</b>
|
||||
|
||||
Die überwiegende Mehrheit der Verbesserungen, die in jedem Release enthalten sind, kommen aus der Community. Wenn es etwas gibt, von dem Sie glauben, dass es fehlt oder besser gemacht werden könnte, sagen Sie es uns bitte. Ob es sich um die Aufnahme eines fehlenden Hardware-Treibers handelt, oder um eine Software-Anwendung, die Teil einer Standard-Installation sein sollte, oder ob Sie andere Ideen haben, wie man CachyOS besser machen kann, wir sind immer daran interessiert, sie zu hören.
|
||||
|
||||
<b>Kunstwerke</b>
|
||||
|
||||
Wenn Sie im Grafikdesign talentiert sind und bereit sind, zum Projekt beizutragen, senden Sie uns bitte Ihre Kreationen und Kunstwerke. Ob es ein einfaches Hintergrundbild, ein Icon-Set, ein Splash-Screen oder sogar ein neues Logo ist, wir sind immer daran interessiert, von Ihnen über neue Kunstwerke zu hören.
|
||||
|
||||
<b>Code</b>
|
||||
|
||||
Der Großteil unserer Entwicklung wird in QT, C++, Python, HTML5/CSS und BASH durchgeführt. Wir verwenden auch Git für die Versionskontrolle und PKGBUILDs für die Paketierung. Wenn Sie mit diesen Technologien vertraut sind, zögern Sie nicht, einen Blick auf den Code zu werfen. Wenn Sie denken, Sie können unsere Anwendungen verbessern oder neue schreiben, zögern Sie nicht, Patches vorzuschlagen oder unsere Git-Repositories zu forken.
|
|
@ -1,45 +0,0 @@
|
|||
<big>Handhabung der Hardware</big>
|
||||
|
||||
CachyOS unterstützt nicht nur die Verwendung mehrerer Kernel (wählbar in den erweiterten Optionen auf dem Boot-Bildschirm), sondern bietet auch Zugriff auf die allerneuesten Bleeding-Edge-Kernel. Dies kann durch die Verwendung des Kernelmoduls im grafischen Einstellungsmanager von CachyOS oder über die Kommandozeile mit dem MHWD-kernel (CachyOS Hardware Detection) Befehl erfolgen.
|
||||
|
||||
Diese CachyOS-Tools aktualisieren automatisch einen neu installierten Kernel zusammen mit allen Modulen, die derzeit mit Ihrem bestehenden Kernel verwendet werden. Wenn Sie zum Beispiel von Kernel 3.18 auf 4.1 aktualisieren würden, würde mhwd-kernel automatisch die Kernel 4.1-Builds und alle Module, die mit Kernel 3.18 verwendet wurden, mit einbeziehen. Was sagt man dazu!
|
||||
|
||||
Sie können Ihre Hardware über das Hardware-Erkennungsmodul im Einstellungsmanager oder alternativ mit der MHWD-Kommandozeilen-Applikation konfigurieren. Mit diesen Tools können Sie z.B. grafische Treiber installieren, freie und proprietäre.
|
||||
|
||||
<big>Hilfe holen</big>
|
||||
|
||||
Obwohl CachyOS so konzipiert ist, dass es so viel wie möglich "von vornherein" funktioniert, behaupten wir nicht, dass es perfekt ist. Es kann Zeiten geben, in denen etwas schief läuft, Sie Fragen haben und den Wunsch haben, mehr zu erfahren oder es einfach nur nach Ihrem Geschmack zu personalisieren. Auf dieser Seite finden Sie Details zu einigen verfügbaren Ressourcen, die Ihnen helfen können!
|
||||
|
||||
<b>Suche im Web</b>
|
||||
|
||||
Vielleicht ist der erste Ort, an dem Sie nach allgemeiner Linux-Hilfe suchen, die Verwendung Ihrer bevorzugten Suchmaschine. Fügen Sie einfach Wörter wie 'Linux', 'CachyOS' oder 'Arch' in Ihre Suchanfrage ein.
|
||||
|
||||
Da CachyOS auf Arch Linux basiert, gelten die für Arch entworfenen Anleitungen und Tipps in der Regel auch für CachyOS.
|
||||
|
||||
<b>Sehen Sie in den Foren nach</b>
|
||||
|
||||
Für spezifische Hilfe mit CachyOS haben wir ein spezielles Online-Forum, in dem Sie nach Themen suchen oder selbst eines erstellen können! Dies ist wahrscheinlich die nächstbeste Anlaufstelle für Zusammenarbeit, Diskussion und Hilfe. Bitten Sie um Hilfe, posten Sie Ihre Gedanken oder skizzieren Sie einige Vorschläge. Seien Sie nicht schüchtern!
|
||||
|
||||
Das CachyOS-Forum ist in Unterforen für verschiedene Themen und Umgebungen unterteilt, bitte stellen Sie Ihre Anfrage an der entsprechenden Stelle!
|
||||
|
||||
<b>Schließen Sie sich uns im Telegram an</b>
|
||||
|
||||
Eine andere Möglichkeit ist, sich uns im Telegram.
|
||||
|
||||
<b>Melden Sie sich bei einer Mailingliste an</b>
|
||||
|
||||
Eine andere Möglichkeit, Hilfe zu bekommen, ist es, Fragen an die CachyOS-Mailingliste zu schicken (Sie können auch die Chronik nach vergangenen Diskussionen durchsuchen). Melden Sie sich einfach auf der Liste an, die Sie bevorzugen und folgen Sie den Anweisungen. Es gibt eine Liste mit verschiedenen Themen, schau einfach mal rein!
|
||||
|
||||
<big>Andere Resourcen</big>
|
||||
|
||||
- <a href="https://aur.archlinux.org">AUR Repository</a> - Zusätzliche Software, die nicht in den regulären Repositories enthalten ist und aus den Quellen gebaut wurde.
|
||||
- <a href="https://wiki.cachyos.org">CachyOS Wiki</a> - Offizielles Wiki für CachyOS.
|
||||
- <a href="http://wiki.archlinux.org">Arch Wiki</a> - Offizielles Wiki für Arch.
|
||||
|
||||
<big>Vorschläge</big>
|
||||
|
||||
Haben Sie einen Vorschlag, wie wir CachyOS besser machen können? Haben Sie etwas gefunden, das Sie miteinbezogen haben möchten oder das Sie aushelfen möchten? Bitte lassen Sie es uns wissen, indem Sie ihren Vorschlag im Forum oder im IRC veröffentlichen.
|
||||
|
||||
Danke schön!
|
||||
|
||||
Wir wünschen Ihnen viel Spaß mit CachyOS!
|
|
@ -1,37 +0,0 @@
|
|||
<big>CachyOS 23.05</big>
|
||||
|
||||
Dies ist unsere fünfte Veröffentlichung im Jahr 2023.
|
||||
Wir haben unsere "Git-Migration" abgeschlossen und diese Version spiegelt die letzten Änderungen im Repository-Layout wider.
|
||||
Das Repository "cachyos-v3" enthält jetzt nur noch CachyOS-Pakete wie Kernel und eigene optimierte Pakete (Python, gcc, glibc, ...).
|
||||
Die rekompilierten Pakete befinden sich nun in den Repositories "cachyos-core-v3" und "cachyos-extra-v3".
|
||||
Die "Qtile"-Desktop-Umgebung hat auch einige Korrekturen und Änderungen erhalten. Dank an @Array
|
||||
Calamares hat einige minimale Korrekturen erhalten und @NextWorks hat unsere Calamares-Folie aktualisiert, um die Änderungen in den bereitgestellten Desktop-Umgebungen zu reflektieren.
|
||||
Wie immer gab es auch größere Paket-Upgrades wie linux-cachyos 6.3, python 3.11, cachy-browser 113.0.2 und mesa 23.1.1.
|
||||
Im nächsten Monat werden wir mit der Migration auf einen neuen Server beginnen und daran arbeiten, einen vollständigen x86-64-v4-Rebuild bereitzustellen.
|
||||
Außerdem ist für die nächste Version geplant, die Netzinstallation zu überarbeiten, um eine "saubere" Installation ohne CachyOS-bezogene Pakete zu erleichtern.
|
||||
|
||||
<big>Features:</big>
|
||||
|
||||
- Das Layout der CachyOS Git-Migration wird nun in der Installation berücksichtigt
|
||||
- chwd (mhwd) erhielt mehrere Korrekturen
|
||||
- Pacman: Wir haben eine Funktion hinzugefügt, die es ermöglicht, unseren Nutzern vor der Aktualisierung eine Nachricht zukommen zu lassen
|
||||
- Calamares wurde mit Upstream synchronisiert
|
||||
- Paket Updates: linux-cachyos 6.3.4, cachy-browser 113.0.1, mesa 23.1.1, python 3.11
|
||||
|
||||
<big>Fehlerbehebungen:</big>
|
||||
|
||||
- netinstall: minimale Korrekturen aufgrund von Paketänderungen
|
||||
- Folien: Folie 6 wurde aktualisiert, um die letzten Änderungen widerzuspiegeln
|
||||
|
||||
Wie immer kann der Download auf unseren Mirrors in der Sourgeforge gefunden werden.
|
||||
|
||||
https://mirror.cachyos.org/ISO/
|
||||
https://sourceforge.net/projects/cachyos-arch/files/
|
||||
|
||||
Wenn Sie uns unterstützen möchten, können Sie spenden, um unsere monatlichen Serverkosten zu decken.
|
||||
|
||||
https://paypal.me/pttrr
|
||||
https://www.patreon.com/CachyOS
|
||||
|
||||
Danke,
|
||||
CachyOS - Team
|
|
@ -1,37 +1,67 @@
|
|||
<big>Thanks for your support</big>
|
||||
<big>Support</big>
|
||||
|
||||
CachyOS Linux receives a great deal of support from its community of users and we would like to thank each and every contributor for participating. We are growing at a steady pace and our distribution is getting better every day thanks to you.
|
||||
Dear users and fans of Open Source software.
|
||||
|
||||
It is very easy to make a difference. Depending on your skill set, your availability you can help CachyOS in one or more of the following ways:
|
||||
I am asking you for financial support. For the past 1.5 years, I've spent my free time developing a distribution of the Linux operating system, and I'd like to share with you why this work is so important and why your donation makes a difference.
|
||||
|
||||
<big>Support and Promotion</big>
|
||||
Open source software plays a key role in the modern world, providing freedom to use, study, change and distribute programs. This means that everyone who uses Open Source software has the opportunity to adapt it to their needs and improve it for all users.
|
||||
|
||||
<b>Spreading the word</b>
|
||||
My project, a distribution of the Linux operating system, is one example of such Open Source software. I strive to create a reliable and user-friendly operating system while giving users choice and control over their computers. Linux is based on open standards and collaborative development, making it available to everyone without the restrictions of commercial licenses.
|
||||
|
||||
If you like CachyOS, let people know. Write a review and publish it on distrowatch.com. Talk about it with your friends and the people around you.
|
||||
However, developing and maintaining Open Source software requires resources - time, energy and, of course, financial resources. Your donations will help me continue to work on the project, improve its functionality, fix bugs and ensure security.
|
||||
|
||||
<b>Joining the Community</b>
|
||||
Financial support will also allow me to devote more time to developing new features, improving the user interface and optimizing the system as a whole. Without your support, my project may not reach its full potential and benefit the community.
|
||||
|
||||
CachyOS isn't just an operating system, it's also a dynamic community of people who enjoy, gather, and interact with a free and open project. Whether it's by helping others sort through issues, by making them feel welcome, or simply by meeting and talking to other CachyOS users, we recommend you join the community and participate in making CachyOS better.
|
||||
All collected donations will be invested in the development of the project: payment for the domain, hosting, equipment upgrades, testing and development of new functions. Be sure that every ruble, dollar, euro you donate will be used effectively and responsibly.
|
||||
|
||||
I encourage you to support my work in developing a distribution of the Linux operating system financially. Your donation will be appreciated, and together we can continue to develop Open Source software and make the world more open, free and accessible to everyone.
|
||||
|
||||
Best regards, Valeria.
|
||||
|
||||
<a href="https://www.tinkoff.ru/cf/7OmVoFjdFNI">Support the project</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<big>And also</big>
|
||||
|
||||
It's easy to participate in the development of Melawy Linux. Depending on your skills and capabilities, you can help Melawy Linux in one or more ways:
|
||||
|
||||
<big>Support and promotion</big>
|
||||
|
||||
<b>Mentioned in conversation</b>
|
||||
|
||||
If you like Melawy Linux, let people know about it. Write a review and post it on distrowatch.com. Discuss it with your friends, colleagues, relatives and people around you.
|
||||
|
||||
<b>Joining the community</b>
|
||||
|
||||
Melawy Linux is not just an operating system, it is also a community of people who enjoy a free and open project, a place for communication and interaction with like-minded people. Whether you are helping other people solve their problems, making them feel at home, or simply communicating with other Melawy Linux users, we encourage you to join the community and take part in the creation of Melawy Linux.
|
||||
|
||||
<b>Helping others</b>
|
||||
|
||||
If you have some spare time and you're willing to help other users with technical problems, you should seriously consider reading the forums and/or joining the IRC channel and helping other CachyOS users solve the problems you know how to fix.
|
||||
If you have free time and want to help other users with technical problems, you should seriously consider reading the forums and helping other Melawy Linux users solve problems, especially if you know how to fix them.
|
||||
|
||||
<big>Project contributions</big>
|
||||
<big>Participation in development</big>
|
||||
|
||||
<b>Bug reports</b>
|
||||
|
||||
If you've noticed something that doesn't work properly while using CachyOS, let us know. The problem you have discovered is likely to affect others as well; The sooner we know about it, the sooner we're able to fix it.
|
||||
If while using Melawy Linux you notice something that is not working properly, please let us know. The problem you discovered will most likely affect others. The sooner we find out about it, the sooner we can fix it.
|
||||
|
||||
<b>New ideas</b>
|
||||
|
||||
The vast majority of improvements included in each release come from the community. If there's something that you think is missing or that could be done better, please tell us. Whether it's the inclusion of a missing hardware driver, or a software application that should be part of a stock installation, or if you have any other ideas on how to make CachyOS better, we're always interested in hearing them.
|
||||
The vast majority of improvements included in each release come from the community. If there is anything you think is missing or could be done better, please let us know. Whether it's the inclusion of a missing hardware driver or a software application that should be part of the official repository, or if you have any other ideas on how to make Melawy Linux better, we're always interested in hearing about them.
|
||||
|
||||
<b>Artwork</b>
|
||||
<b>Design</b>
|
||||
|
||||
If you are talented in graphic design and willing to contribute to the project, please send us your creations and artwork. Whether it's a simple wallpaper, an icon set, a splash screen, or even a new logo, we're always interested to hear from you about new artwork.
|
||||
If you have a talent in graphic design and are ready to contribute to the project, send us your work and illustrations. Be it a simple wallpaper, an icon set, screensavers or even a new logo. We are always interested in knowing your vision of design.
|
||||
|
||||
<b>Code</b>
|
||||
<b>Programming</b>
|
||||
|
||||
Most of our development is done in QT, C++, Python, HTML5/CSS and BASH. We also use Git for version control and PKGBUILDs for packaging. If you're comfortable with these technologies, don't hesitate to have a look at the code. If you think you can improve our applications or write new ones don't hesitate to suggest patches or to fork our git repositories.
|
||||
Most of our development is done in QT, C++, Python, HTML5/CSS and BASH. We also use Git for version control and PKGBUILD for packaging. If you're comfortable using these technologies, feel free to take a look at our code. If you think you can improve our applications or write new ones, feel free to suggest fixes or fork our git repositories.
|
||||
|
|
|
@ -1,37 +1,26 @@
|
|||
<big>Handling hardware</big>
|
||||
|
||||
CachyOS not only supports the use of multiple kernels (selectable from the advanced options at the boot screen), but also provides access to the very latest bleeding-edge kernels as well. This can be done through the use of the Kernel module in CachyOS's graphical Settings Manager, or via the command line using the MHWD-kernel (CachyOS Hardware Detection) command.
|
||||
|
||||
These CachyOS tools will automatically update a newly installed kernel along with any modules currently in use with your existing kernel. For example, if you were to update from kernel 3.18 to 4.1, MHWD-kernel would automatically include the kernel 4.1 builds and all modules used with kernel 3.18. How about that!
|
||||
|
||||
You can configure your hardware through the Hardware Detection module in the Settings Manager or alternatively with the MHWD cli-application. With these tools, you can install for example graphical drivers, free and proprietary.
|
||||
|
||||
<big>Getting help</big>
|
||||
|
||||
Although CachyOS is designed to work as much "out of the box" as possible, we don't claim it's perfect. There can be times when things go wrong, you might have questions and a desire to learn more, or just want to personalize it to suit your tastes. This page provides details of some available resources to help you!
|
||||
Although Melawy Linux is designed to work correctly out of the box, we will not claim that it is perfect. There are times when something goes wrong, you may have questions and want to know more, or you may simply want to customize the system to your liking. This page provides information on some of the resources available to help you!
|
||||
|
||||
<b>Search the web</b>
|
||||
<b>Search on the Internet</b>
|
||||
|
||||
Perhaps the first place to look for generic Linux help is by using your favorite search engine. Just include words like 'Linux', 'CachyOS' or 'Arch' in your search query.
|
||||
Perhaps the first place to look for general Linux help is to use your favorite search engine. Just add words like "Linux", "Melawy Linux" or "Arch" to your search query.
|
||||
|
||||
As CachyOS is based on Arch Linux, guides and tips designed for Arch usually apply to CachyOS too.
|
||||
|
||||
<b>Look in the forums</b>
|
||||
|
||||
For specific help with CachyOS we have a dedicated online forum where you can search for topics, or create one yourself! This is probably the next best place to go for collaboration, discussion and assistance. Ask for help, post your thoughts, or outline some suggestions. Don't be shy!
|
||||
|
||||
The CachyOS forum is divided into sub-forums for different topics and environments, please post your query in the appropriate place!
|
||||
Since Melawy Linux is based on Arch Linux, guides and tips designed for Arch generally apply to Melawy Linux as well.
|
||||
|
||||
<big>Other resources</big>
|
||||
|
||||
- <a href="https://aur.archlinux.org">AUR Repository</a> - Extra software not in the regular repositories, built from source.
|
||||
- <a href="https://wiki.cachyos.org">CachyOS Wiki</a> - Official wiki for CachyOS.
|
||||
- <a href="https://wiki.archlinux.org">Arch Wiki</a> - Official wiki for Arch.
|
||||
- <a href="https://aur.archlinux.org">AUR Repository</a> - Additional software not found in regular repositories, built from source code.
|
||||
- <a href="http://wiki.archlinux.org">Arch Wiki</a> - Official wiki for Arch.
|
||||
|
||||
<big>Suggestions</big>
|
||||
<big>Russian-language resources</big>
|
||||
|
||||
Got a suggestion on how we can make CachyOS better? Found something you want to be included, or want to help out? Please let us know, by posting your suggestion on the forum or drop by on IRC.
|
||||
Communication on the resources listed above is conducted in English and will suit you if you speak it. Even though the capabilities of various automatic translation tools have made great strides forward, it is always more common to communicate in a language in which you not only speak, but also think. If this language is Russian for you, you may be interested in the official Melawy Linux discord community in Russia.
|
||||
|
||||
Thank you!
|
||||
<big>Offers</big>
|
||||
|
||||
We hope you enjoy using CachyOS!
|
||||
Have a suggestion on how to make Melawy Linux better? Found something you want to include in the system, or just want to help? Let us know by posting your suggestion on the Melawy Linux discord community.
|
||||
|
||||
Thank you for your choice!
|
||||
|
||||
We hope you enjoy Melawy Linux!
|
||||
|
|
|
@ -1,37 +1,44 @@
|
|||
<big>CachyOS 23.05</big>
|
||||
<big>Release of Melawy Linux distribution 15.11.2023</big>
|
||||
|
||||
This is our fifth release in 2023.
|
||||
We got our "Git Migration" done and this release does reflect the latest changes in the repository layout.
|
||||
The repository "cachyos-v3" contains now only CachyOS packages like kernels and custom optimized packages (python, gcc, glibc, ...).
|
||||
The recompiled packages are now in the "cachyos-core-v3" and "cachyos-extra-v3" repositorys.
|
||||
The "Qtile" Desktop enviroment got also several fixes and changes. Thanks to @Array
|
||||
Calamars got some minimal fixes and @NextWorks did update our calamares slide to reflect the changes in the provided desktop enviroments.
|
||||
As always there were also major package upgrades like linux-cachyos 6.3, python 3.11, cachy-browser 113.0.2 and mesa 23.1.1.
|
||||
In the next month we will start to migrate to a new server and will work on providing a full x86-64-v4 rebuild.
|
||||
Also for the next release it is planned to rework the netinstallation to make it easier to install a "clean" without CachyOS related packages.
|
||||
Quietly and almost imperceptibly, after 1.5+ years of work, 30.10.2023 the first release of the Melawy Linux operating system was released.
|
||||
|
||||
<big>Features:</big>
|
||||
<big>What's inside?</big>
|
||||
|
||||
- CachyOS Git Migration layout is now reflected in the installation
|
||||
- chwd (mhwd) got multiple fixes
|
||||
- Pacman: We added a feature, which makes it possible to provide a message to our users before updating
|
||||
- Calamares got synced with upstream
|
||||
- Package updates: linux-cachyos 6.3.4, cachy-browser 113.0.1, mesa 23.1.1, python 3.11
|
||||
- Installation from disk and over the network with the choice of bootloader rEFInd, systemd-boot, Grub2 in one installer.
|
||||
- Ability to select and install driver version for Nvidia video card:
|
||||
- installation from disk - drivers only for new video cards
|
||||
- network installation - manual driver selection
|
||||
|
||||
<big>Bug-fixes:</big>
|
||||
- Non-standard kernel - with patches for performance and protection from Meltdown and Specter, etc.
|
||||
- Builder of the initial kernel environment using the modular, automated Dracut.
|
||||
- Generation of digital signatures and kernel signing to start via Secure Boot:
|
||||
- Later, bootloader signing will be automated and the full boot cycle will be checked via Secure Boot.
|
||||
- The full boot phase via Secure Boot protects against viruses, starting with the bootloader and kernel loading.
|
||||
|
||||
- netinstall: minimal fixes due package changes
|
||||
- Slides: Slide 6 got updated to reflect the lastest changes
|
||||
- Support for Luks2 full-disk encryption using the latest Argon2id algorithm.
|
||||
- Beautiful, informative visual design:
|
||||
- operating system boot selection screen
|
||||
- stage of loading the kernel and base environment initrd
|
||||
- login
|
||||
- working environment:
|
||||
- styles
|
||||
- color
|
||||
- icons
|
||||
- cursors
|
||||
|
||||
You can find the download at our mirrors or sourceforge.
|
||||
- Not annoying update checking applet:
|
||||
- automatic check at login after 10 seconds - after everything starts
|
||||
- force check button and install button
|
||||
|
||||
https://mirror.cachyos.org/ISO/
|
||||
https://sourceforge.net/projects/cachyos-arch/files/
|
||||
- Pre-installed controls for AMD hardware through the user interface and Nvidia graphics card.
|
||||
- A pre-selected large list of programs that can be used immediately.
|
||||
- The ability to use all these programs directly on the Live image, without installing the system on disk.
|
||||
- And other...
|
||||
|
||||
If you'd like to support us, you can donate to help cover our monthly server costs.
|
||||
You can download the distribution from <a href="https://sourceforge.net/projects/melawy-linux/files/">SourceForge</a>.
|
||||
|
||||
https://paypal.me/pttrr
|
||||
https://www.patreon.com/CachyOS
|
||||
If you want to support my work, you can make a <a href="https://www.tinkoff.ru/cf/7OmVoFjdFNI">donation</a>.
|
||||
|
||||
Thanks,
|
||||
The CachyOS Team
|
||||
Thanks for your support!
|
||||
|
||||
Best regards, Valeria Fadeeva.
|
||||
|
|
|
@ -1,37 +0,0 @@
|
|||
<big> Dzięki za wsparcie </big>
|
||||
|
||||
CachyOS Linux otrzymuje ogromne wsparcie od swojej społeczności użytkowników i chcielibyśmy podziękować każdemu wspierającemu za udział. Rozwijamy się w stałym tempie, a dzięki Tobie nasza dystrybucja z każdym dniem jest coraz lepsza.
|
||||
|
||||
Bardzo łatwo jest coś zmienić. W zależności od twojego zestawu umiejętności, twojej dostępności możesz pomóc CachyOS na jeden lub więcej z następujących sposobów:
|
||||
|
||||
<big> Wsparcie i promocja </big>
|
||||
|
||||
<b> Rozpowszechnianie informacji </b>
|
||||
|
||||
Jeśli lubisz CachyOS, daj znać innym. Napisz recenzję i opublikuj ją na distrowatch.com. Porozmawiaj o tym ze swoimi przyjaciółmi i ludźmi wokół ciebie.
|
||||
|
||||
<b> Dołączanie do społeczności </b>
|
||||
|
||||
CachyOS to nie tylko system operacyjny, ale także dynamiczna społeczność ludzi, którzy cieszą się, gromadzą i wchodzą w interakcje z wolnym i otwartym projektem. Niezależnie od tego, czy chodzi o pomaganie innym w rozwiązywaniu problemów, sprawianie, że czują się mile widziani, czy po prostu spotykając się i rozmawiając z innymi użytkownikami CachyOS, zalecamy dołączenie do społeczności i udział w ulepszaniu CachyOS.
|
||||
|
||||
<b> Pomaganie innym </b>
|
||||
|
||||
Jeśli masz trochę wolnego czasu i chcesz pomóc innym użytkownikom w rozwiązywaniu problemów technicznych, powinieneś poważnie rozważyć czytanie forów i / lub dołączenie do kanału IRC i pomoc innym użytkownikom CachyOS w rozwiązywaniu problemów, które wiesz, jak naprawić.
|
||||
|
||||
<big> Wkład do projektu </big>
|
||||
|
||||
<b> Raporty o błędach </b>
|
||||
|
||||
Jeśli zauważyłeś coś, co nie działa poprawnie podczas korzystania z CachyOS, daj nam znać. Problem, który odkryłeś, prawdopodobnie wpłynie również na innych. Im szybciej się o tym dowiemy, tym szybciej będziemy mogli to naprawić.
|
||||
|
||||
<b> Nowe pomysły </b>
|
||||
|
||||
Zdecydowana większość ulepszeń zawartych w każdym wydaniu pochodzi od społeczności. Jeśli Twoim zdaniem brakuje czegoś, co można zrobić lepiej, poinformuj nas o tym. Niezależnie od tego, czy jest to dołączenie brakującego sterownika sprzętu, czy aplikacji, która powinna być częścią standardowej instalacji, czy też masz inne pomysły, jak ulepszyć CachyOS, zawsze jesteśmy zainteresowani ich usłyszeniem.
|
||||
|
||||
<b> Grafika </b>
|
||||
|
||||
Jeśli masz talent do projektowania graficznego i chcesz wnieść swój wkład w projekt, prześlij nam swoje kreacje i grafiki. Niezależnie od tego, czy jest to prosta tapeta, zestaw ikon, ekran powitalny, czy nawet nowe logo, zawsze jesteśmy zainteresowani usłyszeniem od Ciebie o nowej grafice.
|
||||
|
||||
<b> Kod </b>
|
||||
|
||||
Większość naszego kodu jest pisana w QT, C ++, Pythonie, HTML5 / CSS i BASH. Używamy również Gita do kontroli wersji i PKGBUILD do pakowania. Jeśli czujesz się komfortowo z tymi technologiami, nie wahaj się rzucić okiem na kod. Jeśli myślisz, że możesz ulepszyć nasze aplikacje lub napisać nowe, nie wahaj się zasugerować łatek lub rozwidlić nasze repozytoria git.
|
|
@ -1,43 +0,0 @@
|
|||
<big> Obsługa sprzętu </big>
|
||||
|
||||
CachyOS nie tylko obsługuje instalację wielu jąder (wybieranych z zaawansowanych opcji na ekranie startowym), ale także zapewnia dostęp do najnowszych jąder „bleeding edge”. Można to zrobić za pomocą modułu Jądro w graficznym menedżerze ustawień CachyOS lub za pomocą wiersza poleceń przy użyciu polecenia mhwd-kernel (CachyOS Hardware Detection).
|
||||
|
||||
Te narzędzia CachyOS automatycznie zaktualizują nowo zainstalowane jądro wraz z wszystkimi modułami aktualnie używanymi z istniejącym jądrem. Na przykład, gdybyś zaktualizował jądro z 3.18 do 4.1, mhwd-kernel automatycznie zainstaluje kompilacje jądra 4.1 i wszystkie moduły używane z jądrem 3.18. Co ty na to!
|
||||
|
||||
Możesz skonfigurować swój sprzęt za pomocą modułu wykrywania sprzętu w Menedżerze ustawień lub alternatywnie za pomocą aplikacji MHWD z linii komend. Za pomocą tych narzędzi możesz zainstalować na przykład sterowniki graficzne, bezpłatne i zastrzeżone.
|
||||
|
||||
<big> Uzyskiwanie pomocy </big>
|
||||
|
||||
Chociaż CachyOS jest zaprojektowany tak, aby działał jak najlepiej „po wyjęciu z pudełka”, nie twierdzimy, że jest idealny. Może się zdarzyć, że coś pójdzie nie tak, możesz mieć pytania i chcieć dowiedzieć się więcej lub po prostu chcesz dostosować CachyOS do swoich upodobań. Ta strona zawiera szczegółowe informacje na temat dostępnych zasobów, które mogą Ci pomóc!
|
||||
|
||||
<b> Szukaj w internecie </b>
|
||||
|
||||
Być może pierwszym miejscem, w którym należy szukać ogólnej pomocy dla systemu Linux, jest skorzystanie z ulubionej wyszukiwarki. Po prostu uwzględnij w zapytaniu słowa takie jak „Linux”, „CachyOS” lub „Arch”.
|
||||
|
||||
Ponieważ CachyOS jest oparty na Arch Linux, przewodniki i porady zaprojektowane dla Arch zwykle dotyczą również CachyOS.
|
||||
|
||||
<b> Przeszukaj fora </b>
|
||||
|
||||
Aby uzyskać konkretną pomoc dotyczącą CachyOS, mamy dedykowane forum internetowe, na którym możesz wyszukiwać tematy lub tworzyć własne! Jest to prawdopodobnie kolejne najlepsze miejsce do współpracy, dyskusji i pomocy. Poproś o pomoc, podziel się swoimi przemyśleniami lub przedstaw kilka sugestii. Nie wstydź się!
|
||||
|
||||
Forum CachyOS jest podzielone na pod-fora dla różnych tematów i środowisk, prosimy o wysłanie zapytania w odpowiednim miejscu!
|
||||
|
||||
- <a href="https://forum.cachyos.org"> Oficjalne Forum CachyOS</a>
|
||||
|
||||
<b> Dołącz do nas na Telegram </b>
|
||||
|
||||
Inną opcją jest dołączenie do nas na Telegram.
|
||||
|
||||
<big> Inne zasoby </big>
|
||||
|
||||
- <a href="https://aur.archlinux.org"> Repozytorium AUR </a> - Dodatkowe oprogramowanie, którego nie ma w zwykłych repozytoriach, zbudowane ze źródeł.
|
||||
- <a href="https://wiki.cachyos.org"> CachyOS Wiki </a> - Oficjalna wiki CachyOS.
|
||||
- <a href="http://wiki.archlinux.org"> Arch Wiki </a> - Oficjalna wiki Arch.
|
||||
|
||||
<big> Sugestie </big>
|
||||
|
||||
Masz sugestię, jak możemy ulepszyć CachyOS? Znalazłeś coś, co chcesz uwzględnić, lub chcesz pomóc? Daj nam znać, publikując swoje sugestie na forum lub wpadnij na IRC.
|
||||
|
||||
Dziękujemy!
|
||||
|
||||
Mamy nadzieję, że spodoba Ci się CachyOS!
|
|
@ -1,37 +0,0 @@
|
|||
<big>CachyOS 23.05</big>
|
||||
|
||||
To nasze piąte wydanie w 2023 roku.
|
||||
Zakończyliśmy naszą "Migrację Git" i to wydanie odzwierciedla najnowsze zmiany w układzie repozytorium.
|
||||
Repozytorium "cachyos-v3" zawiera teraz tylko pakiety CachyOS, takie jak jądra i niestandardowe zoptymalizowane pakiety (python, gcc, glibc, ...).
|
||||
Przekompilowane pakiety znajdują się teraz w repozytoriach "cachyos-core-v3" i "cachyos-extra-v3".
|
||||
Środowisko "Qtile" Desktop również otrzymało kilka poprawek i zmian. Podziękowania dla @Array
|
||||
Calamares otrzymało kilka minimalnych poprawek, a @NextWorks zaktualizował nasz slajd calamares, aby odzwierciedlał zmiany w dostarczonych środowiskach graficznych.
|
||||
Jak zawsze pojawiły się również duże aktualizacje pakietów, takie jak linux-cachyos 6.3, python 3.11, cachy-browser 113.0.2 i mesa 23.1.1.
|
||||
W następnym miesiącu rozpoczniemy migrację na nowy serwer i będziemy pracować nad zapewnieniem pełnej przebudowy x86-64-v4.
|
||||
W następnym wydaniu planowana jest również przeróbka instalacji sieciowej, aby ułatwić instalację "czystej" bez pakietów związanych z CachyOS.
|
||||
|
||||
<big>Nowe funkcje:</big>
|
||||
|
||||
- Układ migracji CachyOS Git jest teraz odzwierciedlony w instalacji
|
||||
- chwd (mhwd) otrzymał wiele poprawek
|
||||
- Pacman: Dodaliśmy funkcję, która umożliwia dostarczenie wiadomości naszym użytkownikom przed aktualizacją.
|
||||
- Calamares został zsynchronizowany z upstream
|
||||
- Aktualizacje pakietów: linux-cachyos 6.3.4, cachy-browser 113.0.1, mesa 23.1.1, python 3.11
|
||||
|
||||
<big>Naprawy błędów:</big>
|
||||
|
||||
- netinstall: minimalne poprawki spowodowane zmianami pakietów
|
||||
- Slajdy: Slajd 6 został zaktualizowany, aby odzwierciedlić najnowsze zmiany.
|
||||
|
||||
Pobieranie można znaleźć w naszych mirrorach lub sourceforge
|
||||
|
||||
https://mirror.cachyos.org/ISO/
|
||||
https://sourceforge.net/projects/cachyos-arch/files/
|
||||
|
||||
Jeśli chcesz nas wesprzeć, możesz przekazać darowiznę, aby pomóc pokryć nasze miesięczne koszty serwerów.
|
||||
|
||||
https://paypal.me/pttrr
|
||||
https://www.patreon.com/CachyOS
|
||||
|
||||
Dzięki,
|
||||
The CachyOS Zespół
|
|
@ -1,37 +1,67 @@
|
|||
<big> Спасибо за вашу поддержку </big>
|
||||
<big>Поддержка</big>
|
||||
|
||||
Значительную поддержку CachyOS Linux получает от сообщества пользователей, и мы хотели бы поблагодарить каждого участника за участие. Мы развиваемся уверенными темпами, и благодаря вам наша система становится лучше с каждым днем.
|
||||
Уважаемые пользователи и поклонники Open Source программного обеспечения.
|
||||
|
||||
Принять участие в развитии CachyOS легко. В зависимости от ваших навыков и возможностей вы можете помочь CachyOS одним или несколькими способами:
|
||||
Я обращаюсь к Вам с просьбой о финансовой поддержке. В течение последних 1,5 лет я уделяла свое свободное время разработке дистрибутива операционной системы Linux, и я хотела бы поделиться с вами, почему эта работа столь важна и почему ваше пожертвование имеет значение.
|
||||
|
||||
<big> Поддержка и продвижение </big>
|
||||
Open source программное обеспечение (ПО) играет ключевую роль в современном мире, обеспечивая свободу использования, изучения, изменения и распространения программ. Это значит, что каждый, кто использует Open Source ПО, имеет возможность адаптировать его под свои нужды и улучшать его для всех пользователей.
|
||||
|
||||
<b> Упоминание в разговоре </b>
|
||||
Мой проект - дистрибутив операционной системы Linux, является одним из примеров такого Open Source ПО. Я стремлюсь создать надежную и удобную операционную систему, предоставляя пользователям возможность выбора и контроля над своими компьютерами. Линукс основан на открытых стандартах и совместной разработке, что делает его доступным для всех без ограничений коммерческих лицензий.
|
||||
|
||||
Если вам нравится CachyOS, пусть люди знают об этом. Напишите отзыв и опубликуйте его на distrowatch.com. Обсудите ее со своими друзьями, коллегами, родственниками и людьми вокруг вас.
|
||||
Однако разработка и поддержка Open Source программного обеспечения требуют ресурсов - времени, энергии и, конечно же, финансовых средств. Ваши пожертвования помогут мне продолжать работать над проектом, улучшать его функциональность, исправлять ошибки и обеспечивать безопасность.
|
||||
|
||||
<b> Присоединение к сообществу </b>
|
||||
Финансовая поддержка позволит мне также уделить больше времени на разработку новых функций, улучшение пользовательского интерфейса и оптимизацию системы в целом. Без вашей поддержки мой проект может не достичь своего полного потенциала и не принести пользу сообществу.
|
||||
|
||||
CachyOS - это не просто операционная система, это динамичное сообщество людей, которым свободный и открытый проект дарит удовольствие, является местом общения и взаимодействия с единомышленниками. Не важно помогаете ли вы другим людям решать возникшие у них проблемы, давая им возможность почувствовать себя как дома, или просто общаетесь с другими пользователями CachyOS, мы рекомендуем вам присоединиться к сообществу и принять посильное участие в создании CachyOS.
|
||||
Все собранные пожертвования будут вложены в развитие проекта: оплата домена, хостинга, обновление оборудования, проведение тестирования и разработка новых функций. Будьте уверены, что каждый рубль, доллар, евро, пожертвованный вами, будет использован эффективно и ответственно.
|
||||
|
||||
<b> Помощь другим </b>
|
||||
Я призываю Вас поддержать мою работу по разработке дистрибутива операционной системы Linux финансово. Ваше пожертвование будет оценено, и вместе мы сможем продолжить развитие Open Source ПО и сделать мир более открытым, свободным и доступным для всех.
|
||||
|
||||
Если у вас есть свободное время и вы хотите помочь другим пользователям в решении технических проблем, вам следует серьезно подумать о том, чтобы читать форумы и/или присоединяться к каналу IRC и помогать другим пользователям CachyOS решать проблемы, особенно если вы знаете, как их исправить.
|
||||
С уважением, Валерия.
|
||||
|
||||
<a href="https://www.tinkoff.ru/cf/7OmVoFjdFNI">Поддержать проект</a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<big>А также</big>
|
||||
|
||||
Принять участие в развитии Melawy Linux легко. В зависимости от ваших навыков и возможностей Вы можете помочь Melawy Linux одним или несколькими способами:
|
||||
|
||||
<big>Поддержка и продвижение</big>
|
||||
|
||||
<b>Упоминание в разговоре</b>
|
||||
|
||||
Если Вам нравится Melawy Linux, пусть люди знают об этом. Напишите отзыв и опубликуйте его на distrowatch.com. Обсудите ее со своими друзьями, коллегами, родственниками и людьми вокруг Вас.
|
||||
|
||||
<b>Присоединение к сообществу</b>
|
||||
|
||||
Melawy Linux - это не просто операционная система, это также сообщество людей, которым свободный и открытый проект дарит удовольствие, является местом общения и взаимодействия с единомышленниками. Не важно помогаете ли Вы другим людям решать возникшие у них проблемы, давая им возможность почувствовать себя как дома, или просто общаетесь с другими пользователями Melawy Linux, мы рекомендуем Вам присоединиться к сообществу и принять посильное участие в создании Melawy Linux.
|
||||
|
||||
<b>Помощь другим</b>
|
||||
|
||||
Если у Вас есть свободное время и Вы хотите помочь другим пользователям в решении технических проблем, Вам следует серьезно подумать о том, чтобы читать форумы и помогать другим пользователям Melawy Linux решать проблемы, особенно если Вы знаете, как их исправить.
|
||||
|
||||
<big>Участие в разработке</big>
|
||||
|
||||
<b> Отчеты об ошибках </b>
|
||||
<b>Отчеты об ошибках</b>
|
||||
|
||||
Если во время использования CachyOS вы заметили что-то, что не работает должным образом, сообщите нам. Проблема, которую вы обнаружили, скорее всего, затронет и других. Чем раньше мы о ней узнаем, тем скорее мы сможем ее исправить.
|
||||
Если во время использования Melawy Linux Вы заметили что-то, что не работает должным образом, сообщите нам. Проблема, которую Вы обнаружили, скорее всего, затронет и других. Чем раньше мы о ней узнаем, тем скорее мы сможем ее исправить.
|
||||
|
||||
<b> Новые идеи </b>
|
||||
<b>Новые идеи</b>
|
||||
|
||||
Подавляющее большинство улучшений, включенных в каждый выпуск, поступает от сообщества. Если есть что-то, что, по вашему мнению, отсутствует или это можно сделать лучше, сообщите нам. Является ли это включением отсутствующего драйвера оборудования или программным приложением, которое должно быть частью официального репозитория, или если у вас есть какие-то другие идеи о том, как сделать CachyOS лучше, нам всегда интересно о них узнать.
|
||||
Подавляющее большинство улучшений, включенных в каждый выпуск, поступает от сообщества. Если есть что-то, что, по Вашему мнению, отсутствует или это можно сделать лучше, сообщите нам. Является ли это включением отсутствующего драйвера оборудования или программным приложением, которое должно быть частью официального репозитория, или если у Вас есть какие-то другие идеи о том, как сделать Melawy Linux лучше, нам всегда интересно о них узнать.
|
||||
|
||||
<b> Оформление </b>
|
||||
<b>Оформление</b>
|
||||
|
||||
Если вы обладаете талантом в графическом дизайне и готовы внести свой вклад в проект, отправьте нам свои работы и иллюстрации. Будь то простые обои, набор значков, заставки или даже новый логотип. Знать ваше видение дизайна нам всегда интересно.
|
||||
Если Вы обладаете талантом в графическом дизайне и готоВы внести свой вклад в проект, отправьте нам свои работы и иллюстрации. Будь то простые обои, набор значков, заставки или даже новый логотип. Знать Ваше видение дизайна нам всегда интересно.
|
||||
|
||||
<b> Программирование </b>
|
||||
<b>Программирование</b>
|
||||
|
||||
Большая часть нашей разработки выполняется в QT, C ++, Python, HTML5 / CSS и BASH. Мы также используем Git для контроля версий и PKGBUILD для упаковки. Если вам удобно пользоваться этими технологиями, не стесняйтесь взглянуть на наш код. Если вы думаете, что можете улучшить наши приложения или написать новые, не стесняйтесь предлагать исправления или форкать наши репозитории git.
|
||||
Большая часть нашей разработки выполняется в QT, C++, Python, HTML5 / CSS и BASH. Мы также используем Git для контроля версий и PKGBUILD для упаковки. Если Вам удобно пользоваться этими технологиями, не стесняйтесь взглянуть на наш код. Если Вы думаете, что можете улучшить наши приложения или написать новые, не стесняйтесь предлагать исправления или форкать наши репозитории git.
|
||||
|
|
|
@ -1,49 +1,26 @@
|
|||
<big>Управление оборудованием</big>
|
||||
|
||||
CachyOS поддерживает не только выбор загрузки необходимого ядра Линукс (в дополнительных опциях на экране загрузки) среди нескольких установленных, но и позволяет самостоятельно установить любую из понравившихся (даже самую последнюю) версию. Это можно сделать с помощью модуля <b>Ядро</b> в графическом менеджере настроек CachyOS или посредством команды <i>mhwd-kernel</i> (CachyOS Hardware Detection) в терминале.
|
||||
|
||||
Данный инструмент автоматически обновит вновь установленное ядро, а также все дополнительные модули, уже использующиеся на этот момент с существующим ядром. Например, если вы обновляете ядро с версии 3.18 на версию 4.1, <i>mhwd-kernel</i> автоматически включит в сборку ядра 4.1 все модули, используемые с ядром 3.18.
|
||||
|
||||
Оборудование можно настроить через модуль <b>Конфигурация оборудования</b> в Диспетчере настроек или с помощью команды <i>mhwd</i> в терминале. С помощью этих инструментов можно, например, установить драйверы для видеокарты (как свободные, так и проприетарные).
|
||||
|
||||
<big>Получение справки</big>
|
||||
|
||||
Хотя CachyOS призван корректно работать, что называется, «из коробки», мы не станем утверждать, что он совершенен. Бывают случаи, когда что-то идет не так, у вас могут возникнуть вопросы и желание узнать больше или вы просто захотите настроить систему по своему вкусу. На этой странице содержится информация о некоторых доступных ресурсах, которые помогут вам!
|
||||
Хотя Melawy Linux призван корректно работать, что называется, «из коробки», мы не станем утверждать, что он совершенен. Бывают случаи, когда что-то идет не так, у Вас могут возникнуть вопросы и желание узнать больше или Вы просто захотите настроить систему по своему вкусу. На этой странице содержится информация о некоторых доступных ресурсах, которые помогут вам!
|
||||
|
||||
<b>Поищите в Интернете</b>
|
||||
|
||||
Возможно, первое место для поиска общей помощи Linux - это использование вашей любимой поисковой системы. Просто добавьте в ваш поисковый запрос такие слова, как «Linux», «CachyOS» или «Arch».
|
||||
Возможно, первое место для поиска общей помощи Linux - это использование вашей любимой поисковой системы. Просто добавьте в ваш поисковый запрос такие слова, как «Linux», «Melawy Linux» или «Arch».
|
||||
|
||||
Поскольку CachyOS базируется на Arch Linux, руководства и советы, предназначенные для Arch, обычно подходят и к CachyOS.
|
||||
Поскольку Melawy Linux базируется на Arch Linux, руководства и советы, предназначенные для Arch, обычно подходят и к Melawy Linux.
|
||||
|
||||
<b>Загляните на форум</b>
|
||||
<big>Другие ресурсы</big>
|
||||
|
||||
Для получения конкретной помощи в CachyOS у нас есть специализированный главный онлайн-форум, где вы можете искать темы или создавать их самостоятельно! Вероятно, это лучшее место для сотрудничества, обсуждения и помощи. Попросите о помощи, поделитесь своими мыслями или оставьте отзыв или предложение. Стеснятся не надо!
|
||||
|
||||
Форум CachyOS разделен на подфорумы различной тематики, поэтому желательно размещать свой запрос в соответствующем месте!
|
||||
|
||||
<b>Присоединяйтесь к нам в Telegram</b>
|
||||
|
||||
Другой вариант - общаться с нами в чате Telegram.
|
||||
|
||||
<b>Подпишитесь на список рассылки</b>
|
||||
|
||||
Еще один способ получить помощь - отправить вопрос по электронной почте в список рассылки CachyOS (можно просматривать историю прошлых обсуждений). Просто зарегистрируйтесь в списке, который для вас наиболее предпочтителен, и следуйте инструкциям. Существует список, посвященный нескольким темам!
|
||||
|
||||
<big> Другие ресурсы </big>
|
||||
|
||||
- <a href="https://aur.archlinux.org"> Репозиторий AUR </a> - Дополнительное программное обеспечение, отсутствующее в обычных репозиториях, собранное из исходного кода.
|
||||
- <a href="https://wiki.cachyos.org"> CachyOS Wiki </a> - Официальная wiki для CachyOS.
|
||||
- <a href="http://wiki.archlinux.org"> Arch Wiki </a> - Официальная wiki для Arch.
|
||||
- <a href="https://aur.archlinux.org">Репозиторий AUR</a> - Дополнительное программное обеспечение, отсутствующее в обычных репозиториях, собранное из исходного кода.
|
||||
- <a href="http://wiki.archlinux.org">Arch Wiki</a> - Официальная wiki для Arch.
|
||||
|
||||
<big>Русскоязычные ресурсы</big>
|
||||
|
||||
Общение на перечисленных выше ресурсах ведется на английском языке и подойдет вам, если вы им владеете. Даже не смотря на то, что возможности различных инструментов по автоматическому переводу шагнули далеко вперед, всегда привычнее общаться на языке, на котором не только говоришь, но и думаешь. Если для вас таким языком является Русский, вам могут быть интересны неофициальные группы и сообщества CachyOS в России.
|
||||
Общение на перечисленных выше ресурсах ведется на английском языке и подойдет вам, если Вы им владеете. Даже не смотря на то, что возможности различных инструментов по автоматическому переводу шагнули далеко вперед, всегда привычнее общаться на языке, на котором не только говоришь, но и думаешь. Если для Вас таким языком является Русский, вам моет быть интересенн официальное дискорд-сообщество Melawy Linux в России.
|
||||
|
||||
<big> Предложения </big>
|
||||
<big>Предложения</big>
|
||||
|
||||
Есть предложение о том, как сделать CachyOS лучше? Нашли что-то, что хотите включить в систему, или просто хотите помочь? Сообщите нам, разместив свое предложение на главном форуме или заглянув в IRC.
|
||||
Есть предложение о том, как сделать Melawy Linux лучше? Нашли что-то, что хотите включить в систему, или просто хотите помочь? Сообщите нам, разместив свое предложение в дискорд-сообществе Melawy Linux.
|
||||
|
||||
Спасибо Вам за Ваш выбор!
|
||||
|
||||
Надеемся, вам понравится CachyOS!
|
||||
Надеемся, вам понравится Melawy Linux!
|
||||
|
|
|
@ -1,37 +1,44 @@
|
|||
<big>CachyOS 23.05</big>
|
||||
<big>Релиз дистрибутива Melawy Linux 15.11.2023</big>
|
||||
|
||||
Это наш пятый релиз в 2023 году.
|
||||
Мы завершили нашу "миграцию Git", и этот релиз отражает последние изменения в расположении репозитория.
|
||||
Репозиторий "cachyos-v3" теперь содержит только пакеты CachyOS, такие как ядра и оптимизированные пакеты (python, gcc, glibc, ...).
|
||||
Перекомпилированные пакеты теперь находятся в репозиториях "cachyos-core-v3" и "cachyos-extra-v3".
|
||||
Среда рабочего стола "Qtile" также получила несколько исправлений и изменений. Спасибо @Array
|
||||
Calamares получил несколько минимальных исправлений, а @NextWorks обновил наш слайд по calamares, чтобы отразить изменения в предоставляемых средах рабочего стола.
|
||||
Как всегда, были обновлены такие пакеты, как linux-cachyos 6.3, python 3.11, cachy-browser 113.0.2 и mesa 23.1.1.
|
||||
В следующем месяце мы начнем миграцию на новый сервер и будем работать над обеспечением полной пересборки x86-64-v4.
|
||||
Также в следующем релизе планируется переработать netinstallation, чтобы упростить установку "чистой", без связанных с CachyOS пакетов, системы.
|
||||
Тихо и почти незаметно спустя 1,5+ года работы, 30.10.2023 вышел первый релиз операционно системы Melawy Linux.
|
||||
|
||||
<big>Особенности:</big>
|
||||
<big>Что внутри?</big>
|
||||
|
||||
- Макет CachyOS Git Migration теперь отражается в установке
|
||||
- chwd (mhwd) получил множество исправлений
|
||||
- Pacman: Мы добавили функцию, которая позволяет предоставлять сообщение нашим пользователям перед обновлением
|
||||
- Calamares синхронизирован с восходящим потоком
|
||||
- Обновления пакетов: linux-cachyos 6.3.4, cachy-browser 113.0.1, mesa 23.1.1, python 3.11
|
||||
- Установка с диска и по сети с выбором загрузчика rEFInd, systemd-boot, Grub2 в одном установщике.
|
||||
- Возможность выбрать и установить версию драйверов для видеокарты Nvidia:
|
||||
- установка с диска - драйверы только для новых видеокарт
|
||||
- установка по сети - выбор драйвера вручную
|
||||
|
||||
<big>Исправления ошибок:</big>
|
||||
- Нестандартное ядро - с патчами на производительность и защиту от Meltdown и Spectre и др.
|
||||
- Сборщик начального окружения ядра с помощью модульного, автоматизированного Dracut.
|
||||
- Генерация цифровых подписей и подписывания ядра для старта через Secure Boot:
|
||||
- Позже будет автоматизировано подписывание загрузчика и проверен полный цикл загрузки через Secure Boot.
|
||||
- Полный этап загрузки через Secure Boot защищает от вирусов начиная с загрузчика и загрузки ядра.
|
||||
|
||||
- netinstall: минимальные исправления в связи с изменением пакета
|
||||
- Слайды: Слайд 6 был обновлен, чтобы отразить последние изменения
|
||||
- Поддержка полнодискового шифрования Luks2 последним алгоритмом Аrgon2id.
|
||||
- Красивое, информативное визуальное оформление:
|
||||
- экран выбора заргузки операционной системы
|
||||
- этап загрузки ядра и базового окружения initrd
|
||||
- вход в систему
|
||||
- рабочее окружение:
|
||||
- стили
|
||||
- цвет
|
||||
- иконки
|
||||
- курсоры
|
||||
|
||||
Вы можете найти загрузку на наших зеркалах или sourceforge.
|
||||
- Не надоедающий апплет проверки обновлений:
|
||||
- автоматическая проверка при входе через 10 секунд - после того как всё запустится
|
||||
- кнопка принудительной проверки и кнопка установки
|
||||
|
||||
https://mirror.cachyos.org/ISO/
|
||||
https://sourceforge.net/projects/cachyos-arch/files/
|
||||
- Предустановленные средства управления оборудованием AMD через пользовательский интерфейс и видеокартой Nvidia.
|
||||
- Заранее выбранный большой список программ, которые можно сразу использовать.
|
||||
- Возможность использовать все эти программы прямо на Live образе, без установки системы на диск.
|
||||
- И другое...
|
||||
|
||||
Если вы хотите поддержать нас, вы можете сделать пожертвование, чтобы помочь покрыть наши ежемесячные расходы на сервер.
|
||||
Вы можете скачать дистрибутив с <a href="https://sourceforge.net/projects/melawy-linux/files/">SourceForge</a>.
|
||||
|
||||
https://paypal.me/pttrr
|
||||
https://www.patreon.com/CachyOS
|
||||
Если Вы хотите поддержать мою работу, то можете сделать <a href="https://www.tinkoff.ru/cf/7OmVoFjdFNI">пожертвование</a>.
|
||||
|
||||
Спасибо,
|
||||
Команда CachyOS
|
||||
Спасибо за Вашу поддержку!
|
||||
|
||||
С уважением, Валерия Фадеева.
|
||||
|
|
|
@ -1,21 +1,25 @@
|
|||
{
|
||||
"default_locale": "en",
|
||||
"autostart_path": "~/.config/autostart/cachyos-hello.desktop",
|
||||
"data_path": "/usr/share/cachyos-hello/data/",
|
||||
"desktop_path": "/usr/share/applications/cachyos-hello.desktop",
|
||||
"autostart_path": "~/.config/autostart/melawy-welcome.desktop",
|
||||
"data_path": "/usr/share/melawy-welcome/data/",
|
||||
"desktop_path": "/usr/share/applications/melawy-welcome.desktop",
|
||||
"installer_path": "/usr/bin/calamares",
|
||||
"live_path": "/run/archiso/bootmnt/arch",
|
||||
"locale_path": "/usr/share/locale/",
|
||||
"logo_path": "/usr/share/icons/hicolor/scalable/apps/",
|
||||
"save_path": "~/.config/cachyos-hello.json",
|
||||
"save_path": "~/.config/melawy-welcome.json",
|
||||
"ui_path": "/usr/share/melawy-welcome/ui/melawy-welcome.glade",
|
||||
"style_path": "/usr/share/melawy-welcome/ui/style.css",
|
||||
"urls": {
|
||||
"development": "https://github.com/cachyos",
|
||||
"software": "https://github.com/cachyos/cachyos-pkgbuilds",
|
||||
"donate": "https://www.patreon.com/CachyOS",
|
||||
"forum": "https://forum.cachyos.org",
|
||||
"telegram": "https://t.me/+oR-kWT47vRdmMDli",
|
||||
"discord": "https://discord.gg/qJqj94uFwE",
|
||||
"reddit": "https://www.reddit.com/r/cachyos",
|
||||
"twitter": "https://twitter.com/cachyos",
|
||||
"wiki": "https://wiki.cachyos.org"
|
||||
"wiki": "https://wiki.archlinux.org",
|
||||
"forum": "https://sourceforge.net/p/melawy-linux/discussion/",
|
||||
"software": "https://git.melawy.ru/Melawy-Linux",
|
||||
"development": "https://gitlab.com/melawy",
|
||||
"donate": "https://melawy.ru/donate",
|
||||
"website": "https://melawy.ru",
|
||||
"youtube": "https://youtube.com/@Melawy",
|
||||
"mastodon": "https://techhub.social/@Melawy",
|
||||
"discord": "https://discord.gg/725zXx7RhJ",
|
||||
"gitlab": "https://gitlab.com/melawy"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,54 +0,0 @@
|
|||
# About dialog
|
||||
about-dialog-title = CachyOS Hello
|
||||
about-dialog-comments = Willkommensdialog für CachyOS
|
||||
|
||||
# Tweaks page
|
||||
tweaks = Tweaks
|
||||
fixes = Fixes
|
||||
applications = Anwendungen
|
||||
removed-db-lock = Pacman db lock wurde entfernt!
|
||||
lock-doesnt-exist = Pacman db lock existiert nicht!
|
||||
orphans-not-found = Keine verwaisten Pakete gefunden!
|
||||
package-not-installed = Das Paket '{$package_name}' wurde nicht installiert!
|
||||
|
||||
# Tweaks page (tweaks)
|
||||
tweak-enabled-title = {$tweak} aktiviert
|
||||
|
||||
# Tweaks page (fixes)
|
||||
remove-lock-title = Entferne Datenbanksperre
|
||||
reinstall-title = Alle Pakete neu installieren
|
||||
refresh-keyrings-title = Keyring aktualisieren
|
||||
update-system-title = System-Aktualisierung
|
||||
remove-orphans-title = Nicht verwendete Pakete entfernen
|
||||
clear-pkgcache-title = Paket-Cache löschen
|
||||
rankmirrors-title = Rank Mirrors
|
||||
|
||||
# Main Page (buttons)
|
||||
button-about-tooltip = Über
|
||||
button-web-resource-tooltip = Web-Ressource
|
||||
button-development-label = Entwicklung
|
||||
button-software-label = Software
|
||||
button-donate-label = Spenden
|
||||
button-forum-label = Forum
|
||||
button-installer-label = Installation starten
|
||||
button-involved-label = Mitmachen
|
||||
button-readme-label = Lies mich
|
||||
button-release-info-label = Versionshinweise
|
||||
button-wiki-label = Wiki
|
||||
|
||||
# Main Page (sections)
|
||||
section-docs = DOKUMENTATION
|
||||
section-installer = INSTALLATION
|
||||
section-support = UNTERSTÜTZUNG
|
||||
section-project = PROJEKT
|
||||
|
||||
# Main Page (body)
|
||||
offline-error = Die Online-Installation kann nicht gestartet werden! Keine Internetverbindung
|
||||
tweaksbrowser-label = Apps/Tweaks
|
||||
appbrowser-label = Apps installieren
|
||||
launch-start-label = Beim Systemstart ausführen
|
||||
welcome-title = Willkommen bei CachyOS!
|
||||
welcome-body =
|
||||
Danke, dass Sie sich unserer Community anschließen!
|
||||
|
||||
Wir, die CachyOS-Entwickler, hoffen, dass Sie es genauso sehr genießen werden CachyOS zu benutzen, wie wir es genießen, es zu entwickeln. Die Links unten werden Ihnen helfen sich in Ihrem neuen Betriebssystem zurechtzufinden. Genießen Sie diese Erfahrung und zögern Sie nicht Ihr Feedback an uns zu senden.
|
|
@ -1,6 +1,6 @@
|
|||
# About dialog
|
||||
about-dialog-title = CachyOS Hello
|
||||
about-dialog-comments = Welcome screen for CachyOS
|
||||
about-dialog-title = Melawy Welcome
|
||||
about-dialog-comments = Welcome screen for Melawy Linux
|
||||
|
||||
# Tweaks page
|
||||
tweaks = Tweaks
|
||||
|
@ -11,6 +11,17 @@ lock-doesnt-exist = Pacman db lock does not exist!
|
|||
orphans-not-found = No orphan packages found!
|
||||
package-not-installed = Package '{$package_name}' has not been installed!
|
||||
|
||||
# Dns Connections page
|
||||
dns-settings = DNS Settings
|
||||
select-connection = Select Connection:
|
||||
select-dns-server = Select DNS server:
|
||||
apply = Apply
|
||||
reset = Reset
|
||||
dns-server-changed = DNS server was successfully changed!
|
||||
dns-server-failed = Failed to set DNS server!
|
||||
dns-server-reset = DNS server has been reset!
|
||||
dns-server-reset-failed = Failed to reset DNS server!
|
||||
|
||||
# Tweaks page (tweaks)
|
||||
tweak-enabled-title = {$tweak} enabled
|
||||
|
||||
|
@ -22,6 +33,7 @@ update-system-title = System update
|
|||
remove-orphans-title = Remove orphans
|
||||
clear-pkgcache-title = Clear package cache
|
||||
rankmirrors-title = Rank mirrors
|
||||
dnsserver-title = Change DNS server
|
||||
|
||||
# Main Page (buttons)
|
||||
button-about-tooltip = About
|
||||
|
@ -47,8 +59,8 @@ offline-error = Unable to start online installation! No internet connection
|
|||
tweaksbrowser-label = Apps/Tweaks
|
||||
appbrowser-label = Install Apps
|
||||
launch-start-label = Launch at start
|
||||
welcome-title = Welcome to CachyOS!
|
||||
welcome-title = Welcome to Melawy Linux!
|
||||
welcome-body =
|
||||
Thank you for joining our community!
|
||||
|
||||
We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we enjoy building it. The links below will help you get started with your new operating system. So enjoy the experience, and don't hesitate to send us your feedback.
|
||||
We, the Melawy Linux Developers, hope that you will enjoy using Melawy Linux as much as we enjoy building it. The links below will help you get started with your new operating system. So enjoy the experience, and don't hesitate to send us your feedback.
|
|
@ -1,30 +0,0 @@
|
|||
# About dialog
|
||||
about-dialog-title = CachyOS Hello
|
||||
about-dialog-comments = Ekran powitalny CachyOS
|
||||
|
||||
# Main Page (buttons)
|
||||
button-about-tooltip = O programie
|
||||
button-web-resource-tooltip = Zasób sieciowy
|
||||
button-development-label = Rozwój oprogramowania
|
||||
button-software-label = Software
|
||||
button-donate-label = Wesprzyj
|
||||
button-forum-label = Forum
|
||||
button-installer-label = Uruchom instalator
|
||||
button-involved-label = Zaangażuj się
|
||||
button-readme-label = Czytaj to
|
||||
button-release-info-label = Informacje o wydaniu
|
||||
button-wiki-label = Wiki
|
||||
|
||||
# Main Page (sections)
|
||||
section-docs = DOKUMENTACJA
|
||||
section-installer = INSTALACJA
|
||||
section-support = WSPARCIE
|
||||
section-project = PROJEKT
|
||||
|
||||
# Main Page (body)
|
||||
launch-start-label = Uruchamiaj przy starcie
|
||||
welcome-title = Witaj w CachyOS!
|
||||
welcome-body =
|
||||
Dziękujemy za dołączenie do naszej społeczności!
|
||||
|
||||
My, programiści CachyOS, mamy nadzieję, że używanie CachyOS przyniesie Ci tyle radości ile nam jego tworzenie. Poniższe odnośniki pomogą Ci w rozpoczęciu używania nowego systemu operacyjnego. Życzymy miłych wrażeń, nie wahaj się podzielić się z nami swoją opinią.
|
|
@ -1,6 +1,6 @@
|
|||
# About dialog
|
||||
about-dialog-title = CachyOS Hello
|
||||
about-dialog-comments = Приветственный экран CachyOS
|
||||
about-dialog-title = Melawy Welcome
|
||||
about-dialog-comments = Приветственный экран Melawy Linux
|
||||
|
||||
# Tweaks page
|
||||
tweaks = Настройки
|
||||
|
@ -8,8 +8,20 @@ fixes = Исправления
|
|||
applications = Приложения
|
||||
removed-db-lock = Блокировка БД Pacman была снята!
|
||||
lock-doesnt-exist = Pacman БД не заблокирован!
|
||||
orphans-not-found = Потерянные пакеты не найдены!
|
||||
package-not-installed = Пакет '{$package_name}' не был установлен!
|
||||
|
||||
# Dns Connections page
|
||||
dns-settings = Настройки DNS
|
||||
select-connection = Выберите подключение:
|
||||
select-dns-server = Выберите DNS сервер:
|
||||
apply = Применить
|
||||
reset = Сбросить
|
||||
dns-server-changed = DNS-сервер был успешно изменен!
|
||||
dns-server-failed = Не удалось настроить DNS-сервер!
|
||||
dns-server-reset = DNS-сервер был сброшен!
|
||||
dns-server-reset-failed = Не удалось сбросить DNS-сервер!
|
||||
|
||||
# Tweaks page (tweaks)
|
||||
tweak-enabled-title = {$tweak} включен
|
||||
|
||||
|
@ -21,6 +33,7 @@ update-system-title = Обновить систему
|
|||
remove-orphans-title = Удалить orphans
|
||||
clear-pkgcache-title = Очистить кэш пакетов
|
||||
rankmirrors-title = Ранжировать зеркала
|
||||
dnsserver-title = Сменить DNS-сервер
|
||||
|
||||
# Main Page (buttons)
|
||||
button-about-tooltip = О программе
|
||||
|
@ -46,8 +59,8 @@ offline-error = Не удается запустить онлайн-устано
|
|||
tweaksbrowser-label = Приложения/Настройки
|
||||
appbrowser-label = Установить ПO
|
||||
launch-start-label = Автозапуск
|
||||
welcome-title = Добро пожаловать в CachyOS!
|
||||
welcome-title = Добро пожаловать в Melawy Linux!
|
||||
welcome-body =
|
||||
Благодарим Вас за то, что Вы присоединились к нашему сообществу!
|
||||
|
||||
Мы, разработчики CachyOS, надеемся, что пользуясь этой системой, Вы будете испытывать такое же удовольствие, какое мы испытывали, создавая ее. Представленные ниже ссылки помогут Вам начать работу. Наслаждайтесь функционалом CachyOS и оставляйте свои отзывы.
|
||||
Мы, разработчики Melawy Linux, надеемся, что пользуясь этой системой, Вы будете испытывать такое же удовольствие, какое мы испытывали, создавая ее. Представленные ниже ссылки помогут Вам начать работу. Наслаждайтесь функционалом Melawy Linux и оставляйте свои отзывы.
|
Before Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 6.1 KiB |
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="64"
|
||||
height="64"
|
||||
viewBox="0 0 64 64"
|
||||
version="1.1"
|
||||
id="svg193"
|
||||
sodipodi:docname="os_melawylinux.svg"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
inkscape:export-filename="os_melawylinux.png"
|
||||
inkscape:export-xdpi="768"
|
||||
inkscape:export-ydpi="768"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs197" />
|
||||
<sodipodi:namedview
|
||||
id="namedview195"
|
||||
pagecolor="#505050"
|
||||
bordercolor="#eeeeee"
|
||||
borderopacity="1"
|
||||
inkscape:showpageshadow="0"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#505050"
|
||||
showgrid="false"
|
||||
inkscape:zoom="9.1371454"
|
||||
inkscape:cx="19.043147"
|
||||
inkscape:cy="29.87804"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1014"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg193" />
|
||||
<circle
|
||||
style="fill:#000000;fill-opacity:0.5;stroke:none;stroke-width:1.02056"
|
||||
id="path1"
|
||||
cx="32"
|
||||
cy="32"
|
||||
r="32" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#ff5555"
|
||||
fill-opacity="1"
|
||||
d="M 10.947002,39.950461 V 14.652372 h 5.618722 v 2.795521 h 2.823199 v 2.823202 h 2.795522 v -2.823202 h 2.823201 v -2.795521 h 5.618721 V 39.950461 H 25.007646 V 25.889818 h -2.823201 v 2.823199 h -2.795522 v -2.823199 h -2.823199 v 14.060643 z m 22.495646,-2.8232 V 25.889818 h 2.823199 v -2.8232 h 14.060645 v 2.8232 h 2.795521 v 5.618721 H 39.061369 v 5.618722 h 8.441922 v -2.795522 h 5.618722 v 2.795522 h -2.795521 v 2.8232 H 36.265847 v -2.8232 z m 5.618721,-11.237443 v 2.823199 h 8.441922 v -2.823199 z"
|
||||
id="path187"
|
||||
style="stroke-width:1.77143"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#e5444c"
|
||||
fill-opacity="1"
|
||||
d="m 15.650703,50.096012 2.463382,0.02769 v -0.830353 c 0,-0.512051 0.276784,-0.781916 0.830352,-0.802675 0.553569,0.02076 0.830353,0.290624 0.830353,0.802675 v 1.688384 c 0,0.53972 -0.276784,0.802665 -0.830353,0.802665 h -5.784792 c -0.539728,0 -0.802674,-0.262945 -0.802674,-0.802674 l -0.02769,-8.33121 c 0,-0.553568 0.276783,-0.830353 0.830354,-0.830353 h 1.688393 c 0.477451,0 0.747316,0.276785 0.802673,0.830353 z m 5.542606,1.660706 c -0.262944,0 -0.387498,-0.138402 -0.387498,-0.415176 0,-0.08995 0.01382,-0.166071 0.05537,-0.221428 l -0.02769,-0.02769 1.688385,-7.058001 0.276783,-1.190172 0.08303,-0.332141 c 0.110714,-0.422095 0.359819,-0.636604 0.747318,-0.636604 h 0.138401 2.712487 0.1384 c 0.387499,0 0.622766,0.214509 0.71964,0.636604 l 0.08303,0.332141 2.020526,8.248173 c 0.01382,0.07612 0.02769,0.166071 0.02769,0.276784 0,0.276786 -0.138402,0.415177 -0.415178,0.415177 h -2.15892 -0.138402 c -0.373657,0 -0.608925,-0.20759 -0.719639,-0.636604 l -1.74373,-7.113346 -1.660708,7.085679 c -0.110713,0.429016 -0.359819,0.636603 -0.747315,0.636603 z m 3.958016,-0.802673 c -0.04153,0.553567 -0.304462,0.830352 -0.802675,0.830352 -0.553569,0 -0.830352,-0.262946 -0.830352,-0.802675 l -0.02769,-1.688384 c 0,-0.53281 0.276785,-0.802675 0.830353,-0.802675 0.512053,0 0.788837,0.276784 0.830354,0.830353 z m 11.424273,-4.068731 -0.664283,2.740164 -0.276783,1.190174 -0.08303,0.33214 c -0.07612,0.33214 -0.242187,0.539729 -0.498211,0.608926 v 0.02769 h -2.186601 -0.1384 c -0.37366,0 -0.608926,-0.207588 -0.71964,-0.636603 L 31.92564,50.81566 29.905115,42.567487 c -0.02076,-0.0692 -0.02769,-0.16607 -0.02769,-0.276784 0,-0.276784 0.1384,-0.415176 0.415176,-0.415176 h 2.158917 0.138401 c 0.387499,0 0.622766,0.214508 0.719639,0.636604 l 1.300888,5.258901 1.079459,-4.622299 0.138401,-0.608925 c 0.08995,-0.401336 0.311382,-0.615844 0.664281,-0.636604 h 0.166054 c 0.34598,0.02076 0.567406,0.235268 0.664283,0.636604 l 0.138401,0.608925 1.051779,4.511584 1.217852,-5.120509 c 0.110713,-0.422096 0.34598,-0.636604 0.71964,-0.636604 h 0.69196 c 0.276785,0 0.415176,0.138402 0.415176,0.415177 0,0.09688 -0.02076,0.16607 -0.05537,0.221427 v 0.02769 l -1.688384,7.058 -0.276785,1.190173 -0.08302,0.332141 c -0.07613,0.318301 -0.235267,0.51897 -0.470534,0.608926 v 0.02766 h -0.913388 v -0.02769 c -0.242187,-0.08995 -0.401338,-0.290625 -0.470534,-0.608925 l -0.08302,-0.332143 -0.276785,-1.190173 z m 7.978308,0.664283 -2.32499,-4.400872 c -0.07612,-0.14531 -0.110713,-0.290621 -0.110713,-0.442855 0,-0.290622 0.172998,-0.525889 0.525892,-0.691961 0.145308,-0.08995 0.290623,-0.1384 0.442854,-0.1384 l 1.328564,-0.02769 c 0.256027,0 0.470534,0.159144 0.636605,0.470533 l 1.688384,3.34909 1.799098,-3.37677 c 0.166071,-0.311364 0.387499,-0.470515 0.664282,-0.470515 0.124549,0 0.276786,0.04154 0.442855,0.110714 0.332141,0.186829 0.498213,0.429017 0.498213,0.719638 0,0.131476 -0.02769,0.276786 -0.08303,0.442856 l -2.214274,4.345515 v 3.542839 c -0.05539,0.539728 -0.325231,0.802674 -0.802684,0.802674 h -1.688384 c -0.53973,0 -0.802674,-0.262946 -0.802674,-0.802674 z"
|
||||
id="path189"
|
||||
sodipodi:nodetypes="ccscssssccssccsscccccsccscccsscscccsscsccscccccccccscccsscsccccccccccssscccccccccccccccsccccccscscccsssc"
|
||||
style="stroke-width:1.77143" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#96c5f6"
|
||||
fill-opacity="1"
|
||||
d="m 33.726015,20.827288 1.260133,0.01415 v -0.424763 c 0,-0.261938 0.141587,-0.399986 0.424763,-0.410604 0.283176,0.01062 0.424764,0.148666 0.424764,0.410604 v 0.863687 c 0,0.276096 -0.141588,0.410604 -0.424764,0.410604 h -2.959187 c -0.276096,0 -0.410605,-0.134508 -0.410605,-0.410604 l -0.01416,-4.261797 c 0,-0.283176 0.141588,-0.424764 0.424764,-0.424764 h 0.86369 c 0.244239,0 0.382288,0.141588 0.410605,0.424764 z m 5.054688,0.453081 c -0.02124,0.276096 -0.152207,0.410604 -0.396446,0.410604 h -0.863686 c -0.283176,0 -0.424764,-0.134508 -0.424764,-0.410604 v -4.247637 c 0,-0.283175 0.134508,-0.424763 0.410605,-0.424763 h 0.892004 c 0.244239,0.01062 0.375208,0.152206 0.396446,0.424763 z m 2.091962,-3.553857 v 3.582175 c 0,0.254858 -0.141588,0.382286 -0.424764,0.382286 -0.283176,0 -0.424764,-0.134508 -0.424764,-0.410604 v -4.261796 c 0,-0.261938 0.145128,-0.399986 0.438923,-0.410604 h 0.608828 c 0.159286,0 0.290255,0.09203 0.396446,0.269016 l 1.090227,2.91671 v -2.775122 c 0.02832,-0.283176 0.162825,-0.424764 0.410605,-0.424764 h 0.863686 c 0.283176,0 0.424764,0.141588 0.424764,0.424764 l -0.01416,4.261796 c 0,0.276096 -0.138048,0.410604 -0.410605,0.410604 h -1.132703 c -0.23716,0 -0.389367,-0.08849 -0.453081,-0.269016 z m 4.633464,-1.132703 c 0.283175,0 0.431843,0.141588 0.453081,0.424764 v 2.987505 h 2.081342 v -2.987505 c 0,-0.283176 0.141588,-0.424764 0.424764,-0.424764 0.283176,0 0.424763,0.141588 0.424763,0.424764 v 4.261796 c 0,0.276096 -0.141587,0.410604 -0.424763,0.410604 h -2.959187 c -0.283176,0 -0.421225,-0.134508 -0.410605,-0.410604 l -0.01416,-4.261796 c 0,-0.283176 0.141588,-0.424764 0.424765,-0.424764 z m 6.583837,1.968073 0.722098,-1.727373 c 0.09203,-0.159287 0.205303,-0.2407 0.339811,-0.2407 0.07433,0 0.155747,0.02124 0.2407,0.05663 0.169905,0.09557 0.254858,0.219462 0.254858,0.368129 0,0.06725 -0.02124,0.141588 -0.05663,0.22654 l -0.948639,2.237089 0.948639,1.557467 c 0.02832,0.08495 0.04247,0.162827 0.04247,0.226541 0,0.152207 -0.08141,0.276097 -0.2407,0.368128 -0.08495,0.03894 -0.166366,0.05663 -0.240699,0.05663 h -0.679622 c -0.134508,0 -0.2407,-0.07787 -0.325652,-0.240698 l -1.033592,-1.684897 -0.750416,1.699055 c -0.08495,0.162826 -0.198223,0.2407 -0.339811,0.2407 -0.07788,0 -0.152207,-0.02124 -0.22654,-0.0708 -0.180525,-0.08495 -0.269018,-0.201763 -0.269018,-0.353969 0,-0.07433 0.0177,-0.148668 0.05664,-0.226541 l 0.991115,-2.166296 -0.991115,-1.614102 c -0.02832,-0.07433 -0.04247,-0.148667 -0.04247,-0.22654 0,-0.148667 0.08495,-0.269017 0.254858,-0.353969 0.08495,-0.04602 0.162827,-0.0708 0.240699,-0.0708 l 0.665464,-0.01415 c 0.130968,0 0.244239,0.08141 0.339811,0.240699 z M 31.616355,13.737274"
|
||||
id="path191"
|
||||
style="display:inline;stroke-width:0.906163" />
|
||||
</svg>
|
After Width: | Height: | Size: 8.0 KiB |
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="64"
|
||||
height="64"
|
||||
viewBox="0 0 64 64"
|
||||
version="1.1"
|
||||
id="svg193"
|
||||
sodipodi:docname="os_melawylinux.svg"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
inkscape:export-filename="os_melawylinux.png"
|
||||
inkscape:export-xdpi="768"
|
||||
inkscape:export-ydpi="768"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs197" />
|
||||
<sodipodi:namedview
|
||||
id="namedview195"
|
||||
pagecolor="#505050"
|
||||
bordercolor="#eeeeee"
|
||||
borderopacity="1"
|
||||
inkscape:showpageshadow="0"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#505050"
|
||||
showgrid="false"
|
||||
inkscape:zoom="9.1371454"
|
||||
inkscape:cx="19.043147"
|
||||
inkscape:cy="29.87804"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1014"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg193" />
|
||||
<circle
|
||||
style="fill:#000000;fill-opacity:0.5;stroke:none;stroke-width:1.02056"
|
||||
id="path1"
|
||||
cx="32"
|
||||
cy="32"
|
||||
r="32" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#ff5555"
|
||||
fill-opacity="1"
|
||||
d="M 10.947002,39.950461 V 14.652372 h 5.618722 v 2.795521 h 2.823199 v 2.823202 h 2.795522 v -2.823202 h 2.823201 v -2.795521 h 5.618721 V 39.950461 H 25.007646 V 25.889818 h -2.823201 v 2.823199 h -2.795522 v -2.823199 h -2.823199 v 14.060643 z m 22.495646,-2.8232 V 25.889818 h 2.823199 v -2.8232 h 14.060645 v 2.8232 h 2.795521 v 5.618721 H 39.061369 v 5.618722 h 8.441922 v -2.795522 h 5.618722 v 2.795522 h -2.795521 v 2.8232 H 36.265847 v -2.8232 z m 5.618721,-11.237443 v 2.823199 h 8.441922 v -2.823199 z"
|
||||
id="path187"
|
||||
style="stroke-width:1.77143"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#e5444c"
|
||||
fill-opacity="1"
|
||||
d="m 15.650703,50.096012 2.463382,0.02769 v -0.830353 c 0,-0.512051 0.276784,-0.781916 0.830352,-0.802675 0.553569,0.02076 0.830353,0.290624 0.830353,0.802675 v 1.688384 c 0,0.53972 -0.276784,0.802665 -0.830353,0.802665 h -5.784792 c -0.539728,0 -0.802674,-0.262945 -0.802674,-0.802674 l -0.02769,-8.33121 c 0,-0.553568 0.276783,-0.830353 0.830354,-0.830353 h 1.688393 c 0.477451,0 0.747316,0.276785 0.802673,0.830353 z m 5.542606,1.660706 c -0.262944,0 -0.387498,-0.138402 -0.387498,-0.415176 0,-0.08995 0.01382,-0.166071 0.05537,-0.221428 l -0.02769,-0.02769 1.688385,-7.058001 0.276783,-1.190172 0.08303,-0.332141 c 0.110714,-0.422095 0.359819,-0.636604 0.747318,-0.636604 h 0.138401 2.712487 0.1384 c 0.387499,0 0.622766,0.214509 0.71964,0.636604 l 0.08303,0.332141 2.020526,8.248173 c 0.01382,0.07612 0.02769,0.166071 0.02769,0.276784 0,0.276786 -0.138402,0.415177 -0.415178,0.415177 h -2.15892 -0.138402 c -0.373657,0 -0.608925,-0.20759 -0.719639,-0.636604 l -1.74373,-7.113346 -1.660708,7.085679 c -0.110713,0.429016 -0.359819,0.636603 -0.747315,0.636603 z m 3.958016,-0.802673 c -0.04153,0.553567 -0.304462,0.830352 -0.802675,0.830352 -0.553569,0 -0.830352,-0.262946 -0.830352,-0.802675 l -0.02769,-1.688384 c 0,-0.53281 0.276785,-0.802675 0.830353,-0.802675 0.512053,0 0.788837,0.276784 0.830354,0.830353 z m 11.424273,-4.068731 -0.664283,2.740164 -0.276783,1.190174 -0.08303,0.33214 c -0.07612,0.33214 -0.242187,0.539729 -0.498211,0.608926 v 0.02769 h -2.186601 -0.1384 c -0.37366,0 -0.608926,-0.207588 -0.71964,-0.636603 L 31.92564,50.81566 29.905115,42.567487 c -0.02076,-0.0692 -0.02769,-0.16607 -0.02769,-0.276784 0,-0.276784 0.1384,-0.415176 0.415176,-0.415176 h 2.158917 0.138401 c 0.387499,0 0.622766,0.214508 0.719639,0.636604 l 1.300888,5.258901 1.079459,-4.622299 0.138401,-0.608925 c 0.08995,-0.401336 0.311382,-0.615844 0.664281,-0.636604 h 0.166054 c 0.34598,0.02076 0.567406,0.235268 0.664283,0.636604 l 0.138401,0.608925 1.051779,4.511584 1.217852,-5.120509 c 0.110713,-0.422096 0.34598,-0.636604 0.71964,-0.636604 h 0.69196 c 0.276785,0 0.415176,0.138402 0.415176,0.415177 0,0.09688 -0.02076,0.16607 -0.05537,0.221427 v 0.02769 l -1.688384,7.058 -0.276785,1.190173 -0.08302,0.332141 c -0.07613,0.318301 -0.235267,0.51897 -0.470534,0.608926 v 0.02766 h -0.913388 v -0.02769 c -0.242187,-0.08995 -0.401338,-0.290625 -0.470534,-0.608925 l -0.08302,-0.332143 -0.276785,-1.190173 z m 7.978308,0.664283 -2.32499,-4.400872 c -0.07612,-0.14531 -0.110713,-0.290621 -0.110713,-0.442855 0,-0.290622 0.172998,-0.525889 0.525892,-0.691961 0.145308,-0.08995 0.290623,-0.1384 0.442854,-0.1384 l 1.328564,-0.02769 c 0.256027,0 0.470534,0.159144 0.636605,0.470533 l 1.688384,3.34909 1.799098,-3.37677 c 0.166071,-0.311364 0.387499,-0.470515 0.664282,-0.470515 0.124549,0 0.276786,0.04154 0.442855,0.110714 0.332141,0.186829 0.498213,0.429017 0.498213,0.719638 0,0.131476 -0.02769,0.276786 -0.08303,0.442856 l -2.214274,4.345515 v 3.542839 c -0.05539,0.539728 -0.325231,0.802674 -0.802684,0.802674 h -1.688384 c -0.53973,0 -0.802674,-0.262946 -0.802674,-0.802674 z"
|
||||
id="path189"
|
||||
sodipodi:nodetypes="ccscssssccssccsscccccsccscccsscscccsscsccscccccccccscccsscsccccccccccssscccccccccccccccsccccccscscccsssc"
|
||||
style="stroke-width:1.77143" />
|
||||
<path
|
||||
fill-rule="nonzero"
|
||||
fill="#96c5f6"
|
||||
fill-opacity="1"
|
||||
d="m 33.726015,20.827288 1.260133,0.01415 v -0.424763 c 0,-0.261938 0.141587,-0.399986 0.424763,-0.410604 0.283176,0.01062 0.424764,0.148666 0.424764,0.410604 v 0.863687 c 0,0.276096 -0.141588,0.410604 -0.424764,0.410604 h -2.959187 c -0.276096,0 -0.410605,-0.134508 -0.410605,-0.410604 l -0.01416,-4.261797 c 0,-0.283176 0.141588,-0.424764 0.424764,-0.424764 h 0.86369 c 0.244239,0 0.382288,0.141588 0.410605,0.424764 z m 5.054688,0.453081 c -0.02124,0.276096 -0.152207,0.410604 -0.396446,0.410604 h -0.863686 c -0.283176,0 -0.424764,-0.134508 -0.424764,-0.410604 v -4.247637 c 0,-0.283175 0.134508,-0.424763 0.410605,-0.424763 h 0.892004 c 0.244239,0.01062 0.375208,0.152206 0.396446,0.424763 z m 2.091962,-3.553857 v 3.582175 c 0,0.254858 -0.141588,0.382286 -0.424764,0.382286 -0.283176,0 -0.424764,-0.134508 -0.424764,-0.410604 v -4.261796 c 0,-0.261938 0.145128,-0.399986 0.438923,-0.410604 h 0.608828 c 0.159286,0 0.290255,0.09203 0.396446,0.269016 l 1.090227,2.91671 v -2.775122 c 0.02832,-0.283176 0.162825,-0.424764 0.410605,-0.424764 h 0.863686 c 0.283176,0 0.424764,0.141588 0.424764,0.424764 l -0.01416,4.261796 c 0,0.276096 -0.138048,0.410604 -0.410605,0.410604 h -1.132703 c -0.23716,0 -0.389367,-0.08849 -0.453081,-0.269016 z m 4.633464,-1.132703 c 0.283175,0 0.431843,0.141588 0.453081,0.424764 v 2.987505 h 2.081342 v -2.987505 c 0,-0.283176 0.141588,-0.424764 0.424764,-0.424764 0.283176,0 0.424763,0.141588 0.424763,0.424764 v 4.261796 c 0,0.276096 -0.141587,0.410604 -0.424763,0.410604 h -2.959187 c -0.283176,0 -0.421225,-0.134508 -0.410605,-0.410604 l -0.01416,-4.261796 c 0,-0.283176 0.141588,-0.424764 0.424765,-0.424764 z m 6.583837,1.968073 0.722098,-1.727373 c 0.09203,-0.159287 0.205303,-0.2407 0.339811,-0.2407 0.07433,0 0.155747,0.02124 0.2407,0.05663 0.169905,0.09557 0.254858,0.219462 0.254858,0.368129 0,0.06725 -0.02124,0.141588 -0.05663,0.22654 l -0.948639,2.237089 0.948639,1.557467 c 0.02832,0.08495 0.04247,0.162827 0.04247,0.226541 0,0.152207 -0.08141,0.276097 -0.2407,0.368128 -0.08495,0.03894 -0.166366,0.05663 -0.240699,0.05663 h -0.679622 c -0.134508,0 -0.2407,-0.07787 -0.325652,-0.240698 l -1.033592,-1.684897 -0.750416,1.699055 c -0.08495,0.162826 -0.198223,0.2407 -0.339811,0.2407 -0.07788,0 -0.152207,-0.02124 -0.22654,-0.0708 -0.180525,-0.08495 -0.269018,-0.201763 -0.269018,-0.353969 0,-0.07433 0.0177,-0.148668 0.05664,-0.226541 l 0.991115,-2.166296 -0.991115,-1.614102 c -0.02832,-0.07433 -0.04247,-0.148667 -0.04247,-0.22654 0,-0.148667 0.08495,-0.269017 0.254858,-0.353969 0.08495,-0.04602 0.162827,-0.0708 0.240699,-0.0708 l 0.665464,-0.01415 c 0.130968,0 0.244239,0.08141 0.339811,0.240699 z M 31.616355,13.737274"
|
||||
id="path191"
|
||||
style="display:inline;stroke-width:0.906163" />
|
||||
</svg>
|
After Width: | Height: | Size: 8.0 KiB |
|
@ -3,18 +3,18 @@ Terminal=false
|
|||
Type=Application
|
||||
Categories=GNOME;GTK;System;
|
||||
StartupNotify=false
|
||||
Name=CachyOS Hello
|
||||
Exec=/usr/bin/cachyos-hello
|
||||
Icon=org.cachyos.hello
|
||||
Comment=A tool providing access to documentation and support for new CachyOS users.
|
||||
Comment[da]=En app med adgang til dokumentation og support for nye CachyOS brugere.
|
||||
Comment[de]=Ein Tool für schnellen Zugriff auf Support und Dokumentation für neue CachyOS-Nutzer.
|
||||
Comment[es]=Una herramienta que provee acceso a la documentación y soporte para nuevos usuarios de CachyOS.
|
||||
Comment[fr]=Outil d'accès à la documentation et support aux nouveaux utilisateurs de CachyOS.
|
||||
Comment[nl]=Een manier voor nieuwe CachyOS gebruikers om toegang tot documentatie en support te krijgen.
|
||||
Comment[pl]=Narzędzie ułatwiające dostęp do dokumentacji i pomocy przeznaczone dla nowych użytkowników CachyOS.
|
||||
Comment[pt_BR]=Uma ferramenta que fornece acesso à documentação e suporte para novos usuários CachyOS.
|
||||
Comment[pt_PT]=Uma ferramenta que fornece acesso à documentação e suporte para novos usuários CachyOS.
|
||||
Comment[ru]=Средство доступа к документации и поддержке для новых пользователей CachyOS.
|
||||
Comment[it]=Strumento per accedere alla documentazione e supporto per nuovi utenti CachyOS.
|
||||
Comment[tr]=Yeni CachyOS kullanıcıları için dökümantasyon ve destek sağlayan bir araç.
|
||||
Name=Melawy Welcome
|
||||
Exec=/usr/bin/melawy-welcome
|
||||
Icon=org.melawy.welcome
|
||||
Comment=A tool providing access to documentation and support for new Melawy Linux users.
|
||||
Comment[da]=En app med adgang til dokumentation og support for nye Melawy Linux brugere.
|
||||
Comment[de]=Ein Tool für schnellen Zugriff auf Support und Dokumentation für neue Melawy Linux-Nutzer.
|
||||
Comment[es]=Una herramienta que provee acceso a la documentación y soporte para nuevos usuarios de Melawy Linux.
|
||||
Comment[fr]=Outil d'accès à la documentation et support aux nouveaux utilisateurs de Melawy Linux.
|
||||
Comment[nl]=Een manier voor nieuwe Melawy Linux gebruikers om toegang tot documentatie en support te krijgen.
|
||||
Comment[pl]=Narzędzie ułatwiające dostęp do dokumentacji i pomocy przeznaczone dla nowych użytkowników Melawy Linux.
|
||||
Comment[pt_BR]=Uma ferramenta que fornece acesso à documentação e suporte para novos usuários Melawy Linux.
|
||||
Comment[pt_PT]=Uma ferramenta que fornece acesso à documentação e suporte para novos usuários Melawy Linux.
|
||||
Comment[ru]=Средство доступа к документации и поддержке для новых пользователей Melawy Linux.
|
||||
Comment[it]=Strumento per accedere alla documentazione e supporto per nuovi utenti Melawy Linux.
|
||||
Comment[tr]=Yeni Melawy Linux kullanıcıları için dökümantasyon ve destek sağlayan bir araç.
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gresources>
|
||||
<gresource prefix="/org/melawy/welcome">
|
||||
<file compressed="true" preprocess="xml-stripblanks">ui/melawy-welcome.glade</file>
|
||||
<file compressed="true">ui/style.css</file>
|
||||
<file compressed="true">data/img/external-link.png</file>
|
||||
<file compressed="true">data/img/website.png</file>
|
||||
<file compressed="true">data/img/mastodon.png</file>
|
||||
<file compressed="true">data/img/discord.png</file>
|
||||
</gresource>
|
||||
</gresources>
|
19
meson.build
|
@ -1,5 +1,5 @@
|
|||
project('cachyos-hello', 'rust',
|
||||
version: '0.9.9',
|
||||
project('melawy-welcome', 'rust',
|
||||
version: '0.10.1',
|
||||
license: 'GPLv3',
|
||||
meson_version: '>=0.56.0',
|
||||
default_options: ['buildtype=debugoptimized',
|
||||
|
@ -10,22 +10,16 @@ project('cachyos-hello', 'rust',
|
|||
i18n = import('i18n')
|
||||
gnome = import('gnome')
|
||||
|
||||
base_id = 'org.cachyos.hello'
|
||||
base_id = 'org.melawy.welcome'
|
||||
|
||||
dependency('glib-2.0', version: '>= 2.66')
|
||||
dependency('gio-2.0', version: '>= 2.66')
|
||||
dependency('gtk+-3.0', version: '>= 3.24.33')
|
||||
|
||||
desktop_file_validate = find_program('desktop-file-validate', required: false)
|
||||
appstream_util = find_program('appstream-util', required: false)
|
||||
cargo = find_program('cargo', required: true)
|
||||
cargo_script = find_program('build-aux/cargo.py')
|
||||
|
||||
version = meson.project_version()
|
||||
version_array = version.split('.')
|
||||
major_version = version_array[0].to_int()
|
||||
minor_version = version_array[1].to_int()
|
||||
version_micro = version_array[2].to_int()
|
||||
|
||||
prefix = get_option('prefix')
|
||||
bindir = prefix / get_option('bindir')
|
||||
|
@ -37,16 +31,9 @@ iconsdir = datadir / 'icons'
|
|||
|
||||
if get_option('profile') == 'development'
|
||||
profile = 'Devel'
|
||||
vcs_tag = run_command('git', 'rev-parse', '--short', 'HEAD').stdout().strip()
|
||||
if vcs_tag == ''
|
||||
version_suffix = '-devel'
|
||||
else
|
||||
version_suffix = '-@0@'.format(vcs_tag)
|
||||
endif
|
||||
application_id = '@0@.@1@'.format(base_id, profile)
|
||||
else
|
||||
profile = ''
|
||||
version_suffix = ''
|
||||
application_id = base_id
|
||||
endif
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
|
||||
mkdir -p "${DESTDIR}/${MESON_INSTALL_PREFIX}/share/cachyos-hello/"
|
||||
cp -r "${MESON_SOURCE_ROOT}/src/scripts" "${DESTDIR}/${MESON_INSTALL_PREFIX}/share/cachyos-hello/"
|
||||
mkdir -p "${DESTDIR}/${MESON_INSTALL_PREFIX}/share/melawy-welcome/"
|
||||
cp -r "${MESON_SOURCE_ROOT}/src/scripts" "${DESTDIR}/${MESON_INSTALL_PREFIX}/share/melawy-welcome/"
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
git add . && git commit -m "Update"
|
||||
git push
|
||||
|
||||
echo "Ready"
|
|
@ -119,6 +119,6 @@ impl AlpmHelper {
|
|||
let pacman =
|
||||
pacmanconf::Config::with_opts(None, Some("/etc/pacman.conf"), Some("/")).unwrap();
|
||||
let alpm = alpm_utils::alpm_with_conf(&pacman).unwrap();
|
||||
matches!(alpm.localdb().pkg(pkg_name.as_bytes()), Ok(_))
|
||||
alpm.localdb().pkg(pkg_name.as_bytes()).is_ok()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
use crate::config::{APP_ID, PKGDATADIR, VERSION};
|
||||
use crate::widgets::MainWindow;
|
||||
|
||||
use std::path::Path;
|
||||
|
||||
use gtk::gio;
|
||||
use gtk::glib::{self, clone, WeakRef};
|
||||
use gtk::prelude::*;
|
||||
use gtk::subclass::prelude::*;
|
||||
use once_cell::sync::OnceCell;
|
||||
|
||||
use std::path::Path;
|
||||
|
||||
use crate::config::{APP_ID, PKGDATADIR, VERSION};
|
||||
use crate::widgets::MainWindow;
|
||||
/*
|
||||
mod imp {
|
||||
use super::*;
|
||||
|
@ -21,7 +21,7 @@ mod imp {
|
|||
impl ObjectSubclass for Application {
|
||||
type Type = super::Application;
|
||||
|
||||
const NAME: &'static str = "CachyOSHello";
|
||||
const NAME: &'static str = "Melawy Welcome";
|
||||
}
|
||||
|
||||
impl ObjectImpl for Application {}
|
||||
|
|
|
@ -3,9 +3,10 @@ use crate::utils;
|
|||
|
||||
use gio::prelude::*;
|
||||
use gtk::prelude::{
|
||||
BoxExt, ButtonExt, CellRendererExt, CellRendererToggleExt, ComboBoxExt, ContainerExt, GridExt,
|
||||
GtkListStoreExt, GtkListStoreExtManual, ScrolledWindowExt, ToggleButtonExt, TreeModelExt,
|
||||
TreeStoreExt, TreeStoreExtManual, TreeViewColumnExt, TreeViewExt, WidgetExt,
|
||||
BoxExt, ButtonExt, CellRendererExt, CellRendererTextExt, CellRendererToggleExt, ComboBoxExt,
|
||||
ContainerExt, GridExt, GtkListStoreExt, GtkListStoreExtManual, ScrolledWindowExt,
|
||||
ToggleButtonExt, TreeModelExt, TreeStoreExt, TreeStoreExtManual, TreeViewColumnExt,
|
||||
TreeViewExt, WidgetExt,
|
||||
};
|
||||
|
||||
use once_cell::sync::Lazy;
|
||||
|
@ -260,8 +261,10 @@ impl ApplicationBrowser {
|
|||
|
||||
// column model: description column
|
||||
let desc_renderer = gtk::CellRendererText::new();
|
||||
desc_renderer.set_wrap_mode(gtk::pango::WrapMode::Word);
|
||||
desc_renderer.set_wrap_width(290);
|
||||
let desc_column = create_column("Description", &desc_renderer, "text", DESCRIPTION);
|
||||
desc_column.set_resizable(true);
|
||||
desc_column.set_resizable(false);
|
||||
self.tree_view.append_column(&desc_column);
|
||||
|
||||
// column model: install column
|
||||
|
@ -391,13 +394,13 @@ fn on_query_tooltip_tree_view(
|
|||
fn on_button_press_event_tree_view(
|
||||
treeview: >k::TreeView,
|
||||
event_btn: &gdk::EventButton,
|
||||
) -> gtk::glib::signal::Inhibit {
|
||||
) -> glib::Propagation {
|
||||
if event_btn.button() == 1 && event_btn.event_type() == gdk::EventType::DoubleButtonPress {
|
||||
if let Some(coords) = event_btn.coords() {
|
||||
let (x, y) = coords;
|
||||
let path_info = treeview.path_at_pos(x as i32, y as i32);
|
||||
if path_info.is_none() {
|
||||
return gtk::glib::signal::Inhibit(true);
|
||||
return glib::Propagation::Stop;
|
||||
}
|
||||
|
||||
let (path, ..) = path_info.unwrap();
|
||||
|
@ -416,7 +419,7 @@ fn on_button_press_event_tree_view(
|
|||
}
|
||||
}
|
||||
|
||||
gtk::glib::signal::Inhibit(false)
|
||||
glib::Propagation::Proceed
|
||||
}
|
||||
|
||||
fn on_app_toggle(_cell: >k::CellRendererToggle, path: gtk::TreePath) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
pub fn init() -> Result<(), glib::Error> {
|
||||
const GRESOURCE: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/cachyos-welcome.gresource"));
|
||||
const GRESOURCE: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/melawy-welcome.gresource"));
|
||||
|
||||
gio::resources_register(&gio::Resource::from_data(&glib::Bytes::from_static(GRESOURCE))?);
|
||||
|
||||
|
|
24
src/main.rs
|
@ -1,6 +1,7 @@
|
|||
#![feature(const_str_from_utf8)]
|
||||
#![feature(string_remove_matches)]
|
||||
#![allow(non_upper_case_globals)]
|
||||
#![allow(clippy::arc_with_non_send_sync)]
|
||||
|
||||
mod alpm_helper;
|
||||
mod application_browser;
|
||||
|
@ -33,7 +34,7 @@ use serde_json::json;
|
|||
use std::{fs, str};
|
||||
use subprocess::Exec;
|
||||
|
||||
const RESPREFIX: &str = "/org/cachyos/hello";
|
||||
const RESPREFIX: &str = "/org/melawy/welcome";
|
||||
|
||||
static G_SAVE_JSON: Lazy<Mutex<serde_json::Value>> = Lazy::new(|| {
|
||||
let saved_json = get_saved_json();
|
||||
|
@ -64,9 +65,9 @@ fn quick_message(message: &'static str) {
|
|||
let result = dialog.run();
|
||||
let cmd: String;
|
||||
if result == gtk::ResponseType::No {
|
||||
cmd = "/usr/local/bin/calamares-offline.sh".to_owned();
|
||||
cmd = "/usr/local/bin/calamares-offline".to_owned();
|
||||
} else if result == gtk::ResponseType::Yes {
|
||||
cmd = "/usr/local/bin/calamares-online.sh".to_owned();
|
||||
cmd = "/usr/local/bin/calamares-online".to_owned();
|
||||
} else {
|
||||
unsafe {
|
||||
dialog.destroy();
|
||||
|
@ -76,7 +77,7 @@ fn quick_message(message: &'static str) {
|
|||
|
||||
// Spawn child process in separate thread.
|
||||
std::thread::spawn(move || {
|
||||
let status = match reqwest::blocking::get("https://cachyos.org") {
|
||||
let status = match reqwest::blocking::get("https://melawy.ru") {
|
||||
Ok(resp) => resp.status().is_success() || resp.status().is_server_error(),
|
||||
_ => false,
|
||||
};
|
||||
|
@ -119,10 +120,10 @@ fn show_about_dialog() {
|
|||
])
|
||||
// Translators: Replace "translator-credits" with your names. Put a comma between.
|
||||
.translator_credits("translator-credits")
|
||||
.copyright("2021-2023 CachyOS team")
|
||||
.copyright("2023-2024 Melawy (Valeria Fadeeva)")
|
||||
.license_type(gtk::License::Gpl30)
|
||||
.website("https://github.com/cachyos/cachyos-welcome")
|
||||
.website_label("GitHub")
|
||||
.website("https://git.melawy.ru/Melawy-Linux/melawy-welcome")
|
||||
.website_label("Git")
|
||||
.build();
|
||||
|
||||
dialog.run();
|
||||
|
@ -171,8 +172,8 @@ fn main() {
|
|||
gresource::init().expect("Could not load gresource file.");
|
||||
|
||||
// Set program name.
|
||||
glib::set_program_name("CachyOSHello".into());
|
||||
glib::set_application_name("CachyOSHello");
|
||||
glib::set_program_name("Melawy Welcome".into());
|
||||
glib::set_application_name("Melawy Welcome");
|
||||
|
||||
let application = gtk::Application::new(
|
||||
Some(APP_ID), // Application id
|
||||
|
@ -204,7 +205,7 @@ fn build_ui(application: >k::Application) {
|
|||
);
|
||||
|
||||
// Init window
|
||||
let builder: Builder = Builder::from_resource(&format!("{RESPREFIX}/ui/cachyos-hello.glade"));
|
||||
let builder: Builder = Builder::from_resource(&format!("{RESPREFIX}/ui/melawy-welcome.glade"));
|
||||
builder.connect_signals(|_builder, handler_name| {
|
||||
match handler_name {
|
||||
// handler_name as defined in the glade file => handler function as defined above
|
||||
|
@ -232,7 +233,7 @@ fn build_ui(application: >k::Application) {
|
|||
// Subtitle of headerbar
|
||||
let header: HeaderBar = builder.object("headerbar").expect("Could not get the headerbar");
|
||||
|
||||
header.set_subtitle(Some("CachyOS rolling"));
|
||||
header.set_subtitle(Some("Melawy Linux"));
|
||||
|
||||
// Load images
|
||||
let logo_path = format!("{}/{}.svg", preferences["logo_path"].as_str().unwrap(), APP_ID);
|
||||
|
@ -342,6 +343,7 @@ fn build_ui(application: >k::Application) {
|
|||
}
|
||||
pages::create_appbrowser_page(&builder);
|
||||
pages::create_tweaks_page(&builder);
|
||||
pages::create_dnsconnections_page(&builder);
|
||||
|
||||
// Show the UI
|
||||
main_window.show();
|
||||
|
|
|
@ -1,20 +1,3 @@
|
|||
global_conf = configuration_data()
|
||||
global_conf.set_quoted('APP_ID', application_id)
|
||||
global_conf.set_quoted('PROFILE', profile)
|
||||
global_conf.set_quoted('VERSION', version + version_suffix)
|
||||
config = configure_file(
|
||||
input: 'config.rs.in',
|
||||
output: 'config.rs',
|
||||
configuration: global_conf
|
||||
)
|
||||
# Copy the config.rs output to the source directory.
|
||||
run_command(
|
||||
'cp',
|
||||
meson.project_build_root() / 'src' / 'config.rs',
|
||||
meson.project_source_root() / 'src' / 'config.rs',
|
||||
check: true
|
||||
)
|
||||
|
||||
manifest_path = meson.project_source_root() / 'Cargo.toml'
|
||||
cargo_home = meson.project_build_root() / 'cargo-home'
|
||||
cargo_target_dir = meson.project_build_root() / 'src'
|
||||
|
|
328
src/pages.rs
|
@ -5,6 +5,7 @@ use crate::{fl, utils};
|
|||
use glib::translate::FromGlib;
|
||||
use gtk::{glib, Builder};
|
||||
use once_cell::sync::Lazy;
|
||||
use phf::phf_ordered_map;
|
||||
use std::fmt::Write as _;
|
||||
use std::path::Path;
|
||||
use std::sync::Mutex;
|
||||
|
@ -17,6 +18,18 @@ use subprocess::{Exec, Redirection};
|
|||
static G_LOCAL_UNITS: Lazy<Mutex<SystemdUnits>> = Lazy::new(|| Mutex::new(SystemdUnits::new()));
|
||||
static G_GLOBAL_UNITS: Lazy<Mutex<SystemdUnits>> = Lazy::new(|| Mutex::new(SystemdUnits::new()));
|
||||
|
||||
static G_DNS_SERVERS: phf::OrderedMap<&'static str, &'static str> = phf_ordered_map! {
|
||||
"Adguard" => "94.140.14.14",
|
||||
"Adguard Family Protection" => "94.140.14.15",
|
||||
"Cloudflare" => "1.1.1.1",
|
||||
"Cloudflare Malware and adult content blocking" => "1.1.1.3",
|
||||
"DNS.Watch" => "84.200.69.80",
|
||||
"Cisco Umbrella(OpenDNS)" => "208.67.222.222,208.67.220.220",
|
||||
"Quad9" => "9.9.9.9",
|
||||
"Google" => "8.8.8.8,8.8.4.4",
|
||||
"Yandex" => "77.88.8.8,77.88.8.1",
|
||||
};
|
||||
|
||||
struct DialogMessage {
|
||||
pub msg: String,
|
||||
pub msg_type: gtk::MessageType,
|
||||
|
@ -26,6 +39,7 @@ struct DialogMessage {
|
|||
enum Action {
|
||||
RemoveLock,
|
||||
RemoveOrphans,
|
||||
SetDnsServer,
|
||||
}
|
||||
|
||||
fn update_translation_apps_section(section_box: >k::Box) {
|
||||
|
@ -51,6 +65,27 @@ fn update_translation_fixes_section(section_box: >k::Box) {
|
|||
}
|
||||
}
|
||||
|
||||
fn update_translation_connections_section(section_box: >k::Box) {
|
||||
for section_box_element in section_box.children() {
|
||||
if let Ok(object_box) = section_box_element.clone().downcast::<gtk::Box>() {
|
||||
for object_box_widget in object_box.children() {
|
||||
let widget_name = object_box_widget.widget_name().to_string();
|
||||
if let Ok(box_element_btn) = object_box_widget.clone().downcast::<gtk::Button>() {
|
||||
let translated_text = crate::localization::get_locale_text(&widget_name);
|
||||
box_element_btn.set_label(&translated_text);
|
||||
} else if let Ok(box_element_label) =
|
||||
object_box_widget.clone().downcast::<gtk::Label>()
|
||||
{
|
||||
let translated_text = crate::localization::get_locale_text(&widget_name);
|
||||
box_element_label.set_text(&translated_text);
|
||||
}
|
||||
}
|
||||
} else if let Ok(section_label) = section_box_element.clone().downcast::<gtk::Label>() {
|
||||
section_label.set_text(&fl!("dns-settings"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn update_translation_options_section(section_box: >k::Box) {
|
||||
for section_box_element in section_box.children() {
|
||||
if let Ok(button_box) = section_box_element.clone().downcast::<gtk::Box>() {
|
||||
|
@ -101,14 +136,40 @@ pub fn update_translations(builder: &Builder) {
|
|||
}
|
||||
}
|
||||
}
|
||||
if let Some(widget) = stack.child_by_name("dnsConnectionsBrowserpage") {
|
||||
if let Ok(viewport) = widget.downcast::<gtk::Viewport>() {
|
||||
let first_child = &viewport.children()[0].clone().downcast::<gtk::Box>().unwrap();
|
||||
let second_child =
|
||||
&first_child.children()[1].clone().downcast::<gtk::Box>().unwrap();
|
||||
|
||||
for second_child_child_widget in second_child.children() {
|
||||
let second_child_child_box =
|
||||
second_child_child_widget.downcast::<gtk::Box>().unwrap();
|
||||
update_translation_connections_section(&second_child_child_box);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn create_fixes_section() -> gtk::Box {
|
||||
fn get_nm_connections() -> Vec<String> {
|
||||
let connections = Exec::cmd("/sbin/nmcli")
|
||||
.args(&["-t", "-f", "NAME", "connection", "show"])
|
||||
.stdout(Redirection::Pipe)
|
||||
.capture()
|
||||
.unwrap()
|
||||
.stdout_str();
|
||||
|
||||
// get list of connections separated by newline
|
||||
connections.split('\n').filter(|x| !x.is_empty()).map(String::from).collect::<Vec<_>>()
|
||||
}
|
||||
|
||||
fn create_fixes_section(builder: &Builder) -> gtk::Box {
|
||||
let topbox = gtk::Box::new(gtk::Orientation::Vertical, 2);
|
||||
let button_box_f = gtk::Box::new(gtk::Orientation::Horizontal, 10);
|
||||
let button_box_s = gtk::Box::new(gtk::Orientation::Horizontal, 10);
|
||||
let button_box_t = gtk::Box::new(gtk::Orientation::Horizontal, 10);
|
||||
let button_box_frth = gtk::Box::new(gtk::Orientation::Horizontal, 10);
|
||||
let label = gtk::Label::new(None);
|
||||
label.set_line_wrap(true);
|
||||
label.set_justify(gtk::Justification::Center);
|
||||
|
@ -121,6 +182,7 @@ fn create_fixes_section() -> gtk::Box {
|
|||
let remove_orphans_btn = gtk::Button::with_label(&fl!("remove-orphans-title"));
|
||||
let clear_pkgcache_btn = gtk::Button::with_label(&fl!("clear-pkgcache-title"));
|
||||
let rankmirrors_btn = gtk::Button::with_label(&fl!("rankmirrors-title"));
|
||||
let dnsserver_btn = gtk::Button::with_label(&fl!("dnsserver-title"));
|
||||
|
||||
{
|
||||
removelock_btn.set_widget_name("remove-lock-title");
|
||||
|
@ -130,10 +192,11 @@ fn create_fixes_section() -> gtk::Box {
|
|||
remove_orphans_btn.set_widget_name("remove-orphans-title");
|
||||
clear_pkgcache_btn.set_widget_name("clear-pkgcache-title");
|
||||
rankmirrors_btn.set_widget_name("rankmirrors-title");
|
||||
dnsserver_btn.set_widget_name("dnsserver-title");
|
||||
}
|
||||
|
||||
// Create context channel.
|
||||
let (dialog_tx, dialog_rx) = glib::MainContext::channel(glib::PRIORITY_DEFAULT);
|
||||
let (dialog_tx, dialog_rx) = glib::MainContext::channel(glib::Priority::default());
|
||||
|
||||
// Connect signals.
|
||||
let dialog_tx_clone = dialog_tx.clone();
|
||||
|
@ -207,9 +270,14 @@ fn create_fixes_section() -> gtk::Box {
|
|||
rankmirrors_btn.connect_clicked(move |_| {
|
||||
// Spawn child process in separate thread.
|
||||
std::thread::spawn(move || {
|
||||
let _ = utils::run_cmd_terminal(String::from("cachyos-rate-mirrors"), true);
|
||||
let _ = utils::run_cmd_terminal(String::from("rate-mirrors"), true);
|
||||
});
|
||||
});
|
||||
dnsserver_btn.connect_clicked(glib::clone!(@weak builder => move |_| {
|
||||
let name = "dnsConnectionsBrowser";
|
||||
let stack: gtk::Stack = builder.object("stack").unwrap();
|
||||
stack.set_visible_child_name(&format!("{name}page"));
|
||||
}));
|
||||
|
||||
// Setup receiver.
|
||||
let removelock_btn_clone = removelock_btn.clone();
|
||||
|
@ -218,6 +286,7 @@ fn create_fixes_section() -> gtk::Box {
|
|||
let widget_obj = match msg.action {
|
||||
Action::RemoveLock => &removelock_btn_clone,
|
||||
Action::RemoveOrphans => &remove_orphans_btn_clone,
|
||||
_ => panic!("Unexpected action!!"),
|
||||
};
|
||||
let widget_window =
|
||||
utils::get_window_from_widget(widget_obj).expect("Failed to retrieve window");
|
||||
|
@ -230,7 +299,7 @@ fn create_fixes_section() -> gtk::Box {
|
|||
.modal(true)
|
||||
.build();
|
||||
dialog.show();
|
||||
glib::Continue(true)
|
||||
glib::ControlFlow::Continue
|
||||
});
|
||||
|
||||
topbox.pack_start(&label, true, false, 1);
|
||||
|
@ -241,9 +310,12 @@ fn create_fixes_section() -> gtk::Box {
|
|||
button_box_s.pack_start(&clear_pkgcache_btn, true, true, 2);
|
||||
button_box_s.pack_end(&remove_orphans_btn, true, true, 2);
|
||||
button_box_t.pack_end(&rankmirrors_btn, true, true, 2);
|
||||
button_box_frth.pack_end(&dnsserver_btn, true, true, 2);
|
||||
button_box_f.set_halign(gtk::Align::Fill);
|
||||
button_box_s.set_halign(gtk::Align::Fill);
|
||||
button_box_t.set_halign(gtk::Align::Fill);
|
||||
button_box_frth.set_halign(gtk::Align::Fill);
|
||||
topbox.pack_end(&button_box_frth, true, true, 5);
|
||||
topbox.pack_end(&button_box_t, true, true, 5);
|
||||
topbox.pack_end(&button_box_s, true, true, 5);
|
||||
topbox.pack_end(&button_box_f, true, true, 5);
|
||||
|
@ -265,6 +337,7 @@ fn create_options_section() -> gtk::Box {
|
|||
gtk::CheckButton::with_label(&fl!("tweak-enabled-title", tweak = "Profile-sync-daemon"));
|
||||
let systemd_oomd_btn =
|
||||
gtk::CheckButton::with_label(&fl!("tweak-enabled-title", tweak = "Systemd-oomd"));
|
||||
let bpftune_btn = gtk::CheckButton::with_label(&fl!("tweak-enabled-title", tweak = "Bpftune"));
|
||||
let apparmor_btn =
|
||||
gtk::CheckButton::with_label(&fl!("tweak-enabled-title", tweak = "Apparmor"));
|
||||
let bluetooth_btn =
|
||||
|
@ -276,6 +349,7 @@ fn create_options_section() -> gtk::Box {
|
|||
psd_btn.set_widget_name("Profile-sync-daemon");
|
||||
systemd_oomd_btn.set_widget_name("Systemd-oomd");
|
||||
apparmor_btn.set_widget_name("Apparmor");
|
||||
bpftune_btn.set_widget_name("Bpftune");
|
||||
bluetooth_btn.set_widget_name("Bluetooth");
|
||||
ananicy_cpp_btn.set_widget_name("Ananicy Cpp");
|
||||
}
|
||||
|
@ -290,6 +364,9 @@ fn create_options_section() -> gtk::Box {
|
|||
apparmor_btn.set_data("actionData", "apparmor.service");
|
||||
apparmor_btn.set_data("actionType", "service");
|
||||
apparmor_btn.set_data("alpmPackage", "apparmor");
|
||||
bpftune_btn.set_data("actionData", "bpftune.service");
|
||||
bpftune_btn.set_data("actionType", "service");
|
||||
bpftune_btn.set_data("alpmPackage", "bpftune-git");
|
||||
bluetooth_btn.set_data("actionData", "bluetooth.service");
|
||||
bluetooth_btn.set_data("actionType", "service");
|
||||
bluetooth_btn.set_data("alpmPackage", "bluez");
|
||||
|
@ -298,7 +375,14 @@ fn create_options_section() -> gtk::Box {
|
|||
ananicy_cpp_btn.set_data("alpmPackage", "ananicy-cpp");
|
||||
}
|
||||
|
||||
for btn in &[&psd_btn, &systemd_oomd_btn, &apparmor_btn, &bluetooth_btn, &ananicy_cpp_btn] {
|
||||
for btn in &[
|
||||
&psd_btn,
|
||||
&systemd_oomd_btn,
|
||||
&apparmor_btn,
|
||||
&bpftune_btn,
|
||||
&bluetooth_btn,
|
||||
&ananicy_cpp_btn,
|
||||
] {
|
||||
let data: &str = unsafe { *btn.data("actionData").unwrap().as_ptr() };
|
||||
if G_LOCAL_UNITS.lock().unwrap().enabled_units.contains(&String::from(data))
|
||||
|| G_GLOBAL_UNITS.lock().unwrap().enabled_units.contains(&String::from(data))
|
||||
|
@ -312,6 +396,7 @@ fn create_options_section() -> gtk::Box {
|
|||
box_collection.pack_start(&psd_btn, true, false, 2);
|
||||
box_collection_s.pack_start(&systemd_oomd_btn, true, false, 2);
|
||||
box_collection.pack_start(&apparmor_btn, true, false, 2);
|
||||
box_collection_s.pack_start(&bpftune_btn, true, false, 2);
|
||||
box_collection.pack_start(&ananicy_cpp_btn, true, false, 2);
|
||||
box_collection_s.pack_start(&bluetooth_btn, true, false, 2);
|
||||
box_collection.set_halign(gtk::Align::Fill);
|
||||
|
@ -356,6 +441,187 @@ fn create_apps_section() -> Option<gtk::Box> {
|
|||
}
|
||||
}
|
||||
|
||||
fn create_connections_section() -> gtk::Box {
|
||||
let topbox = gtk::Box::new(gtk::Orientation::Vertical, 2);
|
||||
let connection_box = gtk::Box::new(gtk::Orientation::Horizontal, 2);
|
||||
let dnsservers_box = gtk::Box::new(gtk::Orientation::Horizontal, 2);
|
||||
let button_box = gtk::Box::new(gtk::Orientation::Horizontal, 2);
|
||||
let label = gtk::Label::new(None);
|
||||
label.set_line_wrap(true);
|
||||
label.set_justify(gtk::Justification::Center);
|
||||
label.set_text(&fl!("dns-settings"));
|
||||
|
||||
let connections_label = gtk::Label::new(None);
|
||||
connections_label.set_justify(gtk::Justification::Left);
|
||||
connections_label.set_text(&fl!("select-connection"));
|
||||
connections_label.set_widget_name("select-connection");
|
||||
let servers_label = gtk::Label::new(None);
|
||||
servers_label.set_justify(gtk::Justification::Left);
|
||||
servers_label.set_text(&fl!("select-dns-server"));
|
||||
servers_label.set_widget_name("select-dns-server");
|
||||
let apply_btn = gtk::Button::with_label(&fl!("apply"));
|
||||
let reset_btn = gtk::Button::with_label(&fl!("reset"));
|
||||
apply_btn.set_widget_name("apply");
|
||||
reset_btn.set_widget_name("reset");
|
||||
|
||||
let combo_conn = {
|
||||
let store = gtk::ListStore::new(&[String::static_type()]);
|
||||
let nm_connections = get_nm_connections();
|
||||
for nm_connection in nm_connections.iter() {
|
||||
store.set(&store.append(), &[(0, nm_connection)]);
|
||||
}
|
||||
utils::create_combo_with_model(&store)
|
||||
};
|
||||
let combo_servers = {
|
||||
let store = gtk::ListStore::new(&[String::static_type()]);
|
||||
for dns_server in G_DNS_SERVERS.keys() {
|
||||
store.set(&store.append(), &[(0, dns_server)]);
|
||||
}
|
||||
utils::create_combo_with_model(&store)
|
||||
};
|
||||
combo_servers.set_active(Some(2));
|
||||
|
||||
combo_conn.set_widget_name("connections_combo");
|
||||
combo_servers.set_widget_name("servers_combo");
|
||||
|
||||
// Create context channel.
|
||||
let (dialog_tx, dialog_rx) = glib::MainContext::channel(glib::Priority::default());
|
||||
|
||||
// Connect signals.
|
||||
let dialog_tx_clone = dialog_tx.clone();
|
||||
let combo_conn_clone = combo_conn.clone();
|
||||
let combo_serv_clone = combo_servers.clone();
|
||||
apply_btn.connect_clicked(move |_| {
|
||||
let dialog_tx_clone = dialog_tx_clone.clone();
|
||||
let conn_name = {
|
||||
if let Some(tree_iter) = combo_conn_clone.active_iter() {
|
||||
let model = combo_conn_clone.model().unwrap();
|
||||
let group_gobj = model.value(&tree_iter, 0);
|
||||
let group = group_gobj.get::<&str>().unwrap();
|
||||
String::from(group)
|
||||
} else {
|
||||
"".into()
|
||||
}
|
||||
};
|
||||
let server_name = {
|
||||
if let Some(tree_iter) = combo_serv_clone.active_iter() {
|
||||
let model = combo_serv_clone.model().unwrap();
|
||||
let group_gobj = model.value(&tree_iter, 0);
|
||||
let group = group_gobj.get::<&str>().unwrap();
|
||||
String::from(group)
|
||||
} else {
|
||||
"".into()
|
||||
}
|
||||
};
|
||||
let server_addr = G_DNS_SERVERS.get(&server_name).unwrap();
|
||||
std::thread::spawn(move || {
|
||||
let status_code = Exec::cmd("/sbin/pkexec")
|
||||
.arg("bash")
|
||||
.arg("-c")
|
||||
.arg(format!(
|
||||
"nmcli con mod '{conn_name}' ipv4.dns '{server_addr}' && systemctl restart \
|
||||
NetworkManager"
|
||||
))
|
||||
.join()
|
||||
.unwrap();
|
||||
if status_code.success() {
|
||||
dialog_tx_clone
|
||||
.send(DialogMessage {
|
||||
msg: fl!("dns-server-changed"),
|
||||
msg_type: gtk::MessageType::Info,
|
||||
action: Action::SetDnsServer,
|
||||
})
|
||||
.expect("Couldn't send data to channel");
|
||||
} else {
|
||||
dialog_tx_clone
|
||||
.send(DialogMessage {
|
||||
msg: fl!("dns-server-failed"),
|
||||
msg_type: gtk::MessageType::Error,
|
||||
action: Action::SetDnsServer,
|
||||
})
|
||||
.expect("Couldn't send data to channel");
|
||||
}
|
||||
});
|
||||
});
|
||||
let dialog_tx_clone = dialog_tx.clone();
|
||||
let combo_conn_clone = combo_conn.clone();
|
||||
reset_btn.connect_clicked(move |_| {
|
||||
let dialog_tx_clone = dialog_tx_clone.clone();
|
||||
let conn_name = {
|
||||
if let Some(tree_iter) = combo_conn_clone.active_iter() {
|
||||
let model = combo_conn_clone.model().unwrap();
|
||||
let group_gobj = model.value(&tree_iter, 0);
|
||||
let group = group_gobj.get::<&str>().unwrap();
|
||||
String::from(group)
|
||||
} else {
|
||||
"".into()
|
||||
}
|
||||
};
|
||||
std::thread::spawn(move || {
|
||||
let status_code = Exec::cmd("/sbin/pkexec")
|
||||
.arg("bash")
|
||||
.arg("-c")
|
||||
.arg(format!(
|
||||
"nmcli con mod '{conn_name}' ipv4.dns '' && systemctl restart NetworkManager"
|
||||
))
|
||||
.join()
|
||||
.unwrap();
|
||||
if status_code.success() {
|
||||
dialog_tx_clone
|
||||
.send(DialogMessage {
|
||||
msg: fl!("dns-server-reset"),
|
||||
msg_type: gtk::MessageType::Info,
|
||||
action: Action::SetDnsServer,
|
||||
})
|
||||
.expect("Couldn't send data to channel");
|
||||
} else {
|
||||
dialog_tx_clone
|
||||
.send(DialogMessage {
|
||||
msg: fl!("dns-server-reset-failed"),
|
||||
msg_type: gtk::MessageType::Error,
|
||||
action: Action::SetDnsServer,
|
||||
})
|
||||
.expect("Couldn't send data to channel");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Setup receiver
|
||||
let apply_btn_clone = apply_btn.clone();
|
||||
dialog_rx.attach(None, move |msg| {
|
||||
let widget_obj = &apply_btn_clone;
|
||||
let widget_window =
|
||||
utils::get_window_from_widget(widget_obj).expect("Failed to retrieve window");
|
||||
|
||||
let dialog = gtk::MessageDialog::builder()
|
||||
.transient_for(&widget_window)
|
||||
.message_type(msg.msg_type)
|
||||
.text(msg.msg)
|
||||
.title(msg.msg_type.to_string())
|
||||
.modal(true)
|
||||
.build();
|
||||
dialog.show();
|
||||
glib::ControlFlow::Continue
|
||||
});
|
||||
|
||||
topbox.pack_start(&label, true, false, 1);
|
||||
connection_box.pack_start(&connections_label, true, true, 2);
|
||||
connection_box.pack_end(&combo_conn, true, true, 2);
|
||||
dnsservers_box.pack_start(&servers_label, true, true, 2);
|
||||
dnsservers_box.pack_end(&combo_servers, true, true, 2);
|
||||
button_box.pack_start(&reset_btn, true, true, 2);
|
||||
button_box.pack_end(&apply_btn, true, true, 2);
|
||||
connection_box.set_halign(gtk::Align::Fill);
|
||||
dnsservers_box.set_halign(gtk::Align::Fill);
|
||||
button_box.set_halign(gtk::Align::Fill);
|
||||
topbox.pack_start(&connection_box, true, true, 5);
|
||||
topbox.pack_start(&dnsservers_box, true, true, 5);
|
||||
topbox.pack_start(&button_box, true, true, 5);
|
||||
|
||||
topbox.set_hexpand(true);
|
||||
topbox
|
||||
}
|
||||
|
||||
fn load_enabled_units() {
|
||||
G_LOCAL_UNITS.lock().unwrap().loaded_units.clear();
|
||||
G_LOCAL_UNITS.lock().unwrap().enabled_units.clear();
|
||||
|
@ -420,7 +686,7 @@ pub fn create_tweaks_page(builder: &Builder) {
|
|||
}));
|
||||
|
||||
let options_section_box = create_options_section();
|
||||
let fixes_section_box = create_fixes_section();
|
||||
let fixes_section_box = create_fixes_section(builder);
|
||||
let apps_section_box_opt = create_apps_section();
|
||||
|
||||
let child_name = "tweaksBrowserpage";
|
||||
|
@ -459,6 +725,48 @@ pub fn create_tweaks_page(builder: &Builder) {
|
|||
stack.add_named(&viewport, child_name);
|
||||
}
|
||||
|
||||
pub fn create_dnsconnections_page(builder: &Builder) {
|
||||
let viewport = gtk::Viewport::new(gtk::Adjustment::NONE, gtk::Adjustment::NONE);
|
||||
let image = gtk::Image::from_icon_name(Some("go-previous"), gtk::IconSize::Button);
|
||||
let back_btn = gtk::Button::new();
|
||||
back_btn.set_image(Some(&image));
|
||||
back_btn.set_widget_name("tweaksBrowser");
|
||||
|
||||
back_btn.connect_clicked(glib::clone!(@weak builder => move |button| {
|
||||
let name = button.widget_name();
|
||||
let stack: gtk::Stack = builder.object("stack").unwrap();
|
||||
stack.set_visible_child_name(&format!("{name}page"));
|
||||
}));
|
||||
|
||||
let connections_section_box = create_connections_section();
|
||||
|
||||
let child_name = "dnsConnectionsBrowserpage";
|
||||
connections_section_box.set_widget_name(&format!("{child_name}_connections"));
|
||||
|
||||
let grid = gtk::Grid::new();
|
||||
grid.set_hexpand(true);
|
||||
grid.set_margin_start(10);
|
||||
grid.set_margin_end(10);
|
||||
grid.set_margin_top(5);
|
||||
grid.set_margin_bottom(5);
|
||||
grid.attach(&back_btn, 0, 1, 1, 1);
|
||||
let box_collection_s = gtk::Box::new(gtk::Orientation::Vertical, 5);
|
||||
let box_collection = gtk::Box::new(gtk::Orientation::Vertical, 5);
|
||||
box_collection.set_widget_name(child_name);
|
||||
|
||||
box_collection.pack_start(&connections_section_box, false, false, 10);
|
||||
|
||||
box_collection.set_valign(gtk::Align::Center);
|
||||
box_collection.set_halign(gtk::Align::Center);
|
||||
box_collection_s.pack_start(&grid, false, false, 0);
|
||||
box_collection_s.pack_start(&box_collection, false, false, 10);
|
||||
viewport.add(&box_collection_s);
|
||||
viewport.show_all();
|
||||
|
||||
let stack: gtk::Stack = builder.object("stack").unwrap();
|
||||
stack.add_named(&viewport, child_name);
|
||||
}
|
||||
|
||||
pub fn create_appbrowser_page(builder: &Builder) {
|
||||
let install: gtk::Button = builder.object("appBrowser").unwrap();
|
||||
install.set_visible(true);
|
||||
|
@ -512,7 +820,7 @@ fn on_servbtn_clicked(button: >k::CheckButton) {
|
|||
};
|
||||
|
||||
// Create context channel.
|
||||
let (tx, rx) = glib::MainContext::channel(glib::PRIORITY_DEFAULT);
|
||||
let (tx, rx) = glib::MainContext::channel(glib::Priority::default());
|
||||
|
||||
// Spawn child process in separate thread.
|
||||
std::thread::spawn(move || {
|
||||
|
@ -555,7 +863,7 @@ fn on_servbtn_clicked(button: >k::CheckButton) {
|
|||
.build();
|
||||
dialog.show();
|
||||
}
|
||||
glib::Continue(true)
|
||||
glib::ControlFlow::Continue
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -652,7 +960,7 @@ fn on_appbtn_clicked(button: >k::Button) {
|
|||
let bash_cmd = format!("{} {}", &envs, &exe_path);
|
||||
|
||||
// Create context channel.
|
||||
let (tx, rx) = glib::MainContext::channel(glib::PRIORITY_DEFAULT);
|
||||
let (tx, rx) = glib::MainContext::channel(glib::Priority::default());
|
||||
|
||||
// Spawn child process in separate thread.
|
||||
std::thread::spawn(move || {
|
||||
|
@ -667,7 +975,7 @@ fn on_appbtn_clicked(button: >k::Button) {
|
|||
|
||||
rx.attach(None, move |text| {
|
||||
println!("{text}");
|
||||
glib::Continue(true)
|
||||
glib::ControlFlow::Continue
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,98 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux Free (Open Source) Driver Installer #"
|
||||
echo "# #"
|
||||
echo "# !!! ATTENTION !!! #"
|
||||
echo "# #"
|
||||
echo "# This Will Install GPU Drivers For Any Intel or AMD GPUs #"
|
||||
echo "# #"
|
||||
echo "# Carefully Select The Appropriate Drivers. #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, Please Select An Option Below."
|
||||
echo
|
||||
echo "################# GPU Checker #################"
|
||||
echo
|
||||
echo "1. Check Which GPU You Have."
|
||||
echo
|
||||
echo "############# Open Source Drivers #############"
|
||||
echo
|
||||
echo "2. AMD GPU Free."
|
||||
echo "3. ATI (Radeon HD) GPU Free."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Checking Installed GPU "
|
||||
echo "##########################################"
|
||||
echo
|
||||
echo "Your system has the following GPU(s)"
|
||||
echo
|
||||
sleep 3
|
||||
lspci -x | grep VGA
|
||||
sleep 3
|
||||
echo
|
||||
glxinfo | grep -E "OpenGL vendor|OpenGL renderer*"
|
||||
sleep 6
|
||||
echo
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
clear && sh /usr/share/xerowelcome/scripts/amd_drivers.sh
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Installing AMD GPU Free Drivers "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
sudo pacman -S --noconfirm xf86-video-amdgpu libvdpau-va-gl vulkan-swrast libva-vdpau-driver libclc vulkan-radeon lib32-vulkan-radeon lib32-amdvlk amdvlk vulkan-icd-loader lib32-vulkan-icd-loader egl-wayland
|
||||
sudo mkinitcpio -P
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
exit
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Installing ATI GPU Free Drivers "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
sudo pacman -S --noconfirm xf86-video-ati vulkan-radeon lib32-vulkan-radeon libvdpau-va-gl vulkan-swrast libva-vdpau-driver libclc
|
||||
sudo mkinitcpio -P
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
exit
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,168 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 1
|
||||
echo "###############################################################################"
|
||||
echo "# !!! XeroLinux Reset Tool !!! #"
|
||||
echo "# #"
|
||||
echo "# Having Issues With Messed Up Layout or Settings ? #"
|
||||
echo "# #"
|
||||
echo "# This Will Restore OOB Defaults. Layout WILL BE RESET #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, which Edition are you using ?"
|
||||
echo
|
||||
echo "1. XeroLinux KDE Plasma."
|
||||
echo "2. XeroLinux GNOME Spin."
|
||||
echo "3. XeroLinux XFCE Spin."
|
||||
echo
|
||||
#echo "4. Exit"
|
||||
echo
|
||||
echo "Please Select an Option..."
|
||||
echo
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
# echo "Option currently unavailable. Please check back soon..."
|
||||
tput setaf 4
|
||||
read -p "Final Warning, This Will Undo Your Customizations, Proceed ? (y/n): " proceed_response
|
||||
tput sgr0
|
||||
echo
|
||||
if [[ $proceed_response == "y" || $proceed_response == "yes" ]]; then
|
||||
echo
|
||||
echo "###################################"
|
||||
echo " Restoring/Applying KDE defaults "
|
||||
echo "###################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Git Cloning Default Settings Repo"
|
||||
cd ~ && git clone https://github.com/xerolinux/xero-layan-git && cd xero-layan-git/
|
||||
sleep 2
|
||||
echo
|
||||
echo "Running Install Script..."
|
||||
sh install.sh
|
||||
echo
|
||||
rm -Rf ~/xero-layan-git/
|
||||
sleep 2
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
else
|
||||
echo "Restoration cancelled."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
tput setaf 4
|
||||
read -p "Final Warning, This Will Undo Your Customizations, Proceed ? (y/n): " proceed_response
|
||||
tput sgr0
|
||||
echo
|
||||
if [[ $proceed_response == "y" || $proceed_response == "yes" ]]; then
|
||||
echo
|
||||
echo "###################################"
|
||||
echo " Restoring/Applying Gnome defaults "
|
||||
echo "###################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Creating backup & Applying custom Settings"
|
||||
echo "##########################################"
|
||||
cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S) && cp -Rf /etc/skel/. ~ && sudo cp -Rf /etc/skel/. /root/
|
||||
rm ~/.config/autostart/dconf-load.desktop
|
||||
sh /usr/local/bin/xdconf
|
||||
sleep 2
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
else
|
||||
echo "Restoration cancelled."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
tput setaf 4
|
||||
read -p "Final Warning, This Will Undo Your Customizations, Proceed ? (y/n): " proceed_response
|
||||
tput sgr0
|
||||
echo
|
||||
if [[ $proceed_response == "y" || $proceed_response == "yes" ]]; then
|
||||
echo
|
||||
echo "###################################"
|
||||
echo " Restoring/Applying Gnome defaults "
|
||||
echo "###################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Creating Backups of ~/.config folder"
|
||||
echo "#####################################"
|
||||
cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S)
|
||||
sleep 2
|
||||
echo "###################################"
|
||||
echo " Restoring XFCE defaults "
|
||||
echo "###################################"
|
||||
sleep 2
|
||||
cp -rf /etc/skel/. ~
|
||||
sudo cp -Rf /etc/skel/. /root/
|
||||
sleep 2
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
else
|
||||
echo "Restoration cancelled."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo "Choose the correct number"
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,163 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "#################################################"
|
||||
echo "# XeroLinux Distrobox Tool. #"
|
||||
echo "#################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, what would you like to do today ?"
|
||||
echo
|
||||
echo "################## Distrobox & Docker Setup ##################"
|
||||
echo
|
||||
echo "i. Install/Configure Distrobox & Docker (Automatically)."
|
||||
echo "d. Distrobox Documentaion on Github (Will open browser)."
|
||||
echo
|
||||
echo "################### Top 5 Container Images ###################"
|
||||
echo
|
||||
echo "1. Debian."
|
||||
echo "2. Fedora."
|
||||
echo "3. Void Linux."
|
||||
echo "4. OpenSuse Tumbleweed."
|
||||
echo "5. Gentoo Linux (For Advanced Users)."
|
||||
echo
|
||||
echo "u. Update all Containers (Might take a while)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
i )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Installing packages..."
|
||||
echo
|
||||
sudo pacman -S --noconfirm distrobox docker docker-compose
|
||||
sleep 2
|
||||
echo
|
||||
echo "Enabling Services & Adding you to group"
|
||||
echo
|
||||
sudo systemctl enable --now docker
|
||||
sudo usermod -aG docker $USER
|
||||
sleep 2
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 1
|
||||
read -p "All done. Reboot is required. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 2
|
||||
echo "Please manually reboot your system before using Distrobox."
|
||||
sleep 6
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
tput sgr0
|
||||
fi
|
||||
|
||||
;;
|
||||
|
||||
d )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Opening Distrobox Documentation In Your Default Browser..."
|
||||
echo
|
||||
xdg-open 'https://github.com/89luca89/distrobox/tree/main/docs#quick-start' &>/dev/null;
|
||||
sleep 6
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
1 )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Pulling Latest Debian Image with label XeroDeb, Please Wait..."
|
||||
echo
|
||||
distrobox create -i quay.io/toolbx-images/debian-toolbox:latest -n "XeroDeb"
|
||||
sleep 10
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Pulling Latest Fedora Image with label XeroDora, Please Wait..."
|
||||
echo
|
||||
distrobox create -i registry.fedoraproject.org/fedora-toolbox:latest -n "XeroDora"
|
||||
sleep 10
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Pulling Latest Void Linux Image with label XeroVoid, Please Wait..."
|
||||
echo
|
||||
distrobox create -i ghcr.io/void-linux/void-linux:latest-full-x86_64 -n "XeroVoid"
|
||||
sleep 10
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
4 )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Pulling Latest OpenSuse Tumbleweed Image with label XeroSuse..."
|
||||
echo
|
||||
distrobox create -i registry.opensuse.org/opensuse/tumbleweed:latest -n "XeroSuse"
|
||||
sleep 10
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
5 )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Pulling Latest Gentoo Linux Image with label XeroGen..."
|
||||
echo
|
||||
distrobox create -i docker.io/gentoo/stage3:latest -n "XeroGen"
|
||||
sleep 10
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
u )
|
||||
echo
|
||||
sleep 2
|
||||
echo "Upgrading all Containers Please Wait..."
|
||||
echo
|
||||
distrobox-upgrade --all
|
||||
sleep 3
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/dbox.sh
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,80 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux Firewall Enabler #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, which Edition are you using ?"
|
||||
echo
|
||||
echo "########## Edition Selection ##########"
|
||||
echo
|
||||
echo "1. XeroLinux KDE Plasma."
|
||||
echo "2. XeroLinux GNOME (GUFW)."
|
||||
echo "3. XeroLinux XFCE (FireJail)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Adding/Enabling Firewalld "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
sudo pacman -S --noconfirm plasma-firewall firewalld
|
||||
sudo systemctl enable --now firewalld
|
||||
sleep 3
|
||||
echo "###########################################"
|
||||
echo " Done ! Check Status from KDE Settings "
|
||||
echo "###########################################"
|
||||
sleep 6
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "############################################"
|
||||
echo " Installing Firewall for Gnome "
|
||||
echo "############################################"
|
||||
sleep 3
|
||||
sudo pacman -S --noconfirm gufw ufw
|
||||
sleep 3
|
||||
echo "###############################################"
|
||||
echo " Done ! Configure Firewall From The Gufw App "
|
||||
echo "###############################################"
|
||||
sleep 6
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
echo "########################################"
|
||||
echo " Installing Firewall for XFCE "
|
||||
echo "########################################"
|
||||
sleep 3
|
||||
sudo pacman -S --noconfirm firejail firetools
|
||||
sleep 3
|
||||
echo "###############################################"
|
||||
echo " Done ! Configure Firewall From FireJail App "
|
||||
echo "###############################################"
|
||||
sleep 6
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,51 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
#set -e
|
||||
echo "#################################"
|
||||
echo "# Fixing Pacman Databases.. #"
|
||||
echo "#################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "##################################"
|
||||
echo "# Deleting Existing Keys.. #"
|
||||
echo "##################################"
|
||||
|
||||
sudo rm /var/lib/pacman/sync/*
|
||||
|
||||
sleep 2
|
||||
echo
|
||||
echo "#################################"
|
||||
echo "# Deleting gnupg files.. #"
|
||||
echo "#################################"
|
||||
|
||||
sudo rm -r /etc/pacman.d/gnupg/*
|
||||
|
||||
sleep 2
|
||||
echo
|
||||
echo "#################################"
|
||||
echo "# Populating Keys.. #"
|
||||
echo "#################################"
|
||||
|
||||
sudo pacman-key --init && sudo pacman-key --populate
|
||||
|
||||
sleep 2
|
||||
echo
|
||||
echo "#################################"
|
||||
echo "# Adding Ubuntu keyserver.. #"
|
||||
echo "#################################"
|
||||
|
||||
echo "keyserver hkp://keyserver.ubuntu.com:80" | sudo tee --append /etc/pacman.d/gnupg/gpg.conf
|
||||
|
||||
sleep 2
|
||||
echo
|
||||
echo "##################################"
|
||||
echo "# Updating ArchLinux Keyring.. #"
|
||||
echo "##################################"
|
||||
|
||||
sudo pacman -Sy --noconfirm archlinux-keyring
|
||||
|
||||
sleep 2
|
||||
echo
|
||||
echo "##################################"
|
||||
echo "# Done ! Try Update now & Report #"
|
||||
echo "##################################"
|
|
@ -0,0 +1,64 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux Hardware Service #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, What shall we do today ?"
|
||||
echo
|
||||
echo "1. List Hardware Config via inxi."
|
||||
echo "2. Probe & Upload System Config for Sharing."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Check System Config via inxi "
|
||||
echo "###########################################"
|
||||
sleep 2
|
||||
inxi -b
|
||||
sleep 2
|
||||
echo "###########################################"
|
||||
echo " Share Screenshot for help "
|
||||
echo "###########################################"
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "############################################"
|
||||
echo " Probing config & Uploading "
|
||||
echo "############################################"
|
||||
echo
|
||||
sleep 2
|
||||
sudo -E hw-probe -all -upload
|
||||
sleep 2
|
||||
echo
|
||||
echo "###############################################"
|
||||
echo " Ctrl+Click to open link for sharing "
|
||||
echo "###############################################"
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,47 @@
|
|||
#!/usr/bin/bash
|
||||
#set -e
|
||||
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
echo "#####################################"
|
||||
echo " XeroLinux Snapper Setup "
|
||||
echo "#####################################"
|
||||
echo
|
||||
# Get current user's username
|
||||
username=$(whoami)
|
||||
|
||||
# Welcome message
|
||||
echo -e "${GREEN}Hi, $username! Checking for BTRFS, if so BTRFS Assistant & Snapper tools will be installed.${NC}"
|
||||
echo
|
||||
sleep 3
|
||||
# Check if the file system is BTRFS
|
||||
if lsblk -f | grep -q "btrfs"; then
|
||||
echo -e "${GREEN}BTRFS partitions found. Adding Necessary Modules, Installing Packages & Initializing Root/Home.r.${NC}"
|
||||
echo
|
||||
echo "Installing Packages & Updating mkinitcpio configuration"
|
||||
sudo pacman -Sy --noconfirm btrfs-assistant btrfs-du snapper-support btrfsmaintenance
|
||||
echo
|
||||
sleep 3
|
||||
sudo sed -i 's/MODULES="\(.*\)"/MODULES="\1 btrfs"/; s/crc32c//g' /etc/mkinitcpio.conf
|
||||
sudo mkinitcpio -P
|
||||
sleep 3
|
||||
echo
|
||||
echo "Initializing snapper for root subvolume"
|
||||
sudo snapper -c root create-config /
|
||||
sudo snapper -c root create
|
||||
echo
|
||||
sleep 3
|
||||
echo "Initializing snapper for home subvolume"
|
||||
sudo snapper -c home create-config /home
|
||||
sudo snapper -c home create
|
||||
echo
|
||||
sleep 3
|
||||
echo -e "${BLUE}Snapper installed and initialized. Reboot required.${NC}"
|
||||
echo
|
||||
else
|
||||
echo -e "${RED}No BTRFS Partitions found. Exiting...${NC}"
|
||||
exit 1
|
||||
fi
|
|
@ -0,0 +1,107 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux ISO Builder #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, which ISO would you like to build today ?"
|
||||
echo
|
||||
#echo "Please close this window, thanks..."
|
||||
echo "########## Edition Selection ##########"
|
||||
echo
|
||||
echo "1. XeroLinux KDE Plasma."
|
||||
echo "2. XeroLinux GNOME Spin."
|
||||
echo "3. XeroLinux XFCE Spin."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
# echo "Option currently unavailable. Will be back once optimized for Gnome 45..."
|
||||
echo "###########################################"
|
||||
echo " Building XeroLinux KDE Flagship "
|
||||
echo "###########################################"
|
||||
echo
|
||||
sleep 3
|
||||
cd ~ && git clone https://github.com/xerolinux/xero_iso.git
|
||||
sleep 3
|
||||
echo
|
||||
cd ~/xero_iso/ && ./build.sh
|
||||
sleep 3
|
||||
echo
|
||||
cd ~ && rm -rf ~/xero_iso/
|
||||
echo "###########################################"
|
||||
echo " Done ! Check Home Folder for ISO "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
clear && sh /usr/share/xerowelcome/scripts/iso_builder.sh
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
# echo "Option currently unavailable. Will be back once optimized for Gnome 45..."
|
||||
echo "###########################################"
|
||||
echo " Building XeroLinux Gnome Spin "
|
||||
echo "###########################################"
|
||||
echo
|
||||
sleep 3
|
||||
cd ~ && git clone https://github.com/xerolinux/xero_g_iso.git
|
||||
sleep 3
|
||||
echo
|
||||
cd ~/xero_g_iso/ && ./build.sh
|
||||
sleep 3
|
||||
echo
|
||||
cd ~ && rm -rf ~/xero_g_iso/
|
||||
echo "###########################################"
|
||||
echo " Done ! Check Home Folder for ISO "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
clear && sh /usr/share/xerowelcome/scripts/iso_builder.sh
|
||||
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
# echo "Option currently unavailable. Will be back once optimized for Gnome 45..."
|
||||
echo "###########################################"
|
||||
echo " Building XeroLinux XFCE Spin "
|
||||
echo "###########################################"
|
||||
echo
|
||||
sleep 3
|
||||
cd ~ && git clone https://github.com/xerolinux/xero_xfce_iso.git
|
||||
sleep 3
|
||||
echo
|
||||
cd ~/xero_xfce_iso/ && ./build.sh
|
||||
sleep 3
|
||||
echo
|
||||
cd ~ && rm -rf ~/xero_xfce_iso/
|
||||
echo "###########################################"
|
||||
echo " Done ! Check Home Folder for ISO "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
clear && sh /usr/share/xerowelcome/scripts/iso_builder.sh
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,377 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Extensive modifications by: vlk (https://github.com/REALERvolker1)
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
|
||||
# Set the window title to something pleasant
|
||||
echo -en "\033]2;XeroLinux Nvidia Setup\007"
|
||||
# Attempt to fix on Konsole
|
||||
echo -ne "\033]30;XeroLinux Nvidia Setup\007"
|
||||
|
||||
# set to 1 to remove dxvk-bin in the driver uninstall function
|
||||
XEROLINUX_REMOVE_DXVK_BIN=0 # 1
|
||||
|
||||
shopt -s checkwinsize
|
||||
(
|
||||
: # curse you, shfmt
|
||||
:
|
||||
)
|
||||
# define some useful characters that are hard to type
|
||||
BOLD="[1m"
|
||||
RESET="[0m"
|
||||
# TAB=$'\t' # make shellcheck happy
|
||||
LF=$'\n'
|
||||
|
||||
_print_header() {
|
||||
local surround htx i surround fsur width_pad color
|
||||
local vert_pad=$'\n'
|
||||
local -i width
|
||||
local -i halfwidth
|
||||
local -i i_width
|
||||
local -a prints=()
|
||||
|
||||
for i in "$@"; do
|
||||
i_val="${i#*=}" # preprocess
|
||||
case "$i" in
|
||||
'--width='*)
|
||||
width="$i_val"
|
||||
;;
|
||||
'--surround_char='*)
|
||||
((${#i_val} == 1)) && surround="$i_val"
|
||||
;;
|
||||
'--full-surround') # if you want to have the text surrounded
|
||||
fsur=true
|
||||
;;
|
||||
'--no-vertical-pad')
|
||||
vert_pad=''
|
||||
;;
|
||||
'--color='*)
|
||||
color="$i_val"
|
||||
;;
|
||||
*)
|
||||
prints+=("$i")
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
((${#surround} == 1)) || surround='#' # if the surround character is not 1 character long, set it to default
|
||||
((width > 3)) || width="$COLUMNS" # make sure width is a number, and it is enough to do fun things with later
|
||||
htx="$(printf "\e[1${color:+;$color}m%${width}s\e[0m" '')"
|
||||
htx="${htx// /$surround}" # first print a bunch of spaces of the desired width, then replace those spaces with the surround character
|
||||
if ((${#fsur})); then
|
||||
fsur="\e[1;${color:+;$color}m${surround}" # fsur is dual-purpose. If it is set, then turn it from a bool into a fmt string
|
||||
width="$((width - 2))" # make sure the width is small enough to be completely surrounded
|
||||
fi
|
||||
((width % 2)) && width_pad=' ' # pad width with a space on one side if it is not an even number
|
||||
halfwidth="$((width / 2))" # precompute half the width (as an integer)
|
||||
|
||||
echo "${vert_pad:-}$htx"
|
||||
for i in "${prints[@]}"; do
|
||||
i_width="$((${#i} / 2))" # character count of $i, divided by two
|
||||
# if fsur is not set, set it to an empty string. Pad the width in spaces to be centered
|
||||
printf "${fsur:=}\e[${color:-0}m%$((i_width + halfwidth))s%$((halfwidth - i_width))s${width_pad:=}${fsur:-}\n" "$i"
|
||||
done
|
||||
echo "$htx${vert_pad:-}"
|
||||
}
|
||||
|
||||
_pause_for_readability() {
|
||||
local delay="${1:?Error, a period of time to delay is required!}"
|
||||
echo -en "\e[2m(Pausing $delay seconds for readability)\e[0m"
|
||||
# [[ ${1:-} =~ ^([0-9]+)$ ]] && delay="${1:-}"
|
||||
# read -r -t "$delay" -p "[2mPress RETURN to skip the $delay-second delay..." delay
|
||||
read -r -t "$delay"
|
||||
echo -en "\e[2K\r" # Erase the text and return cursor position to normal
|
||||
}
|
||||
|
||||
_wayland_setup() {
|
||||
local sudocmd prompt_str REBOOT_CHOICE dkms_pkg i
|
||||
if [[ ${1:-} == '--open' ]]; then
|
||||
dkms_pkg="nvidia-open-dkms"
|
||||
_print_header \
|
||||
'Installing Experimental Open-dkms Drivers' \
|
||||
'' \
|
||||
'Provides Experimental Open-dkms Drivers' \
|
||||
'Limited to Turing Series GPUs & Up'
|
||||
|
||||
printf '%s\n' 'This option installs the latest open-source nVidia kernel modules.' \
|
||||
'Recommended for tinkering and testing' \
|
||||
"${BOLD}Warning${RESET}: Only compatible with ${BOLD}Turing+${RESET} GPUs$RESET"
|
||||
else
|
||||
dkms_pkg="nvidia-dkms"
|
||||
_print_header \
|
||||
'Installing Clean Vanilla Drivers (NFB)' \
|
||||
'' \
|
||||
'Provides Clean Vanilla Drivers' \
|
||||
'Limiting you to only 900 Series & Up'
|
||||
|
||||
printf '%s\n' 'This option installs the latest proprietary kernel modules.' \
|
||||
'Recommended for most use cases'
|
||||
fi
|
||||
_pause_for_readability 5
|
||||
local should_install_cuda
|
||||
_print_header --width=55 'Do you want to include CUDA for Machine Learning?' \
|
||||
"${BOLD}WARNING${RESET}: This takes ${BOLD}4.3${RESET} GiB of disk space!!!"
|
||||
read -r -p "Do you want to install Cuda ? [y/N] > " should_install_cuda
|
||||
|
||||
# if we do not have sudo perms, warn the user. Redirect all output (stdout, stderr, etc) to /dev/null
|
||||
if ((${#DRY})); then
|
||||
sudocmd='echo sudo'
|
||||
# prompt_str="${BOLD}[Dry run]${RESET} "
|
||||
else
|
||||
sudocmd='sudo'
|
||||
sudo -vn &>/dev/null || echo "${BOLD}[Sudo required]${RESET}"
|
||||
fi
|
||||
# read, unmangle backslashes, return false after 5 seconds, only read 1 character, prompt with string, no variable
|
||||
# read -r -t 5 -n 1 -p "${prompt_str:-}Press Enter to continue, or wait 5 seconds...${LF}"
|
||||
|
||||
local -a required_packages=(
|
||||
"$dkms_pkg"
|
||||
'nvidia-utils'
|
||||
'libxnvctrl'
|
||||
'lib32-libxnvctrl'
|
||||
'dxvk-bin'
|
||||
'opencl-nvidia'
|
||||
'lib32-opencl-nvidia'
|
||||
'lib32-nvidia-utils'
|
||||
'nvidia-settings'
|
||||
'libvdpau'
|
||||
'lib32-libvdpau'
|
||||
'vulkan-icd-loader'
|
||||
'lib32-vulkan-icd-loader'
|
||||
)
|
||||
[[ ${should_install_cuda:-} == y ]] && required_packages+=(cuda)
|
||||
|
||||
# pacman sends currently installed packages to stdout, and not-installed packages to stderr.
|
||||
# Take stderr and get only the package name. Disregard any colors.
|
||||
local oldifs="$IFS"
|
||||
local IFS=$'\n'
|
||||
local -a needed_packages=($(pacman -Q "${required_packages[@]}" 2> >(grep -oP --color=never "^error:[^']*'\K[^']*") >/dev/null))
|
||||
IFS="$oldifs"
|
||||
|
||||
if ((${#needed_packages[@]})); then
|
||||
_print_header --width=35 "Installing packages"
|
||||
printf '%s\n' "${needed_packages[@]}"
|
||||
_pause_for_readability 5
|
||||
$sudocmd pacman -S --needed --noconfirm "${required_packages[@]}" # install everything though because you need to have it all
|
||||
else
|
||||
_print_header --width=35 "Drivers already installed. Skipping"
|
||||
fi
|
||||
|
||||
_print_header --width=35 'Applying Wayland Specific Stuff.'
|
||||
_pause_for_readability 3
|
||||
|
||||
local -i no_force_powermgmt=1
|
||||
local wants_powermgmt
|
||||
|
||||
local DESKTOP_ENVIRONMENT="${XDG_CURRENT_DESKTOP,,}"
|
||||
if [[ "${DESKTOP_ENVIRONMENT:=}" == "kde" || "${DESKTOP_ENVIRONMENT:=}" == "gnome" ]]; then
|
||||
echo "Step 1: Updating mkinitcpio configuration"
|
||||
_pause_for_readability 2
|
||||
$sudocmd sed -i 's/MODULES="\(.*\)"/MODULES="nvidia nvidia_modeset nvidia_uvm nvidia_drm"/; s/crc32c//g' '/etc/mkinitcpio.conf'
|
||||
|
||||
echo "${LF}Step 2: Creating a backup of Grub & adding necessary Kernel Flags"
|
||||
_pause_for_readability 2
|
||||
$sudocmd cp '/etc/default/grub' '/etc/default/grub.xbk'
|
||||
$sudocmd sed -i "s/\(GRUB_CMDLINE_LINUX_DEFAULT='[^']*\)'/\1 nvidia_drm.modeset=1'/" '/etc/default/grub'
|
||||
$sudocmd update-grub
|
||||
|
||||
if [[ "$DESKTOP_ENVIRONMENT" == "gnome" ]]; then
|
||||
echo "Step 2a: Applying Extra Gnome Modifications..."
|
||||
_pause_for_readability 2
|
||||
echo "options nvidia NVreg_PreserveVideoMemoryAllocations=1" | (
|
||||
# stdin is propagated to subprocesses of subshells
|
||||
if ((${#DRY})); then
|
||||
tee
|
||||
else
|
||||
$sudocmd tee '/etc/modprobe.d/nvidia-wayland-gnome.conf' >/dev/null
|
||||
fi
|
||||
)
|
||||
# $sudocmd ln -s '/dev/null' '/etc/udev/rules.d/61-gdm.rules'
|
||||
$sudocmd mkinitcpio -P
|
||||
fi
|
||||
wants_powermgmt=y
|
||||
no_force_powermgmt=0
|
||||
fi
|
||||
|
||||
local -a services=(nvidia-{hibernate,resume,suspend})
|
||||
|
||||
# ((no_force_powermgmt)) && read -r -p "Do you want to enable Nvidia power services? [y/N] > " wants_powermgmt
|
||||
|
||||
local needs_nvidia_powerd
|
||||
read -r -p "Do you want to enable 'nvidia-powerd'? For Ampere (RTX 30 series+) laptop GPUs. [y/N] > " needs_nvidia_powerd
|
||||
[[ ${needs_nvidia_powerd:-} == 'y' ]] && services+=('nvidia-powerd')
|
||||
|
||||
_print_header --width=35 'Enabling power services' "${services[@]}"
|
||||
_pause_for_readability 2
|
||||
|
||||
# if [[ ${wants_powermgmt:-} == y || no_force_powermgmt -eq 1 ]]; then
|
||||
if :; then
|
||||
$sudocmd systemctl enable "${services[@]}" # &>/dev/null # it's always good to just double check
|
||||
if ((${#DRY})); then
|
||||
echo "Dry run selected. Skipping reboot"
|
||||
else
|
||||
_print_header "Reboot required. Press Enter to reboot or any other key to exit."
|
||||
read -r REBOOT_CHOICE
|
||||
if [[ -z ${REBOOT_CHOICE:-} ]]; then
|
||||
$sudocmd reboot
|
||||
else
|
||||
echo "${LF}Please reboot your system later to apply the changes."
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Skipping nvidia power services"
|
||||
fi
|
||||
}
|
||||
|
||||
_check_gpu() {
|
||||
_print_header 'Checking Installed GPU'
|
||||
echo "${LF}Your system has the following GPU(s)${LF}"
|
||||
|
||||
lspci -x | grep --color=always -P '[^A-Za-z]+VGA.*NVIDIA[^\[]+\[\K[^\]]+'
|
||||
glxinfo | grep --color=always -P 'OpenGL\s*(vendor|renderer)[^:]*:\s*\K.*'
|
||||
|
||||
nvurl='https://www.nvidia.com/download/index.aspx?lang=en-us'
|
||||
skiptext="Skipping opening url '$nvurl'"
|
||||
if ((${#DRY})); then
|
||||
echo "$skiptext"
|
||||
else
|
||||
read -r -p "Want to open the nVidia drivers page?${LF}[y/N] > " ans
|
||||
if [[ $ans == y ]]; then
|
||||
_print_header --width=66 \
|
||||
'Opening nVidia Drivers page...' \
|
||||
'Check What Version Your GPU Needs Before Installing or Building.'
|
||||
_pause_for_readability 2
|
||||
xdg-open "$nvurl" &>/dev/null
|
||||
else
|
||||
echo "$skiptext"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
_remove_everything() {
|
||||
_print_header --width=66 'Uninstalling all nVidia Drivers'
|
||||
|
||||
((XEROLINUX_REMOVE_DXVK_BIN)) && packages+=("dxvk-bin")
|
||||
|
||||
# See driver install function for code explanation
|
||||
_print_header --width=35 "Removing packages"
|
||||
# local -a removing_packages=($(pacman -Q "${packages[@]}" 2>/dev/null | cut -d ' ' -f 1))
|
||||
local -a removing_packages=($(pacman -Q | grep -oE '\S*(nv(idia|ctrl|api)|cuda|vdpau)\S*'))
|
||||
((${#removing_packages[@]})) && printf '%s\n' "${removing_packages[@]}"
|
||||
|
||||
# If the user suddenly doesn't want to remove nvidia drivers, they have a second chance
|
||||
local second_thoughts
|
||||
read -r -p "Do you want to ${BOLD}REMOVE${RESET} these packages? [y/N] > " second_thoughts
|
||||
[[ ${second_thoughts:-} == 'y' ]] || return
|
||||
|
||||
if ((${#DRY})); then
|
||||
# echo "Dry run -- skipping removal of ${packages[*]}"
|
||||
sudocmd='echo sudo'
|
||||
else
|
||||
sudocmd='sudo'
|
||||
fi
|
||||
local package
|
||||
for package in "${packages[@]}"; do
|
||||
$sudocmd pacman -Rdd --noconfirm "$package" &>/dev/null
|
||||
done
|
||||
$sudocmd mkinitcpio -P
|
||||
}
|
||||
|
||||
__reset_everything() {
|
||||
if [[ ${1:-} == '--header' ]]; then
|
||||
_print_header --width=49 'Done!' 'Press ENTER to return to main screen'
|
||||
fi
|
||||
read -r
|
||||
echo -en "${RESET}" # clear formatting
|
||||
clear
|
||||
# sh '/usr/share/xerowelcome/scripts/nVidia_drivers.sh' # DANGEROUS RECURSION!!
|
||||
}
|
||||
|
||||
DRY=''
|
||||
# argument parsing
|
||||
for i in "$@"; do
|
||||
case "${i:-}" in
|
||||
'--dry-run' | -d)
|
||||
DRY=true
|
||||
;;
|
||||
'-'*)
|
||||
# ARGZERO (the script name), greedily matched until the last slash
|
||||
# turns '/home/vlk/Downloads/nVidia_driversNov.sh' into 'nVidia_driversNov.sh'
|
||||
echo "${0##*/} [--dry-run (-d)]"
|
||||
echo "run ${0##*/} with no args to run the script as usual"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# save everything to a variable
|
||||
header_text="$(
|
||||
_print_header --color=91 --no-vertical-pad --full-surround \
|
||||
'XeroLinux nVidia (Proprietary) Driver Installer' \
|
||||
'Wayland Support Included. This Applies to KDE & Gnome NOT XFCE.' \
|
||||
"Note : nvidia-settings GUI isn't Yet Wayland Ready, Plz Use Terminal." \
|
||||
'Normally This is Enough For Hybrid Setups, If Not, More Research is Needed.'
|
||||
|
||||
cat <<EOF
|
||||
|
||||
###################### Detected GPUs ######################
|
||||
|
||||
Hello ${USER:=$(whoami)}, you have the following nVidia GPU(s):
|
||||
|
||||
$(
|
||||
lspci | grep -oP '^.*VGA[^:]+:\s*\K.*NVIDIA.*\](?=\s*\(.*)' | sed -E 's/(\[)/\1[0;1;91m/g ; s/(\])/[0m\1/g'
|
||||
)
|
||||
|
||||
################ Vanilla/Open-DKMS Drivers ################
|
||||
|
||||
${BOLD}1${RESET}. Latest Vanilla Drivers (900 Series & up).
|
||||
${BOLD}2${RESET}. Latest Open-dkms Drivers (Experimental/Turing+).
|
||||
|
||||
############### Troubleshooting. (Cleanup). ###############
|
||||
|
||||
${BOLD}r${RESET}. Remove all Drivers. (Start Fresh)
|
||||
|
||||
Type Your Selection. To Exit, press ${BOLD}q${RESET} or close Window.
|
||||
${RESET}
|
||||
EOF
|
||||
)"
|
||||
|
||||
while :; do
|
||||
CHOICE=''
|
||||
# print the header every time
|
||||
# read, unmangle backslashes, stop after 1 character, prompt with string, variable
|
||||
read -r -n 1 -p "$header_text${LF}${INVALID_OPTION_STR:-}[1|2|r|q] > ${BOLD}" CHOICE
|
||||
INVALID_OPTION_STR=''
|
||||
echo "${RESET}" # user's answer is bolded. This is required to reset
|
||||
case "${CHOICE:=}" in
|
||||
1)
|
||||
_wayland_setup
|
||||
;;
|
||||
2)
|
||||
_wayland_setup --open
|
||||
;;
|
||||
c)
|
||||
_check_gpu
|
||||
# __reset_everything --header
|
||||
;;
|
||||
r)
|
||||
_remove_everything
|
||||
;;
|
||||
q)
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
# _print_header --width=33 'Choose a valid option!' # no one will see this
|
||||
INVALID_OPTION_STR="Invalid option: '${CHOICE:-}' "
|
||||
clear
|
||||
continue # re-prompt
|
||||
;;
|
||||
|
||||
esac
|
||||
__reset_everything --header
|
||||
|
||||
done
|
|
@ -0,0 +1,11 @@
|
|||
#!/usr/bin/bash
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Updating Mirrors To Fastest Ones "
|
||||
echo "##########################################"
|
||||
echo
|
||||
sudo reflector --verbose -phttps -f10 -l10 --sort rate --save /etc/pacman.d/mirrorlist && sudo pacman -Syy
|
||||
echo
|
||||
echo "##################################"
|
||||
echo " Done ! Updating should go faster "
|
||||
echo "##################################"
|
|
@ -0,0 +1,111 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux Display Manager Switcher #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, which Display Manager do you want to switch to ?"
|
||||
echo
|
||||
echo "########## DM Selector ##########"
|
||||
echo
|
||||
echo "1. LightDM."
|
||||
echo "2. KDE SDDM (For KDE use only)."
|
||||
echo "3. Gnome GDM (For Gnome use only)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Switching to LightDM "
|
||||
echo "###########################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Removing Current Display Manager"
|
||||
echo "################################"
|
||||
sudo pacman -Rdd --noconfirm sddm &>/dev/null; sudo pacman -Rdd --noconfirm sddm-git &>/dev/null; sudo pacman -Rdd --noconfirm sddm-git &>/dev/null; sudo pacman -Rdd --noconfirm sddm-kcm &>/dev/null; sudo pacman -Rdd --noconfirm gdm &>/dev/null
|
||||
sleep 2
|
||||
echo
|
||||
echo "Installing & Enabling LightDM"
|
||||
echo "#############################"
|
||||
sudo pacman -S --needed --noconfirm lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings
|
||||
sleep 2
|
||||
|
||||
sudo systemctl enable lightdm.service -f
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Done ! Please reboot to apply "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Switching to SDDM "
|
||||
echo "###########################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Removing Current Display Manager"
|
||||
echo "################################"
|
||||
sudo pacman -Rdd --noconfirm sddm &>/dev/null; sudo pacman -Rdd --noconfirm lightdm &>/dev/null; sudo pacman -Rdd --noconfirm lightdm-gtk-greeter &>/dev/null; sudo pacman -Rdd --noconfirm lightdm-gtk-greeter-settings &>/dev/null; sudo pacman -Rdd --noconfirm gdm &>/dev/null
|
||||
sleep 2
|
||||
echo
|
||||
echo "Installing & Enabling SDDM"
|
||||
echo "##########################"
|
||||
yay -S sddm-git --noconfirm
|
||||
sudo pacman -S sddm-kcm --needed --noconfirm
|
||||
sleep 2
|
||||
sudo systemctl enable sddm.service -f
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Done ! Please reboot to apply "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Switching to GDM "
|
||||
echo "###########################################"
|
||||
sleep 2
|
||||
echo
|
||||
echo "Removing Current Display Manager"
|
||||
echo "################################"
|
||||
sudo pacman -Rdd --noconfirm sddm &>/dev/null; sudo pacman -Rdd --noconfirm sddm-git &>/dev/null; sudo pacman -Rdd --noconfirm sddm-kcm &>/dev/null; sudo pacman -Rdd --noconfirm lightdm &>/dev/null; sudo pacman -Rdd --noconfirm lightdm-gtk-greeter &>/dev/null; sudo pacman -Rdd --noconfirm lightdm-gtk-greeter-settings &>/dev/null
|
||||
sleep 2
|
||||
echo
|
||||
echo "Installing & Enabling GDM"
|
||||
echo "#########################"
|
||||
sudo pacman -S --needed --noconfirm gdm
|
||||
sleep 2
|
||||
sudo systemctl enable gdm.service -f
|
||||
echo
|
||||
echo "###########################################"
|
||||
echo " Done ! Please reboot to apply "
|
||||
echo "###########################################"
|
||||
sleep 3
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,38 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
echo "######################################"
|
||||
echo "Setting up ZSH With p10k & OMZ Plugins"
|
||||
echo "######################################"
|
||||
sleep 2
|
||||
echo "Step 1 - Grabing Necessary Fonts"
|
||||
echo "################################"
|
||||
sudo pacman -S --needed --noconfirm zsh grml-zsh-config
|
||||
yay -S --noconfirm ttf-meslo-nerd siji-git ttf-unifont noto-color-emoji-fontconfig xorg-fonts-misc ttf-dejavu ttf-meslo-nerd-font-powerlevel10k noto-fonts-emoji powerline-fonts zsh-theme-powerlevel10k
|
||||
sleep 2
|
||||
echo "Step 2 - Grabing OhMyZsh & Plugins"
|
||||
echo "##################################"
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
|
||||
git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/zsh-completions
|
||||
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
||||
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
|
||||
sleep 2
|
||||
echo "Step 3 - Grabing PowerLevel10k Theme"
|
||||
echo "#####################################"
|
||||
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
|
||||
cd $HOME/ && wget https://raw.githubusercontent.com/xerolinux/xero-fixes/main/conf/.p10k.zsh
|
||||
sleep 2
|
||||
echo "Step 4 - Setting Default Shell to ZSH"
|
||||
echo "#####################################"
|
||||
sudo chsh $USER -s /bin/zsh
|
||||
cd $HOME/.local/share/konsole/
|
||||
sed -i 's|/bin/bash|/bin/zsh|g' XeroLinux.profile
|
||||
sleep 2
|
||||
echo "Step 5 - Importing XeroLinux .zshrc"
|
||||
echo "#####################################"
|
||||
cd $HOME/
|
||||
rm .zshrc
|
||||
wget https://raw.githubusercontent.com/xerolinux/xero-fixes/main/conf/.zshrc
|
||||
sleep 2
|
||||
echo "#####################################"
|
||||
echo " Done ! Now Logout & back in "
|
||||
echo "#####################################"
|
|
@ -56,7 +56,7 @@ done
|
|||
fi
|
||||
|
||||
if [ -z "$terminal" ]; then
|
||||
notify-send -t 1500 --app-name=CachyOS "No terminal installed" "Could not find a terminal emulator. Please install one."
|
||||
notify-send -t 1500 --app-name="Melawy Linux" "No terminal installed" "Could not find a terminal emulator. Please install one."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
|
@ -0,0 +1,103 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 5
|
||||
echo "###############################################################################"
|
||||
echo "# XeroLinux System Updater #"
|
||||
echo "# #"
|
||||
echo "# !!! Please Note !!! #"
|
||||
echo "# #"
|
||||
echo "# AUR Packages Will Build Before Installing.. #"
|
||||
echo "# Which might take some time depending on Package. In case it fails #"
|
||||
echo "# #"
|
||||
echo "# Please do NOT report to us, but to the package maintainer(s) upstream #"
|
||||
echo "###############################################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, Please Select Packages To Update."
|
||||
echo
|
||||
echo "########## Package Manager Selector ##########"
|
||||
echo
|
||||
echo "1. Update Arch Packages Only."
|
||||
echo "2. Update Arch & A.U.R Packages."
|
||||
echo "3. Update Flatpak Packages Only."
|
||||
echo
|
||||
echo "4. Update All in one go. (Not Topgrade)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Updating Arch Packages "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
sudo pacman -Syyu
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
clear && sh /usr/share/xerowelcome/scripts/update_system.sh
|
||||
;;
|
||||
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Updating Arch & AUR Packages "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
yay -Syyu
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
clear && sh /usr/share/xerowelcome/scripts/update_system.sh
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Updating Flatpak Packages "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
flatpak update
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
clear && sh /usr/share/xerowelcome/scripts/update_system.sh
|
||||
;;
|
||||
|
||||
4 )
|
||||
echo
|
||||
echo "##########################################"
|
||||
echo " Updating Everything in One Go "
|
||||
echo "##########################################"
|
||||
sleep 3
|
||||
yay -Syyu && flatpak update
|
||||
sleep 3
|
||||
echo "#######################################"
|
||||
echo " Done ! "
|
||||
echo "#######################################"
|
||||
clear && sh /usr/share/xerowelcome/scripts/update_system.sh
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,206 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
|
||||
echo "#################################################"
|
||||
echo "# The XeroLinux Rice Installer #"
|
||||
echo "# The Following Script is for KDE Only #"
|
||||
echo "#################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, which rice would you like to apply today ?"
|
||||
echo
|
||||
echo "################# Rice Selector #################"
|
||||
echo
|
||||
echo "1. The Catppuccin Rice (Teddy)."
|
||||
echo "2. The Dunes Rice (GamerKing)."
|
||||
echo "3. The Nord Rice (DarkXero)."
|
||||
echo "4. The Sweet Rice (Teddy)."
|
||||
echo
|
||||
echo "################# Ricing Tweaks #################"
|
||||
echo
|
||||
echo "5. Reset config back to Pure Vanilla KDE."
|
||||
echo "6. Activate Flatpak Theming (Required If used)."
|
||||
echo "7. Update Default System Theme (Layan KDE/GTK)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
echo "#################################################"
|
||||
echo "# Applying Selected Rice #"
|
||||
echo "#################################################"
|
||||
echo
|
||||
sleep 2
|
||||
cd ~ && git clone https://github.com/xerolinux/xero-catppuccin-git && cd ~/xero-catppuccin-git/ && ./install.sh
|
||||
sleep 3
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
echo "#################################################"
|
||||
echo "# Applying Selected Rice #"
|
||||
echo "#################################################"
|
||||
echo
|
||||
sleep 2
|
||||
cd ~ && git clone https://github.com/xerolinux/xero-dunes-git.git && cd ~/xero-dunes-git/ && ./install.sh
|
||||
sleep 3
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput sgr0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
fi
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
3 )
|
||||
echo
|
||||
echo "#################################################"
|
||||
echo "# Applying Selected Rice #"
|
||||
echo "#################################################"
|
||||
echo
|
||||
sleep 2
|
||||
cd ~ && git clone https://github.com/xerolinux/xero-nord-git.git && cd ~/xero-nord-git/ && ./install.sh
|
||||
sleep 3
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
4 )
|
||||
echo
|
||||
echo "#################################################"
|
||||
echo "# Applying Selected Rice #"
|
||||
echo "#################################################"
|
||||
echo
|
||||
sleep 2
|
||||
cd ~ && git clone https://github.com/xerolinux/xero-sweet-git.git && cd ~/xero-sweet-git/ && ./install.sh
|
||||
sleep 3
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
5 )
|
||||
echo
|
||||
echo "#################################################"
|
||||
echo "# Resetting to Vanilla KDE #"
|
||||
echo "# #"
|
||||
echo "# Warning, will undo current settings ! #"
|
||||
echo "# This will revert settings to Pure Vanilla KDE #"
|
||||
echo "#################################################"
|
||||
echo
|
||||
sleep 6
|
||||
cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S) && rm -Rf ~/.config/
|
||||
sudo sed -i "s/GRUB_THEME/#GRUB_THEME/g" /etc/default/grub
|
||||
sudo grub-mkconfig -o /boot/grub/grub.cfg
|
||||
sleep 3
|
||||
echo
|
||||
# Prompt the user to reboot
|
||||
tput setaf 4
|
||||
read -p "Customization Restored. Reboot recommended. Reboot now? (y/n): " reboot_response
|
||||
tput setaf 0
|
||||
echo
|
||||
# Check the user's response
|
||||
if [[ $reboot_response == "y" || $reboot_response == "yes" ]]; then
|
||||
sudo reboot
|
||||
else
|
||||
echo
|
||||
tput setaf 4
|
||||
echo "Please manually reboot your system to apply changes."
|
||||
tput sgr0
|
||||
fi
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
6 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/flatfix
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xero_rices.sh
|
||||
|
||||
;;
|
||||
|
||||
7 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/stup
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xero_rices.sh
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -0,0 +1,97 @@
|
|||
#!/bin/bash
|
||||
#set -e
|
||||
##################################################################################################################
|
||||
# Written to be used on 64 bits computers
|
||||
# Author : DarkXero
|
||||
# Website : http://xerolinux.xyz
|
||||
##################################################################################################################
|
||||
tput setaf 3
|
||||
echo "#################################################"
|
||||
echo "# XeroLinux Fixes/Tweaks #"
|
||||
echo "#################################################"
|
||||
tput sgr0
|
||||
echo
|
||||
echo "Hello $USER, what would you like to do today ?"
|
||||
echo
|
||||
echo "################## Troubleshooting ##################"
|
||||
echo
|
||||
echo "1. Apply The Samba Share Fix."
|
||||
echo "2. Clear Pacman Cache (Free Space)."
|
||||
echo "3. Restart PipeWire/PipeWire-Pulse."
|
||||
echo "4. Unlock Pacman DB (In case of error)."
|
||||
echo "5. Enable The PipeWire Echo-Cancel Module."
|
||||
echo "6. TKG Kernel/nVidia Scripts (Advanced use only)."
|
||||
echo
|
||||
echo "Type Your Selection. To Exit, just close Window."
|
||||
echo
|
||||
|
||||
while :; do
|
||||
|
||||
read CHOICE
|
||||
|
||||
case $CHOICE in
|
||||
|
||||
1 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/smbfix
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
2 )
|
||||
echo
|
||||
sleep 2
|
||||
sudo pacman -Scc
|
||||
sleep 2
|
||||
echo
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
|
||||
3 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/rpipe
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
4 )
|
||||
echo
|
||||
sleep 2
|
||||
sudo rm /var/lib/pacman/db.lck
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
5 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/pipecho
|
||||
sleep 2
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
6 )
|
||||
echo
|
||||
sleep 2
|
||||
sh /usr/local/bin/tkg
|
||||
echo
|
||||
sleep 3
|
||||
clear && sh /usr/share/xerowelcome/scripts/xerofix.sh
|
||||
|
||||
;;
|
||||
|
||||
* )
|
||||
echo "#################################"
|
||||
echo " Choose the correct number "
|
||||
echo "#################################"
|
||||
;;
|
||||
esac
|
||||
done
|
|
@ -106,11 +106,11 @@ pub fn run_cmd_terminal(cmd: String, escalate: bool) -> bool {
|
|||
let cmd_formated = format!("{cmd}; read -p 'Press enter to exit'");
|
||||
let mut args: Vec<&str> = vec![];
|
||||
if escalate {
|
||||
args.extend_from_slice(&["-s", "pkexec /usr/share/cachyos-hello/scripts/rootshell.sh"]);
|
||||
args.extend_from_slice(&["-s", "pkexec /usr/share/melawy-welcome/scripts/rootshell.sh"]);
|
||||
}
|
||||
args.push(cmd_formated.as_str());
|
||||
|
||||
let exit_status = Exec::cmd("/usr/share/cachyos-hello/scripts/terminal-helper")
|
||||
let exit_status = Exec::cmd("/usr/share/melawy-welcome/scripts/terminal-helper")
|
||||
.args(args.as_slice())
|
||||
.stdout(Redirection::Pipe)
|
||||
.join()
|
||||
|
@ -134,7 +134,7 @@ pub fn get_pacman_wrapper() -> PacmanWrapper {
|
|||
pub fn is_alpm_pkg_installed(package_name: &str) -> bool {
|
||||
let pacman = pacmanconf::Config::with_opts(None, Some("/etc/pacman.conf"), Some("/")).unwrap();
|
||||
let alpm = alpm_utils::alpm_with_conf(&pacman).unwrap();
|
||||
matches!(alpm.localdb().pkg(package_name.as_bytes()), Ok(_))
|
||||
alpm.localdb().pkg(package_name.as_bytes()).is_ok()
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
|
|
@ -1,30 +1,31 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.40.0
|
||||
<!-- Generated with glade 3.40.0
|
||||
|
||||
Copyright (C) 2021-2023 CachyOS team
|
||||
Copyright (C) 2023-2024 Melawy (Valeria Fadeeva)
|
||||
|
||||
This file is part of cachyos-welcome.
|
||||
This file is part of melawy-welcome.
|
||||
|
||||
cachyos-welcome is free software: you can redistribute it and/or modify
|
||||
melawy-welcome is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
cachyos-welcome is distributed in the hope that it will be useful,
|
||||
melawy-welcome is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cachyos-welcome. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with melawy-welcome. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
-->
|
||||
<interface domain="cachyos-hello">
|
||||
<interface domain="melawy-welcome">
|
||||
<requires lib="gtk+" version="3.20"/>
|
||||
<!-- interface-css-provider-path style.css -->
|
||||
<!-- interface-license-type gplv3 -->
|
||||
<!-- interface-name cachyos-welcome -->
|
||||
<!-- interface-copyright 2021-2023 CachyOS team -->
|
||||
<!-- interface-name melawy-welcome -->
|
||||
<!-- interface-copyright 2023-2024 Melawy (Valeria Fadeeva) -->
|
||||
<object class="GtkImage" id="abouticon">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
|
@ -71,7 +72,7 @@ along with cachyos-welcome. If not, see <http://www.gnu.org/licenses/>.
|
|||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="has-focus">True</property>
|
||||
<property name="label" translatable="yes">Welcome to CachyOS!</property>
|
||||
<property name="label" translatable="yes">Welcome to Melawy Linux!</property>
|
||||
<attributes>
|
||||
<attribute name="weight" value="bold"/>
|
||||
<attribute name="scale" value="2"/>
|
||||
|
@ -89,7 +90,7 @@ along with cachyos-welcome. If not, see <http://www.gnu.org/licenses/>.
|
|||
<property name="can-focus">False</property>
|
||||
<property name="label" translatable="yes">Thank you for joining our community!
|
||||
|
||||
We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we enjoy building it. The links below will help you get started with your new operating system. So enjoy the experience, and don't hesitate to send us your feedback.</property>
|
||||
We, the Melawy Developers, hope that you will enjoy using Melawy as much as we enjoy building it. The links below will help you get started with your new operating system. So enjoy the experience, and don't hesitate to send us your feedback.</property>
|
||||
<property name="justify">fill</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="width-chars">1</property>
|
||||
|
@ -284,8 +285,6 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
<property name="can-focus">False</property>
|
||||
<items>
|
||||
<item id="en">English</item>
|
||||
<item id="de">German</item>
|
||||
<item id="pl">Polish</item>
|
||||
<item id="ru">Russian</item>
|
||||
</items>
|
||||
<signal name="changed" handler="on_languages_changed" swapped="no"/>
|
||||
|
@ -415,15 +414,15 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
<property name="spacing">10</property>
|
||||
<child>
|
||||
<object class="GtkEventBox">
|
||||
<property name="name">telegram</property>
|
||||
<property name="name">website</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<signal name="button-press-event" handler="on_link1_clicked" swapped="no"/>
|
||||
<child>
|
||||
<object class="GtkImage" id="telegram">
|
||||
<object class="GtkImage" id="website">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="tooltip-text">Telegram</property>
|
||||
<property name="tooltip-text">Website</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
@ -433,6 +432,26 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox">
|
||||
<property name="name">mastodon</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<signal name="button-press-event" handler="on_link1_clicked" swapped="no"/>
|
||||
<child>
|
||||
<object class="GtkImage" id="mastodon">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="tooltip-text">Mastodon</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox">
|
||||
<property name="name">discord</property>
|
||||
|
@ -447,26 +466,6 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox">
|
||||
<property name="name">reddit</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<signal name="button-press-event" handler="on_link1_clicked" swapped="no"/>
|
||||
<child>
|
||||
<object class="GtkImage" id="reddit">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="tooltip-text">Reddit</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
|
@ -497,6 +496,9 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<style>
|
||||
<class name="homepage"/>
|
||||
</style>
|
||||
|
@ -511,7 +513,7 @@ We, the CachyOS Developers, hope that you will enjoy using CachyOS as much as we
|
|||
<object class="GtkHeaderBar" id="headerbar">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="title">CachyOS Hello</property>
|
||||
<property name="title">Melawy Welcome</property>
|
||||
<property name="show-close-button">True</property>
|
||||
<child>
|
||||
<placeholder/>
|