Wszystko o github | Webinsider - Internet widziany od środka ™

Tag: github

Home Assistant i integracja z IMGW-PIB, czyli tworzymy automatyzację z powiadomieniami bazując na sensorach zagrożenie i alarm powodziowy

Dziś miałem napisać artykuł niezwiązany – przynajmnije nie bezpośrednio – z Home Assistant, bo ostatni artykuł, który został opublikowany (też) dotyczy wprost Home Assistant, a konkretnie jego nowej wersji. Życie jednak czasem pisze własne scenariusze i tak się stało teraz. Z powodu zagrożenia powodziowego, znajomy zapytał mnie, czy dałoby się np. w Home Assistant, z którego korzysta, dodać jakieś czujniki związane z poziomem rzeki (w jego przypadku Odry) i na tej bazie zrobić jakieś powiadomienia w sytuacji, gdy zrobi się nieciekawie. Oczywiście da się, bo inaczej by nie było tego artykułu. A przynajmniej da się teoretycznie to zrobić…

Home Assistant 2024.5 i problem z przełącznikiem w dodatku yi-hack Home Assistant integration (dla modyfikacji Yi-Hack)

Wczoraj zaktualizowałem Home Assistant do najnowszej wersji, czyli 2024.5.1, a dziś, przy okazji testu „systemu alarmowego” zorientowałem się, że nowa wersja nie chce współpracować z dodatkiem „yi-hack Home Assistant integration”. A właściwie to dodatek nie chce w pełni współpracować z nową wersją. A jeszcze precyzyjniej, to jedna z opcji, jakie dodatek dodaje do Home Assistanta nie działa, wyrzucając błąd. Dla mnie o tyle istotna opcja, że pozwalająca włączyć i wyłączyć kamerę, z czego korzystam. Nie tylko ze względu na prywatność…

Błąd aktualizacji OTA w ESPHome dla ESP8266 ESP-01(S) i ogólne problemy z ESP32 S2 mini, czyli esptool przychodzi z pomocą

Z różnych układów ESP8266 korzystam od dawna. Od niedawna zacząłem wykorzystywać też nowsze układy ESP32. Dodatkowo od jakiegoś czasu korzystam z Home Assistant, gdzie przenoszę zarządzanie większością elementów tzw. „inteligentnego domu” (sic! ;-)), a więc i wcześniej działające najczęściej na autorskim kodzie układy ESP migruję do ESPHome (poza BrewPiLess i iSpindel, ale to inna bajka). I choć w większości przypadków ta migracja jest nie tylko bezproblemowa, to jeszcze jestem pozytywnie zaskoczony wygoda pracy z ESPHome, nie tylko w połączeniu z Home Assistant (tylko ten nieszczęsny YAML i zabawa ze spacjami… ;-)). Nie oznacza to jednak, że nie pojawiają się problemy wyzwania…

Wgrywanie starszej wersji oprogramowania do kamery YI 1080p Home Camera z pomocą YI-Hack (i kopii zapasowej)

Korzystając z opisywanej na początku listopada promocji (nawet w Dzień Singla, czy Black Friday nie dało się kupić taniej) dokupiłem sobie kolejne 2 kamery YI 1080p Home Camera. Przyszły relatywnie szybko, bo wysyłka z Hiszpanii. Równie szybko zabrałem się za ich konfigurację, bo miałem dla nich już zaplanowane przeznaczenie. Przy pierwszym uruchomieniu, podłączeniu do WiFi pojawiło się pytanie o aktualizację, którą niestety zrobiłem. Niestety, bo okazało się, że nowej wersji oprogramowania nie ma na liście wersji wspieranych przez YI-Hack, czyli dodatkową modyfikację do tych kamer, która dość radykalnie zmienia ich możliwości. I mówię to jako subskrybent płatnej wersji usługi YI/Kami Cloud.

Produkty do pobrania w WooCommerce z plikami w ramach usługi Amazon S3 za pomocą bezpłatnej wtyczki, po lekkiej korekcie

Sklep internetowy z produktami cyfrowymi na WooCommerce, czyli klasyka. Pojawia się jednak kwestia plików do pobrania. Nie w kontekście bezpieczeństwa (nieuprawnione pobieranie), bo to w nawet w standardowej konfiguracji WooCommerce jest dość dobrze zabezpieczone. Chodzi o miejsce, jakie kolejne pliki zajmują (głównie w kontekście kopii zapasowych), o obciążenie łącza w przypadku, gdy kilka osób naraz będzie „ssało coś większego”. Rozwiązanie problemu relatywnie proste – skorzystać z jakiejś usługi typu S3 (Simple Storage Service) do przechowywania i dystrybuowania plików.

