Linuxiarze.pl Forum

Dystrybucje Linux => Arch => Wątek zaczęty przez: lunatyk w Kwiecień 23, 2019, 12:47:07 PM

Tytuł: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 23, 2019, 12:47:07 PM
Dzień dobry,

zdecydowałem się sprawdzić Arch'a w web dev'ie (Laravel). Póki co zainstalowałem go testowo na wirtualnej maszynie za pośrednictwem Zen Installer'a. Chciałbym go teraz skonfigurować. Narzędzia których potrzebuję to:
- GIT + GitKraken
- PHP (> 7.1) + Composer
- Apache
- Visual Studio Code
- MySQL

Z tego co czytałem MySQL został zastąpiony przez MariaDB. Do tej pory korzystałem wyłącznie z MySQL podczas tworzenia aplikacji w Laravelu i nie wiem do końca jakie konsekwencje może nieść za sobą korzystanie z MariaDB. To nie ja zarządzam serwerami w firmie, ale wydaje mi się że korzystają z MySQL.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: invalidcorgi w Kwiecień 23, 2019, 02:21:42 PM
Cześć,

MySQL nie do końca został zastąpiony przez MariaDB. MySQL istnieje i rozwija się we własnym kierunku jednak licencja należy do Oracle co budzi pewien niepokój. MariaDB idzie we własnym kierunku ale aktualne wersje obu tych systemów wychodzą z tego samego kodu źródłowego. Przejście z jednego systemu na drugi w zdecydowanej większości przypadków powinno być banalne: wywalasz MySQL, instalujesz MariaDB i wszystko powinno działać. Warto jednak zobaczyć z jakiej wersji MySQL miałbyś korzystać i przeczytać to https://mariadb.com/kb/en/library/upgrading-from-mysql-to-mariadb/. Połączenie z MariaDB powinno działać bezproblemowe przy użyciu narzędzi/bibliotek/providerów stworzonych dla MySQL. W przypadku rozpoczęcia pracy "na czysto" dla Laravela powinno być nieistotne czy łączy się z MySQL czy MariaDB.

Co do rozważań używania innych rozwiązań polecałbym Ci się zastanowić nad zmianą Apache na Nginx. W tej chwili istnieje niewiele powodów aby trzymać się serwera Apache.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 23, 2019, 02:55:22 PM
Jeśli chodzi o mnie, to nie widzę przeszkód by przejść na MariaDB. Głównym problemem jest tu praca z istniejącymi już aplikacjami i utrzymywanie ich. Jeśli są postawione na MySQL, a ja korzystałbym z MariaDB na local'u nic się nie wykrzaczy na produkcji?
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: invalidcorgi w Kwiecień 23, 2019, 03:26:35 PM
Jeśli produkcyjnie i tak będzie używany MySQL a nie MariaDB, to mimo że MariaDB nie powinno sprawiać problemów radziłbym jednak po prostu użyć MySQL. Paczka jest dostępna w AUR.

Są też inne opcje. Aby nie integrować systemu bazodanowego z systemem operacyjnym możesz np. użyć obrazu dockera z MySQL. Jeśli miałby zostać użyty docker to można od razu maksymalnie zbliżyć środowisko developerskie do produkcyjnego przez utworzenie obrazów skonfigurowanych jak na serwerze produkcyjnym. W razie większej ilości wykonywanych projektów na raz nie byłoby wtedy też problemów z zarządzaniem różnymi wersjami PHP itp.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 23, 2019, 03:31:15 PM
Postaram się na początek zainstalować MySQL z AUR w takim razie. Mógłbym prosić o wskazówki?
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 23, 2019, 03:41:15 PM
Cytat: lunatyk w Kwiecień 23, 2019, 12:47:07 PM
- GIT + GitKraken
- PHP (> 7.1) + Composer
- Apache
- Visual Studio Code
- MySQL
Nic nie stoi na przeszkodzie instalacji :)
- GIT: https://wiki.archlinux.org/index.php/Git
- GitKraken - jest w repozytorium archlinuxcn oraz można go zbudować z AUR
- Apache https://wiki.archlinux.org/index.php/Apache_HTTP_Server (na pewno serwer?)
- VSC - wrzuć sobie w yay vsc, tak by przeszukało Ci zarówno repozytoria, jaki AUR - niestety nie wiem, co Ci doradzić, bo nie korzystam z tego; jedynie mogę podpowiedzieć, że w archlinuxcn jest paczka vitrual-studio-code-bin, która jest też w AUR; to przepakowana do formatu pacmana oryginalna binarka,
- MySQL - jest w AUR

