User Tools

Site Tools


install_procedure_new

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
install_procedure_new [2015/12/09 22:21]
matthias removed
— (current)
Line 1: Line 1:
-====== new install path using more Package-Features ====== 
- 
--- in planning -- 
-Should make the installing more stable. In fact, it has a few more steps, but the __current__ critical stuff (installing loops) should be gone with this. 
- 
-PostInst steps can be excluded with empty flag-files layed down. This is useful for having different usb-device nodes 
- 
- 
-The install steps should be: 
- 
-  - cd /tmp 
-  - opkg update 
-  - wget <mnt_ext package> 
-  - opkg install ​ <mnt_ext package> 
-  - wget <​piratebox_ext package> 
-  - opkg -d ext <​piratebox_ext package> 
- 
-And for imageboard 
-  - wget <​piratebox_mod_imagebaord package> 
-  - opkg -d ext <​piratebox_mod_imagebaord package> 
- 
-If I can include the package in the package-tree included, it will be reduced to 
- 
-  - opkg update 
-  - opkg install ​ <mnt_ext package> 
-  - opkg -d ext <​piratebox_ext package> 
- 
-And for imageboard 
- 
-  - opkg -d ext <​piratebox_mod_imagebaord package> 
- 
-===== /mnt/ext package ===== 
-Responsible for the install target for additional packages like python. 
- 
-==== done by Package-dependency ==== 
-This stuff will be installed to root by package dependencies 
- 
-The following packages are only related to usb support and FS 
- 
-  *  kmod-usb2, ​ 
-  * kmod-usb-storage, ​ 
-  * kmod-fs-vfat, ​ 
-  * kmod-nls-cp437, ​ 
-  * kmod-nls-cp850, ​ 
-  * kmod-nls-iso8859-1, ​ 
-  * kmod-nls-iso8859-15, ​ 
-  * kmod-fs-ext4, ​ 
-  * block-mount, ​ 
-  * kmod-loop, ​ 
-  * losetup 
- 
-==== postinist ==== 
-not planned for reconfiguring config path. 
- 
-If ///​tmp/​no_auto_ext//​ does exists, dont call init.d/​ext_mnt init 
- 
- 
-==== init.d/​ext_mnt init ==== 
- 
-  - USB Wait 
-  - piratebox.common -> pb_usbconfig 
-  - Create mountpoint for usb stick 
-  - create fstab entry 
-  - create swap ( create swapfile and setup) 
-  - create ext_image and make fstab 
-  - link ext/usr to /​usr/​local ​ (bin & lib) 
-      - /​mnt/​ext/​bin ​  -> /​usr/​local/​bin 
-      - /​mnt/​ext/​sbin ​ -> /​usr/​local/​sbin 
-      - /​mnt/​ext/​usr/​bin ​ -> /​usr/​local/​usr/​bin 
-      - /​mnt/​ext/​usr/​sbin ​ -> /​usr/​local/​usr/​sbin 
-  - expand profile PATH 
-  - expand LD_LIBRARY PATH  /​etc/​ldconfig 
-      - /​usr/​local/​lib 
-      - /​usr/​local/​usr/​lib 
-  - enhance opkg command -d piratebox --- to ext_image 
-  - add init.d/​ext_mnt to startup right after loading modules 
- 
-==== init.d/​ext_mnt start ==== 
- 
-   - mount usb  
-   - mount extended root  /mnt/ext from lo-filesystem 
-   - run ldconfig 
- 
-====== piratebox_ext package ====== 
- 
-invoke opkg -d ext ext_piratebox ​ 
- 
-Installs files coming with piratebox package to /mnt/ext 
- 
-==== done by Package-dependency ==== 
-      - install all needed packages ​ like python, lighttpd 
- 
-==== postinist ==== 
-  - Stop & Disable uhttpd (webinterface) 
-  - Stop & Disable lucifixtime ​ 
-  - Stop & Disable luci_dhcp_migrate 
-  - stop & disable dnsmasq ​ ! 
-  - link /​mnt/​ext/​init.d/​piratebox /​etc/​init.d/​piratebox 
-  - Check for /​mnt/​ext/​setup_done -exists? 
-    - If no, invoke init.d/​piratebox setup 
-  - invoke "​init.d/​piratebox init" ​  (can updatePB reused??) 
-  - if /​tmp/​piratebox_no_autostart 
-    - /​etc/​init.d/​piratebox start 
-  - if setup has run 
-    - echo setup-variables 
- 
-  
-==== init.d/​piratebox setup ==== 
-   - Check / change root password (does not work correctly) 
-    - piratebox.common -> pb_netconfig 
-      - always generate dynamic hostname (since 0.6) FIXME   ​(should be something like "/​tmp/​no_mesh to avoid this) 
-      - set hostname 
-      - set hostname to /etc/hosts 
-      - set static ip 
-      - enable wifi & set ssid 
-      -  Firewall restart 
-      - call "​wifi"​to refresh wifi stuff and enable it 
- 
-==== init.d/​piratebox init ==== 
-Prepares /​opt/​piratebox image 
- 
-      - prepare /​opt/​piratebox 
-        - download image 
-        - extract 
-        - make fstab entry if not exists? 
- 
-====== PirateBox Start ===== 
-/​etc/​init.d/​piratebox start 
- 
-  - mount /​opt/​piratebox if not already mounted 
-  - check if /​opt/​piratebox/​openWRT_init_done exists 
-    - if not exists (first startup) 
-      - invoke **hook** pre_openwrt_init.sh ​  ​(customization point) 
-      - load piratebox.common 
-      - remove shipped original share folder 
-      - link /​mnt/​usb/​Piratebox to /​opt/​piratebox/​share 
-      - set correct permissions to chatfile 
-      - check if www_alt exists and if yes do something 
-  - invoke /​opt/​piratebox/​init.d/​piratebox_router start 
- 
-===== /​opt/​piratebox/​init.d/​piratebox_router start  ===== 
-  - expand PATH & PYTHON_LIB with piratebox stuff 
-  - set variables for init-stuff 
-  - load piratebox.conf 
-  - check for file /​opt/​piratebox/​conf/​init_done exists (indicates if init is run),, it does not exists 
-    - invoke install_piratebox.sh ​ function "​init_openwrt"​ 
-    - invoke **hook** pre_init 
-    - invoke install_piratebox.sh function "​part2"​ 
-      - create "​upload folder"​ 
-      - create /​opt/​piratebox/​share/​board folder 
-      - create /​opt/​piratebox/​share/​tmp folder 
-      - create /​opt/​piratebox/​tmp folder 
-      - copy empty forban link-file to www 
-      - set correct permissions to share, www , cgi-bin folders and content 
-      - copy index.html to opt/​piratebox/​share 
-      - create links to board and uploadfolder in www 
-  - starting piratebox scripts 
- 
-====== piratebox_ext-mod-Imageboard ====== 
- Extra package. 
- 
-===== done by dependencies ===== 
- 
-  - install alot opkg packages + unzip 
- 
-===== postinst ===== 
- 
-  - link perl stuff around 
-  - save to /​mnt/​ext ​ "​kareha" ​ , to remember it was already installed 
-  - invole /​opt/​piratebox/​bin/​install_piratebox.sh ..... 
-     - copy activation link 
-     - wget kareha.zip 
-     - extract and copy kareha to board folder 
-     - Fix permissions 
-     - generate index.html 
- 
- 
-