Własne szablony ustawień (presets) w Betaflight Configurator, czyli sporo gita i odrobina Node.js

Jako posiadacz licencji pilota/operatora drona postanowiłem, że pora na drona… FPV, co akurat niekoniecznie współgra z moimi uprawnieniami, przynajmniej bez dodatkowej osoby w roli obserwatora (o uprawnieniach pewnie na dniach coś napiszę, bo to całkiem ciekawy temat, który budzi też sporo swego rodzaju kontrowersji). I jak na informatyka i miłośnika wszelkiej maści rozwiązań IoT (np. Raspberry Pi, ESP8266) przystało, mam wrażenie, że więcej dłubię przy swojej małej ptaszynie, niż realnie nią latam. Choć tutaj jako wymówkę mam pogodę (woda w postaci deszczu i śniegu słabo sprzyja awaryjnym… lądowaniom) oraz symulatora, na którym cały czas doskonale swoje umiejętności w zakresie latania dronami FPV. A jednym z podstawowych programów służących do konfiguracji drona jest Betaflight Configurator (przynajmniej jeśli chodzi o drony z oprogramowaniem Betaflight), a w nowych wersjach pojawiła się całkiem interesująca opcja, która niekoniecznie jest aż tak oczywista…

Usuwanie pozornie nieusuwalnych aplikacji z telefonu z systemem Android (z wykorzystaniem aplikacji z graficznym interfejsem)

Napisał do mnie wczoraj kolega, że jego żona ma nowy telefon i w związku z tym ma do mnie 2 sprawy. Pierwsza poważniejsza, bo na telefonie nie ma sklepu Google (Google Play). Od razu wiedziałem, że pewnie z jakimś Huawei mamy do czynienia. I faktycznie, chodziło Huawei P40 Lite. W przypadku tego telefonu – zwłaszcza na wersji EMUI 10, w takiej sytuacji powinien pomóc program Googlefier. Jednak nie pomógł. Nad tym będziemy jeszcze pracować, ale został temat numer dwa – pozbycie się preinstalowanych aplikacji, których normalną metodą, czyli poprzez zarządzanie aplikacjami, pozbyć się nie da.

LanguageTool to świetne narzędzie do sprawdzania tekstu, które można też uruchomić na komputerze lub serwerze

W momencie, gdy pisania jest czymś więcej niż postem do wrzucenia w mediach społecznościowych, często przychodzi moment, gdy zwykła korekta błędów, wbudowana choćby w popularne przeglądarki internetowe, okazuje się niewystarczająca. W takiej sytuacji można sięgnąć po zewnętrzne, dedykowane usługi. W moim przypadku wybór padł na LanguageTool. I to nie tylko dlatego, że całkiem dobrze radzi sobie z językiem polskim, do tego nawet wersja bezpłatna w wielu przypadkach będzie wystarczająca, a jakby co, wersja płatna jest na tyle tania, że też nie powinno to stanowić problemu. Również dlatego, że jeśli zajdzie taka potrzeba, można uruchomić LanguageTool na swoim serwerze czy też komputerze.

Bitwarden Send to prosty i darmowy sposób na bezpieczne udostępnianie plików i tekstu przez internet

Prawie równo 2 lata temu, bo 15 marca 2019 opublikowałem artykuł o tym, że usługa Firefox Send (szybkie przesyłanie i dzielenie się plikami) wyszła z testów, i jest teraz jeszcze lepsza. Niestety we wrześniu 2020 Mozilla ostatecznie (i już oficjalnie) ogłosiła zamknięcie usługi Firefox Send (oraz Firefox Notes). Przez ten czas, gdy usługa Firefox Send była dostępna, chętnie z niej korzystałem do szybkiego, prostego i – co ważne – bezpiecznego przesyłania plików. Wraz z zamknięciem usługi rozważałem uruchomienie czegoś podobnego na własnym serwerze, zwłaszcza że odpowiednie pliku cały czas są dostępne w serwisie GitHub. W międzyczasie jednak zacząłem korzystać z innej usługi. Kilka dni temu jednak pojawiła się kolejna usługa tego typu, i od razu została moją podstawową…

Eksport kluczy (tokenów) 2FA/TOTP z usługi Authy, z wykorzystaniem Authy Desktop i narzędzi dla deweloperów

Po artykule na temat usługi Bitwarden (menedżer haseł, z którego korzystam) dostałem całkiem sporo zapytań m.in. od znajomych o tę usługę. Ale to, co mnie zaskoczyło chyba najbardziej, to to, że dominującym argumentem nawet nie do samego korzystania z Bitwardena, ale od razu do przejścia na wersję płatną dla moich rozmówców okazała się opcja dostępu awaryjnego, o której wspomniałem trochę przy okazji (dla mnie – głównie ze względów zawodowych – to bardzo ważna opcja, z której korzystam po to, by „w razie czego” zabezpieczyć m.in. interesy swoich klientów). A skoro już ktoś zdecydował się na wersję płatną usługi Bitwarden, to bardzo możliwe, że zdecyduje się korzystać z niej również do generowania kodów jednorazowych 2FA/TOTP (Time-based One-Time Password).