Cytat: lunatyk w Kwiecień 23, 2019, 12:47:07 PM
Z tego co czytałem MySQL został zastąpiony przez MariaDB.
Przeczytaj: https://wiki.archlinux.org/index.php/MySQL. Tak, w Archu MySQL został zastąpiony przez MariaDB, co oznacza, że:
- w repozytorium znajdziesz MariaDB a nie MySQL,
- programy w repozytorium, które wymagają pracy z MySQL "widzą" MariaDB jakby to było MySQL (nie oznacza to, że jest to rozwiązanie w 100% kompatybilne, jak sądzę),
- w AUR nadal jest MySQL skąd możesz je sobie zbudować. Jak widzę są dostępne wersje 5.1, 5.5, 5.6, 5.7 oraz 8.0. Pewnie dla zapewnienia 100% kompatybilności warto byłoby Ci się dowiedzieć jaka wersja jest w Twojej firmie i zainstalować taką samą. Jeśli to wersja inna niż te cztery, to pewnie można byłoby się pokusić o próbę zrobienia PKGBUILD również dla takiej wersji.

Cytat: lunatyk w Kwiecień 23, 2019, 03:31:15 PM
Postaram się na początek zainstalować MySQL z AUR w takim razie. Mógłbym prosić o wskazówki?

O jakie Ci wskazówki chodzi? W poprzednim wątku dałem Ci link do podstawowej odpowiedzi nt. instalacji z AUR.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: invalidcorgi w Kwiecień 23, 2019, 03:57:18 PM
Cytat- VSC - wrzuć sobie w yay vsc, tak by przeszukało Ci zarówno repozytoria, jaki AUR - niestety nie wiem, co Ci doradzić, bo nie korzystam z tego; jedynie mogę podpowiedzieć, że w archlinuxcn jest paczka vitrual-studio-code-bin, która jest też w AUR; to przepakowana do formatu pacmana oryginalna binarka
Uzupełniając tą wypowiedź, jest o tym wpis tutaj https://wiki.archlinux.org/index.php/Visual_Studio_Code
Masz więc do wyboru instalację visual-studio-code-bin z AUR lub paczkę code z repozytorium, code jest open sourcową wersją vsc m.in. bez telemetrii wysyłanej do Microsoftu. Różni się też w paru szczegółach od vsc jednak w developmencie PHP nie powinno mieć to żadnego znaczenia.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 23, 2019, 11:52:05 PM
Próbowałem dzisiaj wiele razy zainstalować mysql. Za każdym razem sugeruje mi mariadb podczas próby instalacji.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 24, 2019, 12:03:58 AM
Co Ci to sugeruje i co konkretnie usiłowałeś zainstalować i jak? Jakie błędy ewentusalnie podaje próba instalacji mysql, libmysql oraz mysql-client oraz czy budowa tych paczek przebiegła prawidłowo?
Zwróć uwagę na to, że gdy MySQL został w Archu porzucony na rzecz MariaDB, aktualizacja systemu wymagała dokonania ręcznie pewnych zmian: https://www.archlinux.org/news/mariadb-replaces-mysql-in-repositories/ - być może obecnie będziesz musiał dokonać analogicznej operacji, bowiem mariadb "dostarcza" mysql (wprawdzie w wersji 10.3.14).
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 24, 2019, 12:19:43 AM
Wydałem proste polecenie: yay -S mysql
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 24, 2019, 12:46:48 AM
A ja wydałem pak -Syu. Coś Ci to mówi?;) To mi tak samo nic nie mówi yay -S mysql (choć nieco więcej prawdopodobnie). Niestety nikt wróżką nie jest i nie ma pojęcia co przynosi ta komenda u Ciebie. Wiem natomiast, że:
1. PKGBUILD dla mysql winien zbudować 3 paczki (mysql, libmysql i mysql-client),
2. wszystkie te paczki winny zostać zainstalowane,
3. z uwagi na to, że w Archu mysql został zastąpiony przez mariadb, to "przywrócenie" mysql - choć możliwe - może być kłopotliwe;
4. z jednej bowiem strony mariadb "oszukuje" inne paczki, które wymagają mysql, że ten jest w systemie, z drugiej strony paczki zbudowane z AUR są w konflikcie z mariadb; obie grupy paczek nie mogą koegzystować! Paczka mariadb nie musi być w każdym systemie, zatem musiałeś ją jakoś i z jakiegoś powodu zainstalować (bezpośrednio, albo jako zależność czegoś), jeśli teraz chcesz mieć mysql w miejsce mariadb, to musisz niejako "podmienić" mariadb przez mysql,
Co zatem u Ciebie przyniosło wydanie tej komendy, którą pokazałeś? Jakie paczki zostały zbudowane? Jakie miały zostać zainstalowane? Dlaczego instalacja nie powiodła się? Ponownie - co oznacza to, co zawarłeś w poprzednim swoim wpisie?

