Merge pull request #3 from freifunk-gluon/master
get all commits from master
This commit is contained in:
		
						commit
						6c8fcb0405
					
				
							
								
								
									
										34
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								Makefile
									
									
									
									
									
								
							| @ -89,19 +89,20 @@ manifest: FORCE | ||||
| 	@echo '$(GLUON_PRIORITY)' | grep -qE '^([0-9]*\.)?[0-9]+$$' || (echo 'Please specify a numeric value for GLUON_PRIORITY to create a manifest.'; false) | ||||
| 	@$(CheckExternal) | ||||
| 
 | ||||
| 	mkdir -p $(GLUON_IMAGEDIR)/sysupgrade | ||||
| 
 | ||||
| 	( \
 | ||||
| 		echo 'BRANCH=$(GLUON_BRANCH)' && \
 | ||||
| 		echo 'DATE=$(shell $(GLUON_ORIGOPENWRTDIR)/staging_dir/host/bin/lua $(GLUONDIR)/scripts/rfc3339date.lua)' && \
 | ||||
| 		echo 'PRIORITY=$(GLUON_PRIORITY)' && \
 | ||||
| 		echo \
 | ||||
| 	) > $(GLUON_IMAGEDIR)/sysupgrade/$(GLUON_BRANCH).manifest | ||||
| 	) > $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp | ||||
| 
 | ||||
| 	+($(foreach GLUON_TARGET,$(GLUON_TARGETS), \
 | ||||
| 		( [ ! -e $(BOARD_BUILDDIR)/prepared ] || ( $(GLUONMAKE) manifest GLUON_TARGET='$(GLUON_TARGET)' V=s$(OPENWRT_VERBOSE) ) ) && \
 | ||||
| 	) :) | ||||
| 
 | ||||
| 	mkdir -p $(GLUON_IMAGEDIR)/sysupgrade | ||||
| 	mv $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp $(GLUON_IMAGEDIR)/sysupgrade/$(GLUON_BRANCH).manifest | ||||
| 
 | ||||
| dirclean : FORCE | ||||
| 	for dir in build_dir dl staging_dir tmp; do \
 | ||||
| 		rm -rf $(GLUON_ORIGOPENWRTDIR)/$$dir; \
 | ||||
| @ -190,7 +191,9 @@ prepare-tmpinfo: FORCE | ||||
| 		f=tmp/.$${type}info; t=tmp/.config-$${type}.in; \
 | ||||
| 		[ "$$t" -nt "$$f" ] || ./scripts/metadata.pl $${type}_config "$$f" > "$$t" || { rm -f "$$t"; echo "Failed to build $$t"; false; break; }; \
 | ||||
| 	done | ||||
| 	[ tmp/.config-feeds.in -nt tmp/.packagefeeds ] || ./scripts/feeds feed_config > tmp/.config-feeds.in | ||||
| 	./scripts/metadata.pl package_mk tmp/.packageinfo > tmp/.packagedeps || { rm -f tmp/.packagedeps; false; } | ||||
| 	./scripts/metadata.pl package_feeds tmp/.packageinfo > tmp/.packagefeeds || { rm -f tmp/.packagefeeds; false; } | ||||
| 	touch $(TOPDIR)/tmp/.build | ||||
| 
 | ||||
| feeds: FORCE | ||||
| @ -201,13 +204,24 @@ feeds: FORCE | ||||
| 	+$(GLUONMAKE_EARLY) prepare-tmpinfo | ||||
| 
 | ||||
| config: FORCE | ||||
| 	+$(NO_TRACE_MAKE) scripts/config/conf OPENWRT_BUILD=0 | ||||
| 	+$(GLUONMAKE) prepare-tmpinfo | ||||
| 	( \
 | ||||
| 		cat $(GLUONDIR)/include/config $(GLUONDIR)/targets/$(GLUON_TARGET)/config; \
 | ||||
| 		echo 'CONFIG_BUILD_SUFFIX="gluon-$(GLUON_TARGET)"'; \
 | ||||
| 		echo '$(patsubst %,CONFIG_PACKAGE_%=m,$(sort $(filter-out -%,$(GLUON_DEFAULT_PACKAGES) $(GLUON_SITE_PACKAGES) $(PROFILE_PACKAGES))))' \
 | ||||
| 			| sed -e 's/ /\n/g'; \
 | ||||
| 	) > .config | ||||
| 	+$(NO_TRACE_MAKE) defconfig OPENWRT_BUILD=0 | ||||
| 		echo '$(patsubst %,CONFIG_GLUON_LANG_%=y,$(GLUON_LANGS))' \
 | ||||
| 			| sed -e 's/ /\n/g'; \
 | ||||
| 	) > $(BOARD_BUILDDIR)/config.tmp | ||||
| 	scripts/config/conf --defconfig=$(BOARD_BUILDDIR)/config.tmp Config.in | ||||
| 	mv .config $(BOARD_BUILDDIR)/config | ||||
| 
 | ||||
| 	echo 'CONFIG_ALL_KMODS=y' >> $(BOARD_BUILDDIR)/config.tmp | ||||
| 	scripts/config/conf --defconfig=$(BOARD_BUILDDIR)/config.tmp Config.in | ||||
| 	mv .config $(BOARD_BUILDDIR)/config-allmods | ||||
| 
 | ||||
| 	cp $(BOARD_BUILDDIR)/config .config | ||||
| 
 | ||||
| prepare-target: FORCE | ||||
| 	rm $(GLUON_OPENWRTDIR)/tmp || true | ||||
| @ -243,7 +257,6 @@ clean: FORCE | ||||
| 	rm -f $(gluon_prepared_stamp) | ||||
| 
 | ||||
| 
 | ||||
| export MD5SUM := $(GLUONDIR)/scripts/md5sum.sh | ||||
| export SHA512SUM := $(GLUONDIR)/scripts/sha512sum.sh | ||||
| 
 | ||||
| 
 | ||||
| @ -293,11 +306,10 @@ include $(INCLUDE_DIR)/package-ipkg.mk | ||||
| # override variables from rules.mk
 | ||||
| PACKAGE_DIR = $(GLUON_OPENWRTDIR)/bin/$(BOARD)/packages | ||||
| 
 | ||||