Dzięki Scrcpy nie tylko wyświetlisz obraz z telefonu na komputerze, ale możesz nim sterować, robić zrzuty ekranu i nagrywać obraz

Przygotowując materiały (grafiki) do artykułu o menedżerze haseł Bitwarden, wrzuciłem do aplikacji, w której trzymam m.in. pomysły na kolejne artykuły (Trello) cegiełkę dotyczącą zrzutów ekranu, czyli czegoś, z czego często korzystam, i często o to dostaję pytania. Pisząc precyzyjniej, chodzi o zrzuty z ekranu telefonu. Zwłaszcza z aplikacji, które takie operacje blokują. A, że wdrożenie takiej blokady jest wręcz banalne, to coraz więcej aplikacji z tego korzysta, nawet jeśli nie ma takiej potrzeby…

YI 1080p Home Camera to bardzo fajna i tania kamera WiFi, która po wgraniu Yi-Hack zyskuje jeszcze większe możliwości

Przy okazji chińskiego dnia singla (11.11) kupiłem w serwisie AliExpress kamerkę YI 1080p WiFi Wireless Home Camera. Kamerka przyszła dość szybko, bo poniżej tygodnia (kurier z hiszpańskiego magazynu). Szybko się okazało, że choć jest to dość prosta konstrukcja, a do tego tania (18-20 $), to zdecydowanie był to udany zakup. Na tyle udany, że chwilę później taką samą kamerkę kupiło kilku moich znajomych i z tego, co wiem, również są zadowoleni. O samej kamerce, jak i jej parametrach/możliwościach nie będę się rozpisywał, bo informacji na jej temat pełno w internecie. Ale uznałem, że warto napisać o tym, jak w prosty sposób tę kamerkę trochę „podrasować”, bo choć jest to operacja prosta, to kolega, który nabył ją dosłownie kilka dni temu mnie o taki „poradnik jak dla idioty” poprosił.

Problem w Tutor LMS w wersji 1.7.9 i usuwaniem produktów z koszyka w WooCommerce zdiagnozowany i (wstępnie) naprawiony

Kilka dni temu ukazała się aktualizacja wtyczki Tutor LMS do WordPressa, która pozwala zmienić stronę w platformę kursową. Aktualizacja jak to aktualizacja, coś dodała, coś poprawiła, i – jak to czasem bywa – też coś zepsuła. Okazało się, że po aktualizacji wtyczki Tutor LMS do wersji 1.7.9, i to nie tylko w przypadku, gdy kursy sprzedajemy za pomocą integracji z WooCommerce, pojawił się pewien problem…

Interaktywne Wheel Of Life (koło życia) w WordPressie, generowane przy pomocy biblioteki amCharts

Napisała do mnie koleżanka, że wymyśliła sobie, by na swojej stronie zrobić coś w stylu Wheel Of Life (koło życia) w formie wykresu radarowego. Można powiedzieć, że nawet odrobiła „pracę domową”, bo „zapukała do mnie” z gotową propozycją, tzn. skryptem, z którego chciałaby skorzystać. Chodziło o projekt Wheel-Of-Life (codescale), który nie tylko jest dostępny w serwisie GitHub, ale chyba można z niego korzystać bezpłatnie, również w celach komercyjnych. Już samo to brzmi wystarczająco dobrze… ;-)

Typed.js, czyli prosty sposób na efekt „tekstu jakby pisanego” (nie tylko) w WordPressie

Napisała do mnie koleżanka, że na jakiejś tronie widziała taki bajer, że „tekst na nagłówku strony pojawia się tak, jakby był pisany na komputerze, czyli literka po literce, i to jeszcze z kursorem”. Fakt, z doświadczenia wiem, że ten „prosty trik” – zwłaszcza odpowiednio użyty – potrafi zrobić wrażenie. A co najlepsze, jego wdrożenie jest proste, i to nie tylko na stronie działającej na WordPressie…

Sklep internetowy na WooCommerce (WordPress) i niby niewinny drobiazg, który nie pozwalał sfinalizować zamówienia, czyli… wracamy z artykułami po (dłuższej) przerwie