Wg mnie - najprościej jest w ogóle instalować system taki jak Arch od początku do końca wiedząc co się chce uzyskać, ale - wiadomo - nie zawsze to możliwe. Masz teraz przynajmniej 2 możliwości:
1. zainstalować mysql w miejsce mariadb, czyli godząc się na odinstalowanie tej drugiej grupy paczek z wykorzystaniem informacji z poprzedniego wpisu; w ten sposób w Twoim systemie mariadb zostanie konsekwentnie zastąpiona przez mysql,
2. pozostać przy mariadb i zobaczyć (wszak testujesz jeszcze przez miesiąc) czy da się w ten sposób współpracować z kolegami (ale sprawdziłbym to "na sucho"); spytaj też kolegów czy na pewno oni mają MySQL, bo w bardzo wielu dystrybucjach ta baza została zastąpiona właśnie przez MariaDB.

PS: Tak wiem, nieco inaczej ten wpis brzmiał ok. północy - teraz jest tak, jak winno być. Z góry przepraszam (czy raczej z dołu, ale musisz sam dawać maksimum informacji, a nie jedynie nic nie znaczący opis czegoś).
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 12:54:11 AM
Dziękuję za obszerną odpowiedź. Zainstalowałem wczoraj Apache + MariaDB + PHP i po wstępnej konfiguracji jakoś to działało. Udało się przeprowadzić migracje w testowym projekcie Laravela, więc wygląda na to, że jest okej, choć okazję do spytania będę miał dopiero za miesiąc.

Mam jeszcze drugie pytanie, niezwiązane z web development'em. Nauczyłem się już instalować czystego Arch'a bez większych problemów. Testowo na kilku maszynach wirtualnych chciałem użyć innych środowisk graficznych, jednak każde z nich instaluje jakieś swoje dodatki. Co powinienem zainstalować dla GNOMEa, a co dla Deepin'a by uzyskać możliwie najczystsze DE? Czym jest Avahi, Qt V4L2 etc?
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 25, 2019, 07:17:08 AM
Ogólna zasada: jeden problem = jeden wątek. Zatem załóż nowy. Z góry jednak na pytanie "czym jest X" dostaniesz prostą odpowiedź: sprawdź sobie w wiki Archa albo wikipedii itp. Zwłaszcza jeśli chodzi o etc :) O reszcie można podyskutować.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: TataPingu w Kwiecień 25, 2019, 08:47:19 AM
Cytat: lunatyk w Kwiecień 25, 2019, 12:54:11 AM
Co powinienem zainstalować dla GNOMEa, a co dla Deepin'a by uzyskać możliwie najczystsze DE?

Właściwie, to co Ty rozumiesz przez "czyste" (i wcześniej "dodatki") DE ?
- w pierwszym wątku, o ile sobie dobrze przypominam, pisałeś, że emigrujesz z windy i przypuszczam, że Twoje określenia odnoszą się do zachowania Windy...

Nie powinieneś szukać analogii, bo "czyste" w linuksie oznacza zupełnie coś innego, niż pod windowsem...
- pod linuksem "czyste", znaczy (mniej, więcej) "prawidłowo zainstalowane", t.j. z wszystkimi potrzebnymi i aktualnymi paczkami, a to, że pod systemem znajdziesz inne paczki, czy biblioteki, niekiedy z nazwy sugerujące przynależność do innego DE, nie oznacza, iż są to zbędne "śmieci" (w windziarskim "rozumieniu")