| PROFILE_BUILDDIR = $(BOARD_BUILDDIR)/$(PROFILE) | ||||
| PROFILE_BUILDDIR = $(BOARD_BUILDDIR)/profiles/$(PROFILE) | ||||
| PROFILE_KDIR = $(PROFILE_BUILDDIR)/kernel | ||||
| BIN_DIR = $(PROFILE_BUILDDIR)/images | ||||
| 
 | ||||
| TMP_DIR = $(PROFILE_BUILDDIR)/tmp | ||||
| TARGET_DIR = $(PROFILE_BUILDDIR)/root | ||||
| 
 | ||||
| PREPARED_RELEASE = $$(cat $(gluon_prepared_stamp)) | ||||
| @ -354,8 +366,8 @@ opkg_config: FORCE | ||||
| 
 | ||||
| 
 | ||||
| image: FORCE | ||||
| 	rm -rf $(TARGET_DIR) $(BIN_DIR) $(TMP_DIR) $(PROFILE_KDIR) | ||||
| 	mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TMP_DIR) $(TARGET_DIR)/tmp $(GLUON_IMAGEDIR)/factory $(GLUON_IMAGEDIR)/sysupgrade | ||||
| 	rm -rf $(TARGET_DIR) $(BIN_DIR) $(PROFILE_KDIR) | ||||
| 	mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TARGET_DIR)/tmp $(GLUON_IMAGEDIR)/factory $(GLUON_IMAGEDIR)/sysupgrade | ||||
| 	cp -r $(BOARD_KDIR) $(PROFILE_KDIR) | ||||
| 
 | ||||
| 	+$(GLUONMAKE) package_install | ||||
| @ -393,7 +405,7 @@ manifest: FORCE | ||||
| 				[ -e "$$file" ] && echo '$(model)' "$(PREPARED_RELEASE)" "$$($(SHA512SUM) "$$file")" "$$file"; \
 | ||||
| 			) \
 | ||||
| 		) : \
 | ||||
| 	) >> $(GLUON_IMAGEDIR)/sysupgrade/$(GLUON_BRANCH).manifest | ||||
| 	) >> $(GLUON_BUILDDIR)/$(GLUON_BRANCH).manifest.tmp | ||||
| 
 | ||||
| 
 | ||||
| .PHONY: all images prepare clean gluon-tools manifest | ||||
|  | ||||
| @ -19,22 +19,22 @@ EOHELP | ||||
| 	exit 1 | ||||
| fi | ||||
| 
 | ||||
| SECRET=$1 | ||||
| SECRET="$1" | ||||
| 
 | ||||
| manifest=$2 | ||||
| upper=$(mktemp) | ||||
| lower=$(mktemp) | ||||
| manifest="$2" | ||||
| upper="$(mktemp)" | ||||
| lower="$(mktemp)" | ||||
| 
 | ||||
