Dlaczego 27 linijek Pythona to wszystko, czego potrzebujesz do inspirującego pulpitu w Linux Mint

Desklets w Linux Mint to świetne narzędzie do personalizacji pulpitu. Dostosuj je do własnych potrzeb, tworząc niestandardowy widget cytatów, aby uzyskać inspirujący wygląd.
Desklets to moja ulubiona funkcja dostosowywania w Linux Mint, ponieważ umożliwiają łatwe dodawanie widgetów na pulpit, co docenisz, jeśli chcesz mieć doświadczenie podobne do Windows po przejściu na Mint.
Chociaż doświadczenie z deskletami w Mincie jest solidne, nie jest tak kompletne, jakbym chciał. Po pierwsze, zakładka 'Pobierz desklety' nie ma wielu opcji; w momencie pisania tego tekstu policzyłem około 67 dostępnych deskletów. Po drugie, chociaż niektóre desklety są bardzo konfigurowalne, inne nie są, szczególnie jeśli masz unikalne potrzeby dotyczące widgetów na pulpicie, co ja posiadam. Pozwól, że dam Ci przykład.
Jeśli czytałeś jakiekolwiek moje artykuły dotyczące automatycznej zmiany lub aktualizacji tła, wiesz, że lubię mieć inspirujący wygląd pulpitu. Zazwyczaj osiągam ten efekt dzięki narzędziom takim jak Shotwell, Variety lub skryptowi tła, który obraca kolekcję tła z inspirującymi cytatami, które pobrałem. To nie jest najbardziej eleganckie rozwiązanie, ale działa.
Więc możesz sobie wyobrazić, jak bardzo się ucieszyłem, gdy po dwóch tygodniach zastąpienia mojej pracy na Windows Linux Mint zauważyłem, że Mint ma 'desklet z cytatem dnia', który mogłem pobrać i wyświetlić na swoim pulpicie, co dokładnie zrobiłem.
Niestety, na tym kończy się moja radość. Ku mojemu zaskoczeniu, desklet obsługuje tylko lokalne pliki z cytatami lub pliki fortune, co było rozczarowujące, ponieważ kto ma plik pełen pobranych cytatów, prawda?
Fortune to klasyczny program Linux, który wyświetla losowe pliki tekstowe z lokalnej bazy danych. Niestety, nie jest zbyt konfigurowalny.
Jakby tego było mało, to jedyny desklet z cytatami dostępny do pobrania w menedżerze (podwójne rozczarowanie).
Nie zrażony i zdeterminowany, aby wyświetlać inspirujące cytaty na moim pulpicie, postanowiłem stworzyć niestandardowy widget cytatów dla Linux Mint. Jeśli również chcesz mieć inspirujący pulpit w Linux Mint, pozwól, że pokażę Ci, jak to zrobić.
Utworzenie folderu projektu to pierwszy krok. Możesz to zrobić przez GUI, ale to stary sposób, więc użyjmy terminala, co, umówmy się, jest o wiele bardziej zabawne. Najpierw użyj komendy cd, aby przejść do folderu domowego, a następnie użyj komendy mkdir, aby utworzyć folder o odpowiedniej nazwie. Nazwałem mój 'Projekt Widget Cytatów.'
mkdir -p ~/"Projekt Widget Cytatów"BOK Z INSTRUKCJĄ: Użycie cudzysłowów zapewnia, że terminal interpretuje spacje jako część nazwy folderu. Jeśli wolisz ich nie używać, utwórz nazwę folderu bez spacji.
Teraz musimy stworzyć 'mózg' naszego widgetu cytatów, więc zróbmy to.
Krok 2: Programowanie silnika zmieniacza cytatów
Przejdź do folderu projektu, użyj edytora tekstu w terminalu, aby utworzyć plik Python o nazwie 'quote-engine.py', a następnie skopiuj i wklej poniższy skrypt do pliku i zapisz go. Użyję nano.
#!/usr/bin/env python3 import requests import os import textwrap #-----------KONFIGURACJE-------------- BASE_DIR = os.path.dirname(os.path.abspath(__file__)) QUOTE_FILE = os.path.join(BASE_DIR, "desktop_quote.txt") def get_wisdom(): try: response = requests.get("https://zenquotes.io/api/random", timeout=10) if response.status_code == 200: data = response.json()[0] # Użyj textwrap do sformatowania cytatu do 50 znaków szerokości wrapper = textwrap.TextWrapper(width=50) wrapped_quote = wrapper.fill(text=data['q']) output = f"{wrapped_quote}\n— {data['a']}" with open(QUOTE_FILE, "w") as f: f.write(output) except: pass if __name__ == "__main__": get_wisdom()Ten 27-liniowy skrypt Python tworzy zmieniacza cytatów, który pobiera cytaty z Zen Quotes, co nie wymaga API do podstawowego użycia. Zanim przejdziemy dalej, użyj komendy chmod, aby uczynić plik wykonywalnym, a następnie uruchom go, aby utworzyć plik 'desktop_quote.txt' określony w skrypcie:
chmod +x quote-engine.py./quote-engine.pyUtrzymajmy prostotę i przyjazność dla początkujących, używając deskletu 'command', który jest już dostępny w Mint. Kliknij prawym przyciskiem myszy w dowolnym miejscu na pulpicie i wybierz 'Dodaj desklety.' Przejdź do sekcji 'Pobierz' w menedżerze deskletów i wyszukaj 'Command.' Zainstaluj 'desklet wyników polecenia', a następnie wróć do zakładki zarządzania, dodaj go do swojego pulpitu, a następnie kliknij ikonę zębatki, aby rozpocząć jego konfigurowanie.
W oknie konfiguracji usuń datę, wersję Cinnamon i opcje hostname, klikając na każdą z nich, a następnie naciskając znak '-'. Dzięki temu uzyskasz czystą przestrzeń dla deskletu cytatów.
Następnie naciśnij znak '+', aby dodać nowy wpis. Nadaj nowemu wpisowi odpowiednią etykietę lub pozostaw puste, jeśli nie chcesz, aby etykieta pojawiła się w cytacie. Następnie w polu polecenia użyj polecenia cat, aby odczytać plik desktop_quote.txt, korzystając z poniższego polecenia i naciśnij 'OK'. Ponieważ nie chcę, aby desklet wyświetlał etykietę, zostawiłem ją pustą.
cat "/home/htg/Quote Widget project/desktop_quote.txt"Użyj zakładki stylu, aby dostosować czcionkę, kolor czcionki, rozmiar, tło, przezroczystość, kolor obramowania i szerokość. Przesuń desklet tam, gdzie chcesz, a następnie wyjdź.
Teraz, gdy mamy najważniejsze elementy skonfigurowane, użyjmy systemd do automatyzacji aktualizacji cytatów.
Krok 3: Użycie systemd do zmiany cytatów automatycznie
Uruchom terminal, użyj nano, aby stworzyć plik jednostki usługi, a następnie skopiuj i wklej poniższy skrypt:
sudo nano /etc/systemd/system/quote-fetcher.service[Unit] Description=Fetch a new inspirational quote # Ustawienie to zapewnia, że nie będzie próbować pobrać bez internetu After=network-online.target [Service] Type=oneshot # Zaktualizuj pełną ścieżkę do Pythona i swojego skryptu ExecStart=/usr/bin/python3 "/home/htg/Quote Widget project/quote-engine.py" User=htg [Install] WantedBy=multi-user.targetWłącz plik jednostki usługi:
sudo systemctl enable quote-fetcher.serviceUżyj ponownie nano (lub swojego ulubionego edytora tekstu w terminalu), aby stworzyć plik timera, który planuje aktualizacje cytatów, a następnie skopiuj i wklej poniższy skrypt do niego.
sudo nano /etc/systemd/system/quote-fetcher.timer[Unit] Description=Run the quote fetcher every 2 minutes [Timer] # Uruchom 5 minut po włączeniu komputera OnBootSec=5min # Następnie uruchamiaj co 2 minuty po ostatnim zakończeniu OnUnitActiveSec=2min # To ustawienie zapewnia, że timer dogoni podczas wyłączania komputera Persistent=true [Install] WantedBy=timers.targetZmień 'OnUnitActiveSec=2min' na interwał, w którym chcesz, aby cytat zmieniał się. Użyłem 2 minut w celach testowych/ilustracyjnych.
Po stworzeniu pliku jednostki usługi i timera, użyj systemctl, aby przeładować demona, a następnie włącz timer, aby zapewnić jego działanie przy uruchomieniu:
sudo systemctl daemon-reloadsudo systemctl enable --now quote-fetcher.timerTo wszystko, czego potrzebujesz, aby stworzyć prosty desklet cytatów dla Linux Mint.
Ruch szefa: Użycie Conky, aby wziąć to na następny poziom
Jeśli wolisz, aby desklet cytatów wyglądał na część tapety, Conky jest drogą do tego. Zacznij od zaktualizowania systemu za pomocą terminala, a następnie zainstaluj pełną wersję Conky.
sudo apt update -ysudo apt install conky-all -yWejdź do folderu projektu, użyj edytora tekstu w terminalu, aby stworzyć nowy plik o nazwie 'quote.conkyrc' i skopiuj-wklej poniższe konfiguracje do niego:
nano ~/"Quote Widget project/quote.conkyrc"conky.config = { -- Ustawienia okna alignment = 'top_right', gap_x = 50, gap_y = 100, minimum_width = 300, maximum_width = 400, own_window = true, own_window_type = 'desktop', own_window_transparent = true, own_window_argb_visual = true, own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager', -- Ustawienia tekstu i czcionki use_xft = true, font = 'DejaVu Sans:italic:size=12', draw_shades = false, default_color = 'white', -- Ustawienia wydajności update_interval = 5.0, double_buffer = true, } conky.text = [[ ${color orange}DAILY WISDOM${color} ${hr} ${execi 5 cat "/home/htg/Quote Widget project/desktop_quote.txt"} ]]Przetestuj go, używając następującego polecenia:
conky -c "/home/htg/Quote Widget project/quote.conkyrc"Aby to zautomatyzować, uruchom menedżera „Aplikacje startowe”, kliknij znak „+”, a następnie wybierz opcję polecenia niestandardowego. Nazwij program uruchamiający, a następnie wprowadź następujące polecenie w polu polecenia (pamiętaj o dostosowaniu ścieżek).
conky -p 10 -c "/home/htg/Quote Widget project/quote.conkyrc"W polu komentarza wpisz „Generator cytatów automatycznych”. Ustaw opóźnienie uruchomienia na 60 sekund, a następnie kliknij „Dodaj”, aby uruchomić widget z automatycznie aktualizowanymi cytatami.
Jak widzisz, tworzenie niestandardowego deskletu nie jest zbyt skomplikowane. Jeśli chcesz podstawowy desklet z cytatami, użyj deskletu z wynikami poleceń, a jeśli chcesz bardziej zintegrowany widget z cytatami, użyj Conky.
Jeśli ciekawią Cię artykuły podobne do Dlaczego 27 linijek Pythona to wszystko, czego potrzebujesz do inspirującego pulpitu w Linux Mint, zajrzyj do kategorii Linux i odkryj jeszcze więcej interesujących treści.
Dodaj komentarz

Możesz być zainteresowany