Dzisiaj jest 20 wrz 2018, 03:22

Strefa czasowa UTC+1godz. [letni]




Nowy temat Odpowiedz w temacie  [ Posty: 53 ]  Przejdź na stronę 1, 2, 3  Następna
Autor Wiadomość
 Tytuł: Moje feedy działają z chaos calmer ale na nowym repo nie.
Post: 9 mar 2018, 17:16 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Hejka.
Mam GL.Mifi i feed z kilkoma paczkami które bez problemu działają na Chaos Calmer. Ponieważ domyślny CC nie ma GL.Mifi to korzystam z repo github.com/domino-team/openwrt-cc które od razu ma dokompilowane rzeczy. Wszystko działa ok.

Teraz chciałbym przerzucić się na oficjalne repo

github.com/openwrt/openwrt.git

Sklonowałem go, wrzuciłem naprostszą paczkę czyli tą z podmianą bannerka, dopisałem do feeds.config.default zrobiłem update i instalację feedów i wywala mi błąd że podmieniam coś co już jest w bazowych paczkach ...

Collected errors:
 * check_data_file_clashes: Package dominik_banner wants to install file /home/dominik/MEGA/OPNWRT/openwrt_dominik/build_dir/target-mips_24kc_musl/root-ar71xx/etc/banner
    But that file is already provided by package  * base-files
 * opkg_install_cmd: Cannot install package dominik_banner.
package/Makefile:64: recipe for target 'package/install' failed
make[2]: *** [package/install] Error 255
make[2]: Leaving directory '/home/dominik/MEGA/OPNWRT/openwrt_dominik'
package/Makefile:103: recipe for target '/home/dominik/MEGA/OPNWRT/openwrt_dominik/staging_dir/target-mips_24kc_musl/stamp/.package_install' failed
make[1]: *** [/home/dominik/MEGA/OPNWRT/openwrt_dominik/staging_dir/target-mips_24kc_musl/stamp/.package_install] Error 2
make[1]: Leaving directory '/home/dominik/MEGA/OPNWRT/openwrt_dominik'
/home/dominik/MEGA/OPNWRT/openwrt_dominik/include/toplevel.mk:216: recipe for target 'world' failed
make: *** [world] Error 2


... a po drodze wywala ostrzeżenia ...

WARNING: Makefile 'package/utils/busybox/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/busybox/Makefile' has a build dependency on 'libpam', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libgnutls', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libopenldap', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libidn', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libssh2', which does not exist
WARNING: Makefile 'package/boot/kexec-tools/Makefile' has a dependency on 'liblzma', which does not exist
WARNING: Makefile 'package/network/services/lldpd/Makefile' has a dependency on 'libnetsnmp', which does not


Mój system to Linux Mint 18, wszystko poinstalowane tak jak tutaj pisali ....

https://openwrt.org/docs/guide-develope ... ild-images


Makefile bannera jest poniżej
include $(TOPDIR)/rules.mk

PKG_NAME:=dominik_banner
PKG_RELEASE:=1
PKG_LICENSE:=GPLv2
PKG_BUILD_PARALLEL:=1

include $(INCLUDE_DIR)/package.mk

define Package/dominik_banner
  CATEGORY:=Dominik
  TITLE:=Add default banner
endef

define Package/dominik_banner/description
  Add default banner
endef

define Build/prepare
endef

define Build/Compile
endef

define Package/dominik_banner/install
    mkdir -p $(1)/etc
    rm -rf $(1)/etc/banner
    $(CP) ./banner $(1)/etc/banner
endef

$(eval $(call BuildPackage,dominik_banner))


Jeszcze reszty paczek nie próbowałem wgrywać ale mój bardziej doświadczony kolega to robił i też miał problemy.

Wiem że pewnie napisałem Makefile nie "po Bożemu". Więc jak trzeba robić paczki (bez kompilowanych komponentów) do najnowszego dev repo które napisują istniejące rzeczy?


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 9 mar 2018, 17:21 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Widziałem Twój post na forum openwrt :)

Lede tak ma że nie pozwala nadpisać pliku o takiej samej nazwie jak już inny pakiet go ma, CC pozwalało. Małe obejście to zrobienie w paczce pliku np. banner.new, a później w postinstall zrobić po prostu mv /etc/banner.new /etc/banner