| awk "BEGIN    { sep=0 } | ||||
|      /^---\$/ { sep=1; next } | ||||
|               { if(sep==0) print > \"$upper\"; | ||||
|                 else       print > \"$lower\"}" \ | ||||
|     $manifest | ||||
|     "$manifest" | ||||
| 
 | ||||
| ecdsasign $upper < $SECRET >> $lower | ||||
| ecdsasign "$upper" < "$SECRET" >> "$lower" | ||||
| 
 | ||||
| cat  $upper  > $manifest | ||||
| echo ---    >> $manifest | ||||
| cat  $lower >> $manifest | ||||
| cat  "$upper"  > "$manifest" | ||||
| echo ---      >> "$manifest" | ||||
| cat  "$lower" >> "$manifest" | ||||
| 
 | ||||
| rm -f $upper $lower | ||||
| rm -f "$upper" "$lower" | ||||
|  | ||||
| @ -54,9 +54,9 @@ copyright = '2014, Project Gluon' | ||||
| # built documents. | ||||
| # | ||||
| # The short X.Y version. | ||||
| version = '2014.3' | ||||
| version = '2014.4+' | ||||
| # The full version, including alpha/beta/rc tags. | ||||
| release = '2014.3' | ||||
| release = '2014.4+' | ||||
| 
 | ||||
| # The language for content autogenerated by Sphinx. Refer to documentation | ||||
| # for a list of supported languages. | ||||
|  | ||||
| @ -98,6 +98,7 @@ Releases | ||||
| .. toctree:: | ||||
|    :maxdepth: 1 | ||||
| 
 | ||||
|    releases/v2015.1 | ||||
|    releases/v2014.4 | ||||
|    releases/v2014.3.1 | ||||
|    releases/v2014.3 | ||||
|  | ||||
							
								
								
									
										30
									
								
								docs/releases/v2015.1.rst
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								docs/releases/v2015.1.rst
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,30 @@ | ||||
| Gluon 2015.1 (in development) | ||||
| ============================= | ||||
| 
 | ||||
| Added (and removed) hardware support | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
| 
 | ||||
| 
 | ||||
| New features | ||||
| ~~~~~~~~~~~~ | ||||
| 
 | ||||
| 
 | ||||
| Bugfixes | ||||
| ~~~~~~~~ | ||||
| 
 | ||||
| 
 | ||||
| Site changes | ||||
| ~~~~~~~~~~~~ | ||||
| * ``site.conf`` | ||||
| 
 | ||||
|   - ``hostname_prefix`` is now optional, and is concatenated directly with the | ||||
|     generated node ID, in particular no hyphen is inserted anymore. If you want | ||||
|     to keep the old behaviour, you have to append the hyphen to the | ||||
|     ``hostname_prefix`` field of your ``site.conf``. | ||||
| 
 | ||||
| Internals | ||||
| ~~~~~~~~~ | ||||
| 
 | ||||
| 
 | ||||
| Known Issues | ||||
| ~~~~~~~~~~~~ | ||||
							
								
								
									
										35
									
								
								docs/site-example/i18n/de.po
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								docs/site-example/i18n/de.po
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Project-Id-Version: PACKAGE VERSION\n" | ||||
| "PO-Revision-Date: 2015-03-19 20:28+0100\n" | ||||
| "Last-Translator: Matthias Schiffer <mschiffer@universe-factory.net>\n" | ||||
| "Language-Team: German\n" | ||||
| "Language: de\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n != 1);\n" | ||||
| 
 | ||||
| msgid "gluon-config-mode:welcome" | ||||
| msgstr "" | ||||
| "Willkommen zum Einrichtungsassistenten für deinen neuen Entenhausener " | ||||
| "Freifunk-Knoten. Fülle das folgende Formular deinen Vorstellungen " | ||||
| "entsprechend aus und sende es ab." | ||||
| 
 | ||||
| msgid "gluon-config-mode:pubkey" | ||||
| msgstr "" | ||||
| "Dies ist der öffentliche Schlüssel deines Freifunk-Knotens. Erst nachdem " | ||||
| "er auf den Servern des Entenhausener Freifunk-Projektes eingetragen wurde, " | ||||
| "kann sich dein Knoten mit dem Entenhausener Mesh-VPN zu verbinden. Bitte " | ||||
| "schicke dazu diesen Schlüssel und den Namen deines Knotens " | ||||
| "(<em><%=hostname%></em>) an " | ||||
| "<a href=\"mailto:keys@entenhausen.freifunk.net\">keys@entenhausen.freifunk.net</a>." | ||||
| 
 | ||||
| msgid "gluon-config-mode:reboot" | ||||
| msgstr "" | ||||
| "<p>Dein Knoten startet gerade neu und wird anschließend versuchen, " | ||||
| "sich mit anderen Freifunkknoten in seiner Nähe zu " | ||||
| "verbinden. Weitere Informationen zur " | ||||
| "Entenhausener Freifunk-Community findest du auf " | ||||
| "<a href=\"https://entenhausen.freifunk.net/\">unserer Webseite</a>.</p>" | ||||
| "<p>Viel Spaß mit deinem Knoten und der Erkundung von Freifunk!</p>" | ||||
							
								
								
									
										33
									
								
								docs/site-example/i18n/en.po
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								docs/site-example/i18n/en.po
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Project-Id-Version: PACKAGE VERSION\n" | ||||
| "PO-Revision-Date: 2015-03-19 20:28+0100\n" | ||||
| "Last-Translator: Matthias Schiffer <mschiffer@universe-factory.net>\n" | ||||
| "Language-Team: English\n" | ||||
| "Language: en\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n != 1);\n" | ||||
| 
 | ||||
| msgid "gluon-config-mode:welcome" | ||||
| msgstr "" | ||||
| "Welcome the the setup wizard of your new Freifunk Duckburg node. " | ||||
| "Please fill out the following form and transmit it." | ||||
| 
 | ||||
| msgid "gluon-config-mode:pubkey" | ||||
| msgstr "" | ||||
| "This is your Freifunk node's public key. The node won't be able to " | ||||
| "connect to the mesh VPN until the key has been registered on the Freifunk " | ||||
| "Duckburg servers. " | ||||
| "To register the key send it together with your node's name (<em><%=hostname%></em>) to " | ||||
| "<a href=\"mailto:keys@entenhausen.freifunk.net\">keys@entenhausen.freifunk.net</a>." | ||||
| 
 | ||||
| 
 | ||||
| msgid "gluon-config-mode:reboot" | ||||
| msgstr "" | ||||
| "<p>The node is currently rebooting and will try to connect to other " | ||||
| "nearby Freifunk nodes  after that. " | ||||
| "Your can find lots of information on the Freifunk Duckburg community on " | ||||
| "<a href=\"https://entenhausen.freifunk.net/\">our homepage</a>.</p>" | ||||
| "<p>Have fun with your node and exploring the Freifunk network!</p>" | ||||
							
								
								
									
										11
									
								
								docs/site-example/i18n/gluon-site.pot
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								docs/site-example/i18n/gluon-site.pot
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| msgid "" | ||||
| msgstr "Content-Type: text/plain; charset=UTF-8" | ||||
| 
 | ||||
| msgid "gluon-config-mode:welcome" | ||||
| msgstr "" | ||||
| 
 | ||||
| msgid "gluon-config-mode:pubkey" | ||||
| msgstr "" | ||||
| 
 | ||||
| msgid "gluon-config-mode:reboot" | ||||
| msgstr "" | ||||
| @ -6,8 +6,8 @@ | ||||
| -- This configuration will not work as it. You're required to make | ||||
| -- community specific changes to it! | ||||
| { | ||||
|   -- Used for generated hostnames, e.g. freifunk-abcdef123456. | ||||
|   hostname_prefix = 'freifunk', | ||||
|   -- Used for generated hostnames, e.g. freifunk-abcdef123456. (optional) | ||||
|   -- hostname_prefix = 'freifunk-', | ||||
| 
 | ||||
|   -- Name of the community. | ||||
|   site_name = 'Freifunk Entenhausen', | ||||
| @ -166,42 +166,4 @@ | ||||
|   -- setup_mode = { | ||||
|   --  skip = true, | ||||
|   -- }, | ||||
| 
 | ||||
|   -- These strings are shown in config mode. Some HTML is permissible. | ||||
|   -- | ||||
|   -- msg_welcome: shown at startup | ||||
|   -- msg_pubkey:  shown when VPN is enabled | ||||
|   -- msg_reboot:  shown during reboot (after finishing configuration) | ||||
|   -- | ||||
|   -- You may use some variables, e.g.: | ||||
|   -- | ||||
|   -- <%=hostname%>               - the node's hostname | ||||
|   -- <%=pubkey%>                - the fastd public key | ||||
|   -- <%=sysconfig.primary_mac%> - the node's primary MAC | ||||
|   config_mode = { | ||||
|     msg_welcome = [[ | ||||
| Willkommen zum Einrichtungsassistenten für deinen neuen Entenhausener | ||||
| Freifunk-Knoten. Fülle das folgende Formular deinen Vorstellungen | ||||
| entsprechend aus und sende es ab. | ||||
| ]], | ||||
|     msg_pubkey = [[ | ||||
| Dies ist der öffentliche Schlüssel deines Freifunk-Knotens. Erst nachdem | ||||
| er auf den Servern des Entenhausener Freifunk-Projektes eingetragen wurde, | ||||
| kann sich dein Knoten mit dem Entenhausener Mesh-VPN verbinden. Bitte | ||||
| schicke dazu diesen Schlüssel und den Namen deines Knotens | ||||
| (<em><%=hostname%></em>) an | ||||
| <a href="mailto:keys@entenhausen.freifunk.net">keys@entenhausen.freifunk.net</a>. | ||||
| ]], | ||||
|     msg_reboot = [[ | ||||
| <p> | ||||
| Dein Knoten startet gerade neu und wird anschließend versuchen, | ||||
| sich mit anderen Freifunk-Knoten in seiner Nähe zu verbinden. | ||||
| Weitere Informationen zur Entenhausener Freifunk-Community | ||||
| findest du auf <a href="https://entenhausen.freifunk.net/">unserer Webseite</a>. | ||||
| </p> | ||||
| <p> | ||||
| Viel Spaß mit deinem Knoten und der Erkundung von Freifunk! | ||||
| </p> | ||||
| ]], | ||||
|   }, | ||||
| } | ||||
|  | ||||
| @ -48,3 +48,6 @@ GLUON_RELEASE ?= $(DEFAULT_GLUON_RELEASE) | ||||
| 
 | ||||
| # Default priority for updates.
 | ||||
| GLUON_PRIORITY ?= 0 | ||||
| 
 | ||||
| # Languages to include
 | ||||
| GLUON_LANGS ?= en de | ||||
|  | ||||
| @ -20,11 +20,25 @@ configuration located in *docs/site-example/*. | ||||
| .. _Git tags: http://git-scm.com/book/en/Git-Basics-Tagging | ||||
| .. _list of gluon releases: https://github.com/freifunk-gluon/gluon/releases | ||||
| 
 | ||||
| Building the image | ||||
| ------------------ | ||||
| Dependencies | ||||
| ------------ | ||||
| To build Gluon, several packages need to be installed on the system. On a | ||||
| freshly installed Debian Wheezy system the following packages are required: | ||||
| 
 | ||||
| * `git` (to get Gluon and other dependencies) | ||||
| * `subversion` | ||||
| * `build-essential` | ||||
| * `gawk` | ||||
| * `unzip` | ||||
| * `libncurses-dev` (actually `libncurses5-dev`) | ||||
| * `libz-dev` (actually `zlib1g-dev`) | ||||
| 
 | ||||
| 
 | ||||
| Building the images | ||||
| ------------------- | ||||
| 
 | ||||
| To build Gluon, first check out the repository. Replace *RELEASE* with the | ||||
| version you'd like to checkout, e.g. *v2014.3*. | ||||
| version you'd like to checkout, e.g. *v2014.4*. | ||||
| 
 | ||||
| :: | ||||
| 
 | ||||
| @ -47,17 +61,15 @@ So let's create the directory *site/*: | ||||
|     mkdir site | ||||
|     cd site | ||||
| 
 | ||||
| Copy *site.conf* and *site.mk* from *docs/site-example*: | ||||
| Copy *site.conf*, *site.mk* and *i18n* from *docs/site-example*: | ||||
| 
 | ||||
| :: | ||||
| 
 | ||||
|     cp ../docs/site-example/site.conf . | ||||
|     cp ../docs/site-example/site.mk . | ||||
|     cp -r ../docs/site-example/i18n . | ||||
| 
 | ||||
| .. note:: On **v2014.3**, take both files from | ||||
|           https://github.com/freifunk-gluon/gluon/tree/2014.3.x/docs/site-example | ||||
| 
 | ||||
| Edit both files to match your community, then go back to the top-level Gluon | ||||
| Edit these files to match your community, then go back to the top-level Gluon | ||||
| directory and build Gluon: | ||||
| 
 | ||||
| :: | ||||
| @ -77,10 +89,7 @@ images are to be used when flashing from the original firmware a device came wit | ||||
| and sysupgrade is to upgrade from other versions of Gluon or any other OpenWRT-based | ||||
| system. | ||||
| 
 | ||||
| For the build reserve 6GB of disk space. The build requires packages | ||||
| for `subversion`, ncurses headers (`libncurses-dev`) and zlib headers | ||||
| (`libz-dev`). | ||||
| 
 | ||||
| You should reserve about 10GB of disk space for each `GLUON_TARGET`. | ||||
| 
 | ||||
| There are two levels of `make clean`: | ||||
| 
 | ||||
|  | ||||
| @ -159,7 +159,7 @@ roles : optional | ||||
|       }, | ||||
| 
 | ||||
| simple_tc : package | ||||
|     Uplink traffic control | ||||
|     Uplink traffic control, ingress and egress values are specified in kbit/s. | ||||
|     :: | ||||
| 
 | ||||
|       simple_tc = { | ||||
| @ -180,9 +180,6 @@ setup_mode : package | ||||
|         skip = true, | ||||
|       }, | ||||
| 
 | ||||
| config_mode : package | ||||
|     Configuration Mode text blocks | ||||
| 
 | ||||
| legacy : package | ||||
|     Configuration for the legacy upgrade path. | ||||
|     This is only required in communities upgrading from Lübeck's LFF-0.3.x. | ||||
| @ -215,6 +212,30 @@ GLUON_PRIORITY | ||||
|     The default priority for the generated manifests (see the autoupdater documentation | ||||
|     for more information). | ||||
| 
 | ||||
| GLUON_LANGS | ||||
|     List of languages (as two-letter-codes) to include for the web interface. Should always contain | ||||
|     ``en``. | ||||
| 
 | ||||
| Config mode texts | ||||
| ----------------- | ||||
| 
 | ||||
| The community-defined texts in the config mode are configured in PO files in the ``i18n`` subdirectory | ||||
| of the site configuration. The message IDs currently defined are: | ||||
| 
 | ||||
| gluon-config-mode:welcome | ||||
|     Welcome text on the top of the config wizard page. | ||||
| 
 | ||||
| gluon-config-mode:pubkey | ||||
|     Information about the public VPN key on the reboot page. | ||||
| 
 | ||||
| gluon-config-mode:reboot | ||||
|     General information about the reboot page. | ||||
| 
 | ||||
| There is a POT file in the site example directory which can be used to create templates | ||||
| for the language files. The command ``msginit -l en -i ../../docs/site-example/i18n/gluon-site.pot`` | ||||
| can be used from the ``i18n`` directory to create an initial PO file called ``en.po`` if the ``gettext`` | ||||
| utilities are installed. | ||||
| 
 | ||||
| Examples | ||||
| -------- | ||||
| 
 | ||||
| @ -230,6 +251,18 @@ site.conf | ||||
| .. literalinclude:: ../site-example/site.conf | ||||
|   :language: lua | ||||
| 
 | ||||
| i18n/en.po | ||||
| ^^^^^^^^^^ | ||||
| 
 | ||||
| .. literalinclude:: ../site-example/i18n/en.po | ||||
|   :language: po | ||||
| 
 | ||||
| i18n/de.po | ||||
| ^^^^^^^^^^ | ||||
| 
 | ||||
| .. literalinclude:: ../site-example/i18n/de.po | ||||
|   :language: po | ||||
| 
 | ||||
| modules | ||||
| ^^^^^^^ | ||||
| 
 | ||||
|  | ||||
| @ -1,5 +1,18 @@ | ||||
| # code adjusted from openwrt/include/kernel-defaults.mk
 | ||||
| 
 | ||||
| override define Kernel/Configure | ||||
| 	$(call Kernel/Configure/Default) | ||||
| 	$(LINUX_CONF_CMD) > $(LINUX_DIR)/.config.target | ||||
| # copy CONFIG_KERNEL_* settings over to .config.target
 | ||||
| 	awk '/^(#[[:space:]]+)?CONFIG_KERNEL/{sub("CONFIG_KERNEL_","CONFIG_");print}' $(BOARD_BUILDDIR)/config-allmods >> $(LINUX_DIR)/.config.target | ||||
| 	echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> $(LINUX_DIR)/.config.target | ||||
| 	echo "# CONFIG_KALLSYMS_ALL is not set" >> $(LINUX_DIR)/.config.target | ||||
| 	echo "# CONFIG_KALLSYMS_UNCOMPRESSED is not set" >> $(LINUX_DIR)/.config.target | ||||
| 	echo "# CONFIG_KPROBES is not set" >> $(LINUX_DIR)/.config.target | ||||
| 	$(SCRIPT_DIR)/metadata.pl kconfig $(TMP_DIR)/.packageinfo $(BOARD_BUILDDIR)/config-allmods > $(LINUX_DIR)/.config.override | ||||
| 	$(SCRIPT_DIR)/kconfig.pl 'm+' '+' $(LINUX_DIR)/.config.target /dev/null $(LINUX_DIR)/.config.override > $(LINUX_DIR)/.config | ||||
| 	$(call Kernel/SetNoInitramfs) | ||||
| 	rm -rf $(KERNEL_BUILD_DIR)/modules | ||||
| 	$(_SINGLE) [ -d $(LINUX_DIR)/user_headers ] || $(MAKE) $(KERNEL_MAKEOPTS) INSTALL_HDR_PATH=$(LINUX_DIR)/user_headers headers_install | ||||
| 	cp $(GLUONDIR)/targets/$(GLUON_TARGET)/vermagic $(LINUX_DIR)/.vermagic | ||||
| endef | ||||
| 
 | ||||
|  | ||||
| @ -1,8 +1,8 @@ | ||||
| CONFIG_ALL_KMODS=y | ||||
| 
 | ||||
| CONFIG_IMAGEOPT=y | ||||
| # CONFIG_PER_FEED_REPO is not set | ||||
| 
 | ||||
| CONFIG_DEVEL=y | ||||
| 
 | ||||
| CONFIG_BUSYBOX_CUSTOM=y | ||||
| CONFIG_BUSYBOX_CONFIG_SHA512SUM=y | ||||
| # CONFIG_BUSYBOX_CONFIG_FEATURE_PREFER_IPV4_ADDRESS is not set | ||||
|  | ||||
| @ -14,6 +14,8 @@ export GLUONDIR GLUON_SITEDIR GLUON_SITE_CONFIG GLUON_IMAGEDIR GLUON_BUILDDIR | ||||
| BOARD_BUILDDIR = $(GLUON_BUILDDIR)/$(GLUON_TARGET) | ||||
| BOARD_KDIR = $(BOARD_BUILDDIR)/kernel | ||||
| 
 | ||||
| export BOARD_BUILDDIR | ||||
| 
 | ||||
| GLUON_OPENWRTDIR = $(BOARD_BUILDDIR)/openwrt | ||||
| 
 | ||||
| 
 | ||||
| @ -26,6 +28,9 @@ $(GLUON_SITEDIR)/site.mk: | ||||
| GLUON_VERSION := $(shell cd $(GLUONDIR) && git describe --always 2>/dev/null || echo unknown) | ||||
| export GLUON_VERSION | ||||
| 
 | ||||
| GLUON_LANGS ?= en | ||||
| export GLUON_LANGS | ||||
| 
 | ||||
| 
 | ||||
| ifeq ($(OPENWRT_BUILD),1) | ||||
| ifeq ($(GLUON_TOOLS),1) | ||||
|  | ||||
| @ -6,3 +6,55 @@ define GluonCheckSite | ||||
| $(shell cat $(1) | sed -ne '1h; 1!H; $$ {g; s/@/+@/g; s/\n/-@/g; p}') | ||||
| END__GLUON__CHECK__SITE | ||||
| endef | ||||
| 
 | ||||
| 
 | ||||
| # Languages supported by LuCi
 | ||||
| GLUON_SUPPORTED_LANGS := ca zh_cn en fr de el he hu it ja ms no pl pt_br pt ro ru es sv uk vi | ||||
| 
 | ||||
| GLUON_LANG_ca := catalan | ||||
| GLUON_LANG_zh_cn := chinese | ||||
| GLUON_LANG_en := english | ||||
| GLUON_LANG_fr := french | ||||
| GLUON_LANG_de := german | ||||
| GLUON_LANG_el := greek | ||||
| GLUON_LANG_he := hebrew | ||||
| GLUON_LANG_hu := hungarian | ||||
| GLUON_LANG_it := italian | ||||
| GLUON_LANG_ja := japanese | ||||
| GLUON_LANG_ms := malay | ||||
| GLUON_LANG_no := norwegian | ||||
| GLUON_LANG_pl := polish | ||||
| GLUON_LANG_pt_br := portuguese-brazilian | ||||
| GLUON_LANG_pt := portuguese | ||||
| GLUON_LANG_ro := romanian | ||||
| GLUON_LANG_ru := russian | ||||
| GLUON_LANG_es := spanish | ||||
| GLUON_LANG_sv := swedish | ||||
| GLUON_LANG_uk := ukrainian | ||||
| GLUON_LANG_vi := vietnamese | ||||
| 
 | ||||
| GLUON_I18N_PACKAGES := $(foreach lang,$(GLUON_SUPPORTED_LANGS),+GLUON_LANG_$(lang):luci-i18n-$(GLUON_LANG_$(lang))) | ||||
| GLUON_I18N_CONFIG := $(foreach lang,$(GLUON_SUPPORTED_LANGS),CONFIG_GLUON_LANG_$(lang)) | ||||
| GLUON_ENABLED_LANGS := $(foreach lang,$(GLUON_SUPPORTED_LANGS),$(if $(CONFIG_GLUON_LANG_$(lang)),$(lang))) | ||||
| 
 | ||||
| 
 | ||||
| GLUON_PO2LMO := $(BUILD_DIR)/luci/build/po2lmo | ||||
| 
 | ||||
| define GluonBuildI18N | ||||
| 	mkdir -p $$(PKG_BUILD_DIR)/i18n | ||||
| 	for lang in $$(GLUON_ENABLED_LANGS); do \
 | ||||
| 		if [ -e $(2)/$$$$lang.po ]; then \
 | ||||
| 			rm -f $$(PKG_BUILD_DIR)/i18n/$(1).$$$$lang.lmo; \
 | ||||
| 			$(GLUON_PO2LMO) $(2)/$$$$lang.po $$(PKG_BUILD_DIR)/i18n/$(1).$$$$lang.lmo; \
 | ||||
| 		fi; \
 | ||||
| 	done | ||||
| endef | ||||
| 
 | ||||
| define GluonInstallI18N | ||||
| 	$$(INSTALL_DIR) $(2)/usr/lib/lua/luci/i18n | ||||
| 	for lang in $$(GLUON_ENABLED_LANGS); do \
 | ||||
| 		if [ -e $$(PKG_BUILD_DIR)/i18n/$(1).$$$$lang.lmo ]; then \
 | ||||
| 			$$(INSTALL_DATA) $$(PKG_BUILD_DIR)/i18n/$(1).$$$$lang.lmo $(2)/usr/lib/lua/luci/i18n/$(1).$$$$lang.lmo; \
 | ||||
| 		fi; \
 | ||||
| 	done | ||||
| endef | ||||
|  | ||||
							
								
								
									
										4
									
								
								modules
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								modules
									
									
									
									
									
								
							| @ -1,14 +1,14 @@ | ||||
| GLUON_FEEDS='openwrt gluon routing luci' | ||||
| 
 | ||||
| OPENWRT_REPO=git://git.openwrt.org/14.07/openwrt.git | ||||
| OPENWRT_COMMIT=878af3117f68c2f8d6b3d6582e50c6cef521f6f7 | ||||
| OPENWRT_COMMIT=64ae631f20eb349b47dae30c461ab33b5c4ac5c2 | ||||
| 
 | ||||
| PACKAGES_OPENWRT_REPO=git://github.com/openwrt/packages.git | ||||
| PACKAGES_OPENWRT_COMMIT=01fcd1f29174a56d6ddb59901ed8c67ea42c3a8f | ||||
| PACKAGES_OPENWRT_BRANCH=for-14.07 | ||||
| 
 | ||||
| PACKAGES_GLUON_REPO=git://github.com/freifunk-gluon/packages.git | ||||
| PACKAGES_GLUON_COMMIT=2d0f8b38dbf6b01f77c780c7c80a995116e3eca8 | ||||
| PACKAGES_GLUON_COMMIT=f5c0865d5025a7e6ad3ff6c21ca5206ac972ba75 | ||||
| 
 | ||||
| PACKAGES_ROUTING_REPO=git://github.com/openwrt-routing/packages.git | ||||
| PACKAGES_ROUTING_COMMIT=5d4ad63897b435d5df0f39a49bd58962c22c33b8 | ||||
|  | ||||
| @ -3,7 +3,7 @@ Date: Sat, 16 Aug 2014 17:52:34 +0200 | ||||
| Subject: ar71xx: correctly detect hardware revision on TP-Link Archer C5 and C7 | ||||
| 
 | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index df35775..6694839 100755
 | ||||
| index 18da356..1709356 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -214,6 +214,13 @@ tplink_board_detect() {
 | ||||
|  | ||||
| @ -62,7 +62,7 @@ index 4be30b8..78f4992 100755 | ||||
|  rb-2011l | \ | ||||
|  rb-2011uas |\ | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index 6694839..c13a8eb 100755
 | ||||
| index 1709356..9fb4102 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -229,6 +229,39 @@ tplink_board_detect() {
 | ||||
|  | ||||
| @ -44,7 +44,7 @@ index 78f4992..c494310 100755 | ||||
|  mr600v2 |\ | ||||
|  rb-411 |\ | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index c13a8eb..19cd1a7 100755
 | ||||
| index 9fb4102..79b6073 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -396,6 +396,9 @@ ar71xx_board_detect() {
 | ||||
|  | ||||
| @ -5,7 +5,7 @@ Subject: ar71xx: fix board detection for TP-LINK TL-WA860RE | ||||
| Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| 
 | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index 19cd1a7..b0a0bd6 100755
 | ||||
| index 79b6073..13c5bf2 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -630,6 +630,9 @@ ar71xx_board_detect() {
 | ||||
|  | ||||
| @ -48,7 +48,7 @@ index c494310..3ccb917 100755 | ||||
|  wnr2200 |\ | ||||
|  wnr612-v2) | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index b0a0bd6..c03fe72 100755
 | ||||
| index 13c5bf2..5fbca92 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -681,6 +681,9 @@ ar71xx_board_detect() {
 | ||||
|  | ||||
| @ -19,7 +19,7 @@ index f0d5d70..6aac86a 100755 | ||||
|  		status_led="ubnt:white:status" | ||||
|  		;; | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index c03fe72..9e70397 100755
 | ||||
| index 5fbca92..61a7936 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -723,6 +723,9 @@ ar71xx_board_detect() {
 | ||||
|  | ||||
| @ -6,7 +6,7 @@ There are two versions of the GL.iNet, the 6408A and the 6416A. The only | ||||
| difference is the flash size.
 | ||||
| 
 | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index 9e70397..ac7f787 100755
 | ||||
| index 61a7936..a698ce5 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -262,6 +262,19 @@ tplink_pharos_board_detect() {
 | ||||
|  | ||||
| @ -1,5 +1,5 @@ | ||||
| From: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| Date: Sun, 15 Mar 2015 17:01:32 +0100 | ||||
| Date: Mon, 23 Mar 2015 21:11:41 +0100 | ||||
| Subject: x86: use PARTUUID instead explicitly specifying the device by default | ||||
| 
 | ||||
| This changes the x86 image generation to match x86_64, using the PARTUUID for | ||||
| @ -143,14 +143,14 @@ index a2dd20a..73ab5ef 100644 | ||||
| +	fi
 | ||||
|  } | ||||
| diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile
 | ||||
| index 5983718..a0045a7 100644
 | ||||
| index 5983718..1f91b9f 100644
 | ||||
| --- a/target/linux/x86/image/Makefile
 | ||||
| +++ b/target/linux/x86/image/Makefile
 | ||||
| @@ -40,7 +40,9 @@ ifneq ($(GRUB_TERMINALS),)
 | ||||
|    GRUB_TERMINAL_CONFIG := terminal_input $(GRUB_TERMINALS); terminal_output $(GRUB_TERMINALS) | ||||
|  endif | ||||
|   | ||||
| +SIGNATURE:=$(shell dd if=/dev/urandom bs=4 count=1 2>/dev/null | hexdump -v -e '"%02x"')
 | ||||
| +SIGNATURE:=$(shell dd if=/dev/urandom bs=4 count=1 2>/dev/null | hexdump -v -e '"%08x"')
 | ||||
|  ROOTPART:=$(call qstrip,$(CONFIG_TARGET_ROOTFS_PARTNAME)) | ||||
| +ROOTPART:=$(if $(ROOTPART),$(ROOTPART),PARTUUID=$(SIGNATURE)-02)
 | ||||
|   | ||||
|  | ||||
| @ -1,51 +1,64 @@ | ||||
| From: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| Date: Sun, 15 Mar 2015 19:51:15 +0100 | ||||
| Date: Sun, 29 Mar 2015 13:23:26 +0200 | ||||
| Subject: ar71xx: fix model string detection on NETGEAR WNDR3700/3800/WNDRMAC | ||||
| 
 | ||||
| There were a few issues with the existing code to detect the model string: | ||||
| * Always using the string starting with byte 56 would cut off the W of WNDR when | ||||
|   the ID starts with 29763654+16+128 instead of 29763654+16+64 | ||||
|   the ID starts with 29763654+16+64 instead of 29763654+16+128 | ||||
| * The string contained garbage after the zero byte instead of cutting it off | ||||
|   after the zero (which wasn't always visible using busybox tools, but could | ||||
|   confuse other scripts) | ||||
| 
 | ||||
| Tested on a WNDR3700v1 and a WNDR3700v2 using the new 29763654+16+64 ID in the | ||||
| ART. Furthermore, tested against ART dumps of a WNDR3700v2 using the old | ||||
| $'\xff...' value and a WNDR3800. | ||||
| 
 | ||||
| The [ -z "$model" ] check was dropped as there is no way to actually hit this | ||||
| unless no ART partition is found at all. | ||||
| 
 | ||||
| The awk command was carefully crafted to work both with gawk and the (horribly | ||||
| broken) busybox awk. | ||||
| 
 | ||||
| Fixes #18992. | ||||
| 
 | ||||
| Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| 
 | ||||
| diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| index ac7f787..f50a236 100755
 | ||||
| index a698ce5..1838cb4 100755
 | ||||
| --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
 | ||||
| @@ -37,16 +37,28 @@ wndr3700_board_detect() {
 | ||||
| @@ -37,16 +37,26 @@ wndr3700_board_detect() {
 | ||||
|  		machine="NETGEAR WNDR3700" | ||||
|  		;; | ||||
|  	"33373031") | ||||
| -		local model
 | ||||
| -		model=$(ar71xx_get_mtd_offset_size_format art 56 10 %c)
 | ||||
| -		if [ -z "$model" ] || [ "$model" = $'\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff' ]; then
 | ||||
| +		case "$(ar71xx_get_mtd_offset_size_format art 56 10 %c)" in
 | ||||
| +		$'\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff')
 | ||||
|  			machine="NETGEAR WNDR3700v2" | ||||
| -			machine="NETGEAR WNDR3700v2"
 | ||||
| -		elif [ -z "$model" ] || [ "$model" = $'\xff\xff\xff\xff\xff\xff\xff\xff\xffN' ]; then
 | ||||
| +			;;
 | ||||
| +		$'\xff\xff\xff\xff\xff\xff\xff\xff\xffN')
 | ||||
|  			machine="NETGEAR WNDRMAC" | ||||
| -			machine="NETGEAR WNDRMAC"
 | ||||
| -		else
 | ||||
| -			machine="NETGEAR $model"
 | ||||
| -		fi
 | ||||
| -		;;
 | ||||
| +		# Use awk to remove everything after the first zero byte
 | ||||
| +		model="$(ar71xx_get_mtd_offset_size_format art 41 32 %c | awk 'BEGIN{FS="[[:cntrl:]]"} {print $1; exit}')"
 | ||||
| +		case $model in
 | ||||
| +		$'\xff'*)
 | ||||
| +			if [ "${model:24:1}" = 'N' ]; then
 | ||||
| +				machine="NETGEAR WNDRMAC"
 | ||||
| +			else
 | ||||
| +				machine="NETGEAR WNDR3700v2"
 | ||||
| +			fi
 | ||||
| +			;;
 | ||||
| +		'29763654+16+64'*)
 | ||||
| +			machine="NETGEAR ${model:14}"
 | ||||
| +			;;
 | ||||
| +		'29763654+16+128'*)
 | ||||
| +			machine="NETGEAR ${model:15}"
 | ||||
| +			;;
 | ||||
| +		*)
 | ||||
| +			# Use awk to remove everything after the first zero byte
 | ||||
| +			model="$(ar71xx_get_mtd_offset_size_format art 41 32 %c | awk 'BEGIN{FS="[[:cntrl:]]"} {print $1; exit}')"
 | ||||
| +			case $model in
 | ||||
| +			'29763654+16+64'*)
 | ||||
| +				machine="NETGEAR ${model:14}"
 | ||||
| +				;;
 | ||||
| +			'29763654+16+128'*)
 | ||||
| +				machine="NETGEAR ${model:15}"
 | ||||
| +				;;
 | ||||
| +			*)
 | ||||
| +				# Unknown ID
 | ||||
| +				machine="NETGEAR $model"
 | ||||
| +			esac
 | ||||
| +			# Unknown ID
 | ||||
|  			machine="NETGEAR $model" | ||||
| -		fi
 | ||||
| -		;;
 | ||||
| +		esac
 | ||||
|  	esac | ||||
|   | ||||
|  | ||||
| @ -0,0 +1,26 @@ | ||||
| From: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| Date: Wed, 18 Mar 2015 20:07:22 +0100 | ||||
| Subject: build: define STAMP_CONFIGURED recursively | ||||
| 
 | ||||
| Defining STAMP_CONFIGURED statically caused it not to reflect changes to | ||||
| PKG_CONFIG_DEPENDS made after including package.mk, like the additional options | ||||
| added by feeds.mk for all packages. | ||||
| 
 | ||||
| Furthermore, as STAMP_CONFIGURED_WILDCARD was already defined recursively, the | ||||
| patsubst in its definition would never match, and in consequence, the stamps | ||||
| were never removed. This caused packages not to be rebuilt when they should have | ||||
| been. | ||||
| 
 | ||||
| diff --git a/include/package.mk b/include/package.mk
 | ||||
| index 53ca6de..402fb1a 100644
 | ||||
| --- a/include/package.mk
 | ||||
| +++ b/include/package.mk
 | ||||
| @@ -60,7 +60,7 @@ ifneq ($(PREV_STAMP_PREPARED),)
 | ||||
|  else | ||||
|    STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))$(call confvar,$(PKG_PREPARED_DEPENDS))) | ||||
|  endif | ||||
| -STAMP_CONFIGURED:=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
 | ||||
| +STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
 | ||||
|  STAMP_CONFIGURED_WILDCARD=$(patsubst %_$(call confvar,$(PKG_CONFIG_DEPENDS)),%_*,$(STAMP_CONFIGURED)) | ||||
|  STAMP_BUILT:=$(PKG_BUILD_DIR)/.built | ||||
|  STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_NAME)_installed | ||||
| @ -0,0 +1,30 @@ | ||||
| From: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| Date: Sat, 21 Mar 2015 16:40:52 +0100 | ||||
| Subject: base-files: disable reset button handling | ||||
| 
 | ||||
| This conflicts with our reset button usage. | ||||
| 
 | ||||
| diff --git a/package/base-files/files/etc/rc.button/reset b/package/base-files/files/etc/rc.button/reset
 | ||||
| deleted file mode 100755 | ||||
| index 229b503..0000000
 | ||||
| --- a/package/base-files/files/etc/rc.button/reset
 | ||||
| +++ /dev/null
 | ||||
| @@ -1,18 +0,0 @@
 | ||||
| -#!/bin/sh
 | ||||
| -
 | ||||
| -[ "${ACTION}" = "released" ] || exit 0
 | ||||
| -
 | ||||
| -. /lib/functions.sh
 | ||||
| -
 | ||||
| -logger "$BUTTON pressed for $SEEN seconds"
 | ||||
| -
 | ||||
| -if [ "$SEEN" -lt 1 ]
 | ||||
| -then
 | ||||
| -	echo "REBOOT" > /dev/console
 | ||||
| -	sync
 | ||||
| -	reboot
 | ||||
| -elif [ "$SEEN" -gt 5 ]
 | ||||
| -then
 | ||||
| -	echo "FACTORY RESET" > /dev/console
 | ||||
| -	jffs2reset -y && reboot &
 | ||||
| -fi
 | ||||
| @ -0,0 +1,28 @@ | ||||
| From: Matthias Schiffer <mschiffer@universe-factory.net> | ||||
| Date: Thu, 19 Mar 2015 18:44:52 +0100 | ||||
| Subject: modules/base: dispatcher: set default language if none provided by the browser matches | ||||
| 
 | ||||
| diff --git a/modules/base/luasrc/dispatcher.lua b/modules/base/luasrc/dispatcher.lua
 | ||||
| index f7e16e7..479ac54 100644
 | ||||
| --- a/modules/base/luasrc/dispatcher.lua
 | ||||
| +++ b/modules/base/luasrc/dispatcher.lua
 | ||||
| @@ -211,6 +211,7 @@ function dispatch(request)
 | ||||
|  	assert(conf.main, | ||||
|  		"/etc/config/luci seems to be corrupt, unable to find section 'main'") | ||||
|   | ||||
| +	local i18n = require "luci.i18n"
 | ||||
|  	local lang = conf.main.lang or "auto" | ||||
|  	if lang == "auto" then | ||||
|  		local aclang = http.getenv("HTTP_ACCEPT_LANGUAGE") or "" | ||||
| @@ -222,7 +223,10 @@ function dispatch(request)
 | ||||
|  			end | ||||
|  		end | ||||
|  	end | ||||
| -	require "luci.i18n".setlanguage(lang)
 | ||||
| +	if lang == "auto" then
 | ||||
| +		lang = i18n.default
 | ||||
| +	end
 | ||||
| +	i18n.setlanguage(lang)
 | ||||
|   | ||||
|  	local c = ctx.tree | ||||
|  	local stat | ||||
| @ -1,18 +0,0 @@ | ||||
| #!/bin/sh | ||||
| 
 | ||||
| check_command() { | ||||
| 	which $1 >/dev/null 2>&1 | ||||
| } | ||||
| 
 | ||||
| if check_command md5sum; then | ||||
| 	ret="$(md5sum "$@")" | ||||
| elif check_command md5; then | ||||
| 	ret="$(md5 -q "$@")" | ||||
| else | ||||
| 	echo "$0: no suitable md5sum implementation was found" >&1 | ||||
| 	exit 1 | ||||
| fi | ||||
| 
 | ||||
| [ "$?" -eq 0 ] || exit 1 | ||||
| 
 | ||||
| echo "$ret" | awk '{ print $1 }' | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user