Artykuł ten powinien się ukazać na przełomie czerwca i lipca, gdy cala akcja miała miejsce. Pisać zacząłem go kilka dni temu, ale uznałem, że fajnie, jak ukaże się właśnie dziś, tj. 24 sierpnia 2020. Data znamienna, 24 czerwca ukazał się poprzedni/ostatni artykuł na Webinsider.pl, czyli równo 2 miesiące temu. Przerwa długa, najprawdopodobniej najdłuższa w kilkuletniej historii serwisu. Przerwa wynikająca z jednej z większych – jesli nie największej – zmian w moim życiu, przynajmniej od kilku lat. Przerwa, która w planach miała trwać 2-3 dni, maksymalnie tydzień. Stąd też moje „informatyczne” zaplecze – np. w postaci laptopa z golutkim i świeżutkim systemem Windows i telefonu – miało wystarczyć, by w razie ew. pilnych i ważnych problemów móc działać. Ale czasem w życie przynosi niespodzianki, i to większe, niż można się było spodziewać.

WP-CLI Rename Database Prefix, czyli prosty sposób, by zmienić (na domyślny ;-)) prefiks tabel w bazie danych w WordPressie

W internecie jest pełno poradników na temat WordPressa. Pełno też poradników typu „100 wtyczek, które musisz mieć, choć pewnie większości z nich nie potrzebujesz” czy też „101 sposobów na zabezpieczenie WordPressa”. Pierwsze są o tyle bzdurne, że to jakich wtyczek faktycznie potrzebujemy, zależy od tak wielu czynników, że ciężko określić taki uniwersalny zestaw, a zarazem wrzuca się tam takie potworki jak Yoast SEO czy WP Super Cache – wtyczki może nawet spoko, ale w większości używane w zły sposób, przez użytkowników, którzy nie wiedzą choćby tego, jak je poprawnie skonfigurować (dlatego np. do keszowania zalecam wtyczkę Cache Enabler, a do SEO… w większości przypadków można olać to – serio ;-)). Co do bezpieczeństwa, to słusznie pojawia się zazwyczaj temat innej nazwy administratora niż admin (oprócz zmiany na inną warto też pamiętać, by zmienić pseudonim), oraz zmiany prefiksu tabeli w bazie danych. Totalny absurd.

Zabezpieczanie plików i katalogów przed modyfikacją w systemie Linux za pomocą polecenia chattr (change attribute)

Dzisiaj na kilku stronach działających na WordPressie wdrażaliśmy pewną wtyczkę. Niby nic nadzwyczajnego, ale wtyczka ta nie pochodzi(ła) z np. z repozytorium WordPress.org, a bezpośrednio z serwisu GitHub. Tym samym jej aktualizację trzeba było oprzeć nie o standardowe mechanizmy aktualizacji WordPressa, ale o mechanizmy Gita. A, że strony te działały na jednym serwerze, to, zamiast multiplikować kod wtyczki (i tym samym procedurę aktualizacji) postanowiłem skorzystać z linków symbolicznych.

Wykrywanie urządzeń mobilnych w języku PHP (biblioteka Mobile Detect) i w WordPressie (wbudowana funkcja)

Właśnie skończyłem prace nad jednym z modułów projektu, nad którym pracuję, a w którym to module ważna jest funkcja „wyłapywania” urządzeń mobilnych (głównie telefony, tablety z racji większego ekranu nie były już tak istotne). Operację taką w PHP można wykonać choćby za pomocą funkcji preg_match(), która może wyłapywać – po słowach kluczowych w nagłówku HTTP_USER_AGENT – przeglądarkę/system, i na bazie spróbować rozpoznać, czy mamy do czynienia z urządzeniem mobilnym. Jest to dość skuteczna metoda, tyle tylko, że wymaga ciągłego śledzenia „rynku przeglądarek mobilnych”, co w tym przypadku nie wchodzi(ło) w grę. Dlatego postanowiłem skorzystać z gotowca. A właściwie, to 2 gotowców…

DNS-over-HTTPS (DoH), czyli szyfrowane (HTTPS) połączenie do serwerów DNS (na razie w przeglądarce Mozilla Firefox)

W kontekście przeglądarki Firefox dziś pewnie dominują w internecie informacje na temat płatnej subskrypcji, jaką Mozilla ma w planach zaoferować (Firefox Ad-free Internet). Ale na razie poza prostą stroną z zajawką (subskrypcja za 4,99 $ miesięcznie) wiele się nie dowiemy, bo nawet przycisk „sign up now” prowadzi do ankiety, gdzie już na pierwszej stronie mamy informację „this product isn’t available yet, but we’re working on it”. Dlatego, zamiast bawić się w spekulacje i clickbaitowe tytuły, postanowiłem, że napiszę o DNS-over-HTTPS (DoH), co wydaje się tematem dużo ciekawszym. Choć miejscami kontrowersyjnym…

Loading

Pin It on Pinterest