A to drugie: jeżeli używasz zwykłego rozwojowego openwrt a nie lede to ono tam ma że drze się o zależności których nie ma w pakietach. Więc musisz naprawić/poprawić paczki/makefile.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 14 mar 2018, 15:06 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Dzięki za wskazówki.

Z repo okazało się że domino-team to ludzie z GL. Wskazuje na to readme
https://github.com/gl-inet/imagebuilder-cc-ar71xx

Ale pciągnąłem też LEDE i tam spróbowałem. Tak jak pisałeś skończyły się komunikaty, prawie wszystkie pakiety się kompilują (w zasadzie instalują bo kompilacji tam nie ma) ale przy dwóch drze się że podmieniam pliki które są już w innych paczkach. Chodzi o podmianę banner i distfeeds.conf w opkg. Dokopałem się że w wiki do info że ogólnie takie pliki można podmieniać tworząc katalog files i tam wrzucać, zachowując odpowiednio strukturę katalogową. Czyli np. jak banner ma iść do /etc to w files stworzyć /etc i tam wrzucić bannerek.

https://wiki.openwrt.org/doc/howto/build#custom_files

Kompiluje się bez zająknięcia i podmienia plik tak jak chciałem. Minus oczywiście jest taki że w menuconfig tego nie widać i w przypadku bardziej rozbudowanych rzeczy nie można sobie po prostu odinstalować jednym kliknięciem.

Tutaj jest aktualny sposób którego jeszcze nie próbowałem
https://openwrt.org/docs/guide-develope ... s-in-image

Próbowałem też z postinst ale zmienna {1} nie działa w postinst bo instrukcje tam umieszczone to tak naprawdę zwykły skrypt basha. Na różne sposoby kombinowałem jak namierzyć miejsce gdzie powinno być to wrzucone, nawet jak widać próbowałem z podmianą oryginalnego pliku w /package/base-files/files/etc/banner ale nie dało rady. Paczka base-files jest chyba wcześniej kompilowana niż moja i dlatego podmiana zachodzi już po fakcie.

#define Package/dominik_banner/install
#   mkdir -p $(1)/etc
#   rm -rf $(1)/etc/banner
#   $(CP) ./banner $(1)/etc/banner
#endef

define Package/dominik_banner/install   
   mkdir -p $(1)/etc
   
   #$(CP) ./banner $(1)/etc/banner2
   #$(INSTALL_DIR) $(1)/etc
   #$(INSTALL_CONF) ./banner $(1)/etc/banner2
endef

define Package/dominik_banner/postinst
   #!/bin/bash
   #mv $(TOPDIR)/package/base-files/files/etc/banner $(TOPDIR)/package/base-files/files/etc/banner.stary
   #cp $(TOPDIR)/feeds/dominik_feed/dominik_banner/banner $(TOPDIR)/package/base-files/files/etc/banner
   
   #rm -rf $(STAGING_DIR)/etc/banner
   #$(CP) $(STAGING_DIR)/etc/banner2 $(1)/etc/banner
   #$(CP) ./banner $(1)/etc/banner
endef


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 14 mar 2018, 15:31 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
/bin/sh

nie /bin/bash

router nie ma domyślnie basha. I nie używaj $(CP), STAGING_DIR itd bo to chodzi o skrypt który wykonuje sie na routerze po instalacji.
define Package/dominik_bannert/install
  mkdir -p $(1)/etc
  $(CP) ./files/banner2 $(1)/etc
endef
define Package/dominik_banner/postinst
#!/bin/sh
[ -n "$${IPKG_INSTROOT}" ] || {
   mv /etc/banner2 /etc/banner
}
exit 0
endef


Tak GL to ludzie domnio-team :), to nie jest tajemnicą.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 14 mar 2018, 16:20 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Właśnie się domyślałem że te różne zmienne nie będą tam chodzić. I brakowało mi tej zmiennej IPKG_INSTROOT. Czyli żeby ewentualnie można było odinstalować w samym urządzeniu trzeba by dorobić analogiczny skrypcik w sekcji Package/dominik_banner/postrm (oczywiście zmienić też skrypt instalacyjny żeby zamiast nadpisywać zmieniał nazwę oryginalnemu)?