Oczywiście, i pod linuksem możesz mieć coś "zbędnego", ale to nie jest tak, jak pod windą, że potem te "pozostałości" kolidują z innymi programami. Po prostu, masz zainstalowany dodatkowy program...
- i nic więcej

By Ci to uświadomić, użyję przykładu...
Wyobraź sobie, że instalujesz MATE, jako DE. Domyślnym edytorem tekstu jest tutaj "Pluma". Po jakimś czasie decydujesz się jednak przejść na np. XFCE. W tym przypadku, domyślnie, edytorem jest chyba "Leafpad".
Podczas likwidacji MATE, może się tak zdarzyć, że "Pluma" pozostanie w systemie...
Nie oznacza to jednak, iż Pluma "wadzi" Leafpadowi, po prostu masz teraz dwa edytory i jeśli przyjdzie Ci na to "ochota", to nie będzie żadnego problemu z "bezśladowym" usunięciem Plumy...
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: PomPom w Kwiecień 25, 2019, 06:05:37 PM
OPie, jak chcesz mieć jak najmniej, to kieruj się wiki i wgrywaj absolutne podstawy, czyli np. odpuść sobie wszelkie *-extra, *-goodies, itd.

A co do czystości, to wydaje mi się, że to niezależnie od systemu pojęcia nadużywane, bardzo ogólne i potężnie subiektywne.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 06:27:44 PM
Wiadomo że "czysty system" to subiektywne pojęcie. Chodzi mi przede wszystkim o Avahi i QT V4L2. Wydają się zbędne dla mnie.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: PomPom w Kwiecień 25, 2019, 06:42:52 PM
Jak używasz jakiegoś programu typu Pamac, to on wyświetla opis tego, za co pakiet odpowiada. Oba wyglądają na zbędne, ale też nie wiem komu one w czymś mają wadzić.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 25, 2019, 07:04:13 PM
Cytat: PomPom w Kwiecień 25, 2019, 06:05:37 PM
OPie, jak chcesz mieć jak najmniej, to kieruj się wiki i wgrywaj absolutne podstawy, czyli np. odpuść sobie wszelkie *-extra, *-goodies, itd.
To akurat niekoniecznie jest dobra rada. Owe extra itp. często mogą oferować pożądaną przez kogoś funkcjonalność.
Ale fakt - do tej pory nie wiemy co to "czysty system" :)

@lunatyk - Nikt Ci nie odpowie na pytanie, czy Tobie jest potrzebne Avahi, V4L2, bądź Qt5 (bo o to Ci chodzi prawdopodobnie). To ostatnie, to są biblioteki, na których budowane są niektóre programy. Jeśli zatem zainstalujesz program, który jest budowany bezpośrednio bądź pośrednio na tym frameworku, to tę paczkę qt5-* musisz mieć, bo inaczej ów program nie będzie działać.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: PomPom w Kwiecień 25, 2019, 07:17:53 PM
No ja wiem, ale jak komuś przeszkadzają takie pojedyncze pakiety, to od pakietów z -extra, itp. dostanie zawału :D Na Linuxie zboczeńców nie brakuje.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 07:23:53 PM
Chyba się do nich zaliczam w takim wypadku  ;D
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: TataPingu w Kwiecień 25, 2019, 07:34:15 PM
Cytat: lunatyk w Kwiecień 25, 2019, 07:23:53 PM
Chyba się do nich zaliczam w takim wypadku  ;D

Kurcze, to jak "czysciles" winde ?
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 25, 2019, 08:13:10 PM
Cytat: lunatyk w Kwiecień 25, 2019, 07:23:53 PM
Chyba się do nich zaliczam w takim wypadku  ;D
To w ogóle nie jest tak. Przynajmniej w Archu. Tu trzeba myśleć. Paczki są najczęściej skompilowane z zalecanymi zależnościami. I tylko te są "ciągnięte" jako zależności. Wywalisz zależność - wywalisz paczkę. Oprócz tego są zależności opcjonalne. Możesz, ale nie musisz ich instalować. Instalujesz, gdy chcesz mieć określoną funkcjonalność, ale... z uwagi na pewne purystyczne podejście taka paczka sama w sobie w ogóle może nie działać bez swej zależności opcjonalnej. Masz przykład: https://github.com/polaur/new-branded/blob/master/clamav-gui/PKGBUILD. To jest nakładka na clamav. Bez clamav nie ma absolutnie żadnego sensu. Niemniej jednak ani do jego budowy, ani do "działania" samej aplikacji (czyli otwiera się, można konfigurować itp.) nie wymaga clamav, a zatem nie ma go ani w depends (zależności), ani w makedepends (zależności wymagane kompilacji wyłącznie).
Innymi słowy - instalując paczkę trzeba myśleć i czytać instalując paczkę.

