Files @ cf4f965e2938
Branch filter:

Location: freifunk/Firmware-building/site_config/original_from_sid/site.conf - annotation

x
Add scripts for automation of building and build machine setup

This allows us to use a powerful Hetzner VM for not very long to
build our firmware in almost no time.
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
c2aec3793e2c
-- This is an example site configuration for Gluon v2014.3.x
--
-- Take a look at the documentation located at
-- http://gluon.readthedocs.org/ for details.
--
-- 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 = 'fflux-',

  -- Name of the community.
  site_name = 'Freifunk Luxembourg',

  -- Shorthand of the community.
  site_code = 'fflux',

  -- 32 bytes of random data, encoded in hexadecimal
  -- This data must be unique among all sites and domains!
  -- Can be generated using: echo $(hexdump -v -n 32 -e '1/1 "%02x"' </dev/urandom)
  domain_seed = '20d0d9c09a27d488c1291da65fe4dd4971ff8631dba0195be15805dbad01f78e',

  -- Prefixes used within the mesh. Both are required.
  prefix4 = '10.24.128.0/18',
  prefix6 = 'fd4e:f2d7:88d2:fffe::/64',


  -- Timezone of your community.
  -- See http://wiki.openwrt.org/doc/uci/system#time.zones
  timezone = 'CET-1CEST,M3.5.0,M10.5.0/3',

  -- List of NTP servers in your community.
  -- Must be reachable using IPv6!
  ntp_servers = {'fd4e:f2d7:88d2:fffe::11','fd4e:f2d7:88d2:fffe::12'},

  -- Wireless regulatory domain of your community.
  regdom = 'LU',

  -- Wireless configuratoin for 2.4 GHz interfaces.
  wifi24 = {
    -- Wireless channel.
    channel = 1,

	ap = {
	  ssid = 'luxembourg.freifunk.net',
	},
	mesh = {
	  id = 'freifunk-mesh',
	  mcast_rate = 12000,
	},

  },

  -- Wireless configuration for 5 GHz interfaces.
  -- This should be equal to the 2.4 GHz variant, except
  -- for channel and htmode.
  wifi5 = {
    channel = 36;
	ap = {
	  ssid = 'luxembourg.freifunk.net',
	},
	mesh = {
	  id = 'freifunk-mesh',
	  mcast_rate = 12000,
	},
  },


  mesh = {
    vxlan = true,
  },

  -- The next node feature allows clients to always reach the node it is
  -- connected to using a known IP address.
  next_node = {
    -- anycast IPs of all nodes
    ip4 = '10.24.128.1',
    ip6 = 'fd4e:f2d7:88d2:fffe::1',

    -- anycast MAC of all nodes
    mac = '32:3d:f9:8f:01:53',
  },

  -- Refer to http://fastd.readthedocs.org/en/latest/ to better understand
  -- what these options do.
  mesh_vpn = {
    enabled = true,
    mtu = 1406,
   fastd = {
    configurable = true,
    -- List of crypto-methods to use.
    methods = {'salsa2012+umac'},
    groups = {
      backbone = {
        -- Limit number of connected peers to reduce bandwidth.
        limit = 1,

        -- List of peers.
        peers = {
      gw2= {
	    key = '2797c078ab5176ec27951cbe9d685e3212320217042494a37d8252fcb1a3029c',
	    remotes = {'ipv4 "fflux-gw2.c3l.lu" port 10000'},
      },
	  gw3= {
	    key = '8e15baeaca68163c60fe97292cb4268616e16710d51f9d4605cd70c00ad0c7eb',
	    remotes = {'ipv4 "fflux-gw3.c3l.lu" port 10000'},
	  }
        },
      },
    },
   },
  },

  autoupdater = {
    enabled = true,
    -- Default branch. Don't forget to set GLUON_BRANCH when building!
    branch = 'stable',

    -- List of branches. You may define multiple branches.
    branches = {
      stable = {
        name = 'stable',

        -- List of mirrors to fetch images from. IPv6 required!
        mirrors = {
	        'http://[fd4e:f2d7:88d2:fffe::12]/firmware/stable/sysupgrade',
            'http://[fd4e:f2d7:88d2:fffe::13]/firmware/stable/sysupgrade',
	        'http://firmware.freifunk.lu/stable/sysupgrade',
        },

        -- Number of good signatures required.
        -- Have multiple maintainers sign your build and only
        -- accept it when a sufficient number of them have
        -- signed it.
        good_signatures = 1,

        -- List of public keys of maintainers.
        pubkeys = {
            '4da854e34689c428c9a71e3022c598e88134bce859ae385c1f38e9131d3e9cb5', -- sid
            '0e6c109a94d062fb5d03c49d42a7e13db5a5c6f7639922e4da38d30026ee7164', -- metalgames
            '6e70a4bff82d70bb4f7d19ab170bf9f9aee64181567fefee040995fb9e5c1547' -- fanta
        },
      },

      beta = {
        name = 'beta',

        -- List of mirrors to fetch images from. IPv6 required!
        mirrors = {
            'http://[fd4e:f2d7:88d2:fffe::12]/firmware/beta/sysupgrade',
            'http://[fd4e:f2d7:88d2:fffe::13]/firmware/beta/sysupgrade',
            'http://firmware.freifunk.lu/beta/sysupgrade',
        },

        -- Number of good signatures required.
        -- Have multiple maintainers sign your build and only
        -- accept it when a sufficient number of them have
        -- signed it.
        good_signatures = 1,

        -- List of public keys of maintainers.
        pubkeys = {
		    '4da854e34689c428c9a71e3022c598e88134bce859ae385c1f38e9131d3e9cb5', -- sid
            '0e6c109a94d062fb5d03c49d42a7e13db5a5c6f7639922e4da38d30026ee7164', -- metalgames
            '6e70a4bff82d70bb4f7d19ab170bf9f9aee64181567fefee040995fb9e5c1547' -- fanta

        },
      },

      experimental = {
        name = 'experimental',

        -- List of mirrors to fetch images from. IPv6 required!
        mirrors = {
            'http://[fd4e:f2d7:88d2:fffe::12]/firmware/experimental/sysupgrade',
            'http://[fd4e:f2d7:88d2:fffe::13]/firmware/experimental/sysupgrade',
            'http://firmware.freifunk.lu/experimental/sysupgrade',
        },

        -- Number of good signatures required.
        -- Have multiple maintainers sign your build and only
        -- accept it when a sufficient number of them have
        -- signed it.
        good_signatures = 1,

        -- List of public keys of maintainers.
        pubkeys = {
		    '4da854e34689c428c9a71e3022c598e88134bce859ae385c1f38e9131d3e9cb5', -- sid
		    '0e6c109a94d062fb5d03c49d42a7e13db5a5c6f7639922e4da38d30026ee7164', -- metalgames
		    '6e70a4bff82d70bb4f7d19ab170bf9f9aee64181567fefee040995fb9e5c1547' -- fanta
        },
      },

    },
  },

  bandwidth_limit = {
      -- The bandwidth limit can be enabled by default here.
      enabled = false,

      -- Default upload limit (kbit/s).
      egress = 200,

      -- Default download limit (kbit/s).
      ingress = 3000,
    },

  ssid_changer = {
  switch_timeframe = 5,  -- only once every timeframe (in minutes) the SSID will change to the Offline-SSID
                          -- set to 1440 to change once a day
                          -- set to 1 minute to change every time the router gets offline
  first = 5,              -- the first few minutes directly after reboot within which an Offline-SSID always may be activated (must be <= switch_timeframe)
  prefix = 'FF_Offline_', -- use something short to leave space for the nodename (no '~' allowed!)
  suffix = 'nodename',    -- generate the SSID with either 'nodename', 'mac' or to use only the prefix: 'none'
  
  tq_limit_enabled = false,   -- if false, the offline SSID will only be set if there is no gateway reacheable
                          -- upper and lower limit to turn the offline_ssid on and off
                          -- in-between these two values the SSID will never be changed to prevent it from toggeling every minute.
  tq_limit_max = '45',    -- upper limit, above that the online SSID will be used
  tq_limit_min = '30'     -- lower limit, below that the offline SSID will be used
},
}