Nie chodzi mi o tajemnicę tylko nie widziałem w readme poprzedniego repo o tym wzmianki :)


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 14 mar 2018, 16:25 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Tak, postrm też by sie przydał. Chyba że zakładasz że ktoś nie będzie go odinstalowywał.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 10:31 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Chyba nie za bardzo działa twój skrypt. Oczywiście banner2 istnieje w katalogu /etc ale nie podmienia go pod oryginał. Tryb verbose z grepem też nie zwraca jakiejkolwiek linijki o takiej akcji oprócz jednej z kopiowania (instalacja).
$ make V=s -j1 2> /dev/null | grep '/etc/banner2'
cp -fpR ./banner /home/dominik/OPNWRT/lede2/staging_dir/target-mips_24kc_musl-1.1.16/root-ar71xx/tmp-dominik_banner/etc/banner2


   mkdir -p $(1)/etc
   $(CP) ./banner $(1)/etc/banner2
endef

define Package/dominik_banner/postinst
   #!/bin/sh
   [ -n "$${IPKG_INSTROOT}" ] || {
      mv /etc/banner2 /etc/banner
   }
   exit 0
endef


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 10:34 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Mi tam działa :)

Rozapakuj gotowy pakiet i zobacz czy jest w nim skrypt postinst

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 10:59 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Sorki za noobskie pytanie, ale gdzie jest katalog dla paczek? W ubuntu/mint są one w /var/cache/apt/archives/ a w openwrt?


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 11:07 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
W katalogu bin. To naprawdę dziwne pytanie biorąc pod uwagę że bawisz się samodzielnie w robienie paczek...

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 11:32 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Bo dopiero lekko ponad tydzień temu zacząłem to ogarniać. Sądziłem że chodzi o lokalizację w samym openwrt a nie w katalogu źródeł.
Poza tym /bin zawsze kojarzy mi się z binarkami.

Wypakowałem paczkę, i w control.tar.gz były 2 skrypty postinst ...
#!/bin/sh
[ "${IPKG_NO_SCRIPT}" = "1" ] && exit 0
[ -x ${IPKG_INSTROOT}/lib/functions.sh ] || exit 0
. ${IPKG_INSTROOT}/lib/functions.sh
default_postinst $0 $@


... i postinst-pkg. Ten drugi zawierał twój skrypt. Dziwne że nie zadziałał.


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 11:35 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Wystaw gdzieś źródła tej paczki (makefile i pliki) o zobaczę wieczorem co z nią zrobiłeś.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 11:52 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
To tylko 2 pliki - makefile i banner więc to ciężko nawet nazwać paczką ...

http://uploadfile.pl/pokaz/1385015---htxy.html

//edycja
Dodam jeszcze że zmieniłem lekko polecenie w skrypcie. Teraz po rozpakowaniu postinst-pkg wygląda tak:

   #!/bin/sh
   [ -n "${IPKG_INSTROOT}" ] || {
      mv -v /etc/banner2 /etc/banner 1> /etc/bann_com 2> /etc/bann_error
   }
   exit 0

Ale po wgraniu skompilowanego obrazu żadne z plików ani bann_com ani bann_error nie istnieją.

//edycja2
Przerobiłem skrypt do bardziej łopatologicznej formy ...
define Package/dominik_banner/postinst
#!/bin/sh
if [ -n "$${IPKG_INSTROOT}" ]; then
   echo "doman18: postinstalacja"
   mv -v /etc/banner2 /etc/banner
   echo "doman18: koniec postinstalacji"
fi
exit 0
endef


... w standardowym outpucie są linie ...
doman18: postinstalacja
doman18: koniec postinstalacji


... i nic pomiędzy nimi a w stderr jest ...

mv: cannot stat '/etc/banner2': No such file or directory


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 14:55 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
I źle zrobiłeś.
[ -n "${IPKG_INSTROOT}" ] || {
to nie jest to samo co
if [ -n "$${IPKG_INSTROOT}" ]; then
. Wręcz przeciwnie - to jest -z, przeczytaj https://wiki.openwrt.org/doc/devel/pack ... _a_service

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 15:15 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
No właśnie wcześniej to czytałem i z tego co tam piszą to tamten skrypt jest dla opcji instalacji w prawdziwym systemie. Czyli kiedy IPKG_INSTROOT jest puste (opcja -z). Natomiast ja robię kiedy jest określone czyli w buildroocie (-n => the length of STRING is nonzero ). Nie o to chodziło?

//edit
Bo ja nie chcę robić paczki do instalacji i po sysupgradzie wchodzić do systemu i doinstalowywać jej ręcznie przez opkg (tak jak tam piszą) bo tak pewnie by bez problemu zadziałało. Tylko na etapie buildroota chcę podmienić ten banner i z tego co widzę ten skrypt chce coś robić na hoście (u mnie na kompie) a nie wewnątrz budowanego systemu.


Ostatnio zmieniony 15 mar 2018, 15:25 przez doman18, łącznie zmieniany 1 raz

Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 15:23 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Nie :) Nie mieszaj, tamte skrypty są dobre. Robiąc obraz docelowy z wkompilowanym pakietem robi się to co trzeba. Tak samo jak jak instaluje się pakiet. Poczekaj do wieczora to zerknę w to co zrobiłeś.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 15:26 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
Zrobiłem edycję postu.

Ok. Dzięki za zainteresowanie.


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 19:48 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Ściągnij źródła ode mnie: http://dl.eko.one.pl/projekty/dominik-banner.tgz

Oczyściłem i uprościłem to trochę. Obraz skompilowany z tym pakietem ma podmieniony baner. Baner możesz podmienić na kilka sposobów:
- zrobić pakiet ze skryptem postint, tak jak wyżej
- dodać własny skrypt do /etc/uci-defaults który coś będzie robił (podmieniał baner)
- dodać katalog files gdzie umieścisz pliki które chcesz podmienić (np etc/banner)
- zmodyfikować źródła pakietów i zmienić pliki które chcesz
Nie używaj podkreśleń w nazwie pakietów. Można, ale później mogą wychodzić jakiś problemy w późniejszej obróbce.

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 22:41 
Offline
Użytkownik

Rejestracja: 10 gru 2017, 23:18
Posty: 54
No właśnie gdyby to chodziło tylko o sam efekt to nie byłoby problemu bo już inne sposoby próbowaliśmy i działały bez zarzutu. Podmienialiśmy pliki oryginalne a także robiliśmy folder files. Oba sposoby mają zasadniczą wadę - słaba kontrola co jest instalowane a co nie. Pół biedy gdy chodzi o zwykły bannerek czy inny "ficzers" z 1 czy 2 plikami. Ale gdy mamy jakąś funkcjonalność składającą się z kilku plików rozproszonych po folderach i drugą i trzecią i kolejne paczki które korzystają z tych folderów to owszem dołączyć je można. Ale w razie potrzeby (testowanie, debugowanie itp) odłączenie takiej paczki jest problematyczne. W menuconfig robi się to jednym kliknięciem spacji. Dlatego właśnie mimo że żadna paczka którą stworzyliśmy (kolega) nie jest kompilowana to nie wrzucamy ją jako "custom config" tylko jako paczki złączone w feed - żeby można było je włączać i wyłączać w menuconfig. Jest ich już 15 (jakieś konfigi vpn, airdump, ssh itp) i sprawdzanie ich zainstalowanych na "kupie" byłoby ogromnym problemem. W tej chwili jeszcze walczymy z modemem w GL.MIFI który sprawia nam problemy.

I dlatego właśnie tak walczę o działanie podmiany plików z innych paczek przez nasze paczki :)

Jutro wypróbuję twoją paczkę. Widzę że jest maksymalnie uproszczona :). Ogromne dzięki za dotychczasową pomoc!


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
 Tytuł: Re: Moje feedy działają z chaos calmer ale na nowym repo nie
Post: 15 mar 2018, 22:54 
Offline
Administrator
Awatar użytkownika

Rejestracja: 10 kwie 2010, 00:28
Posty: 13263
Lokalizacja: Warszawa
Jaki modem macie w gl.mifi?

_________________
http://eko.one.pl - prawie wszystko o OpenWrt


Na górę
 Wyświetl profil  
Odpowiedz z cytatem  
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 53 ]  Przejdź na stronę 1, 2, 3  Następna

Strefa czasowa UTC+1godz. [letni]


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów

Szukaj:
Przejdź do:  
cron
designed by digi-led.pl
...Copyright © 2010-2013, Ekipa openrouter.info