Niemal każde zaawansowane DE obecnie zawiera od groma zależności. Każda aplikacja - bywa, że również. Jeśli chcesz mieć w istocie purystyczny system, to instalujesz jakiś WM i obudowujesz go zgodnie z tym co potrzebujesz, a nadto sprawdzasz, czy nie można jakiejś aplikacji skompilować bardziej "koszernie" :) Wówczas będziesz mieć wyłącznie to co chcesz i musisz mieć. GNOME, które zainstalowałeś na pewno nie należy do tego typu DE, które oszczędnie gospodarują zależnościami. Inna sprawa, że Qt zainstalowało Ci się prawdopodobnie jako zależność jakiejś aplikacji. Jakiej? Sprawdź.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 08:23:13 PM
Z tymi zależnościami to zdążyłem się zorientować czytając wiki Arch'a. Mniejsza z QT i Avahi, bo jak mniemam muszą zostać.

Co do DE, to brałem pod uwagę wyłącznie GNOME i Deepin'a, bo tylko z nimi miałem styczność. Stąd ten wybór.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 25, 2019, 09:07:00 PM
To w Deepin miałbyś w ogóle misz-masz. Zależności i do Qt i do Gtk :) Zdecyduj się: "czysty", purystyczny system, czy Deepin, bo to są skrajności.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 09:44:16 PM
Zdecydowanie 1 opcja. Wolę stabilność od świecidełek, ale mimo wszystko system musi być estetyczny. Muszę się w nim odnaleźć
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: PomPom w Kwiecień 25, 2019, 09:47:24 PM
GNOME albo KDE Plasma - solidne, estetyczne, pewne środowiska.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: pavbaranov w Kwiecień 25, 2019, 09:53:40 PM
@lunatyk - Wiesz co... Czytam sobie to co piszesz i jedno Ci mogę zaproponować: po prostu używaj. To co piszesz, yo z całym szacunkiem błądzenie po omacku w oparciu o jakieś zasłyszane opinie, dążąc do czegoś co nie istnieje i przede wszystkim - nie ma dla Ciebie absolutnie żadnego znaczenia przy używaniu systemu. Choć... w istocie, jeśli zajętość ileś MB RAM jest dla Ciebie istotne, to warto się trzymać jednego frameworka (głównie kwestia współdzielenia bibliotek). Jeśli nie jest to istotne - nie ma znaczenia, a sam nawet nie potrafisz zdefiniować "czysty system".
I ponownie: co u diaska to, o czym teraz tu prawimy ma wspólnego z tematem wątku?
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: lunatyk w Kwiecień 25, 2019, 10:18:14 PM
Zdaję sobie sprawę, że zboczyliśmy mocno od głównego tematu. Przepraszam i koniec dygresji na temat środowisk graficznych.

Ciężko mi zdefiniować "czysty system" mając zaledwie 3 miesięczne doświadczenie z Linuxem. Dziękuję że dokładacie wszelkich starań by domyślić się o co mi właściwie chodzi.
Tytuł: Odp: Arch - web development (Laravel)
Wiadomość wysłana przez: LinGruby w Kwiecień 26, 2019, 01:29:57 PM
Cytat: lunatyk w Kwiecień 25, 2019, 09:44:16 PM
Zdecydowanie 1 opcja. Wolę stabilność od świecidełek, ale mimo wszystko system musi być estetyczny. Muszę się w nim odnaleźć

wiem że to jak sam wspomniałeś jest trochę nie na temat ale takiej stabilności jakie miałem na i3wm i bspwm nie miałem na żadnym innym środowisku a jak byś chciał się pobawić z i3wm to mogę podesłać mój config

https://github.com/lingruby-pl/arch-i3

na pewno pomoże w szybszym dostosowaniu do swoich potrzeb ;)

na github mam jeszcze config do conky przydatny dodatek :)