GL-iNet AX1800 OpenWrt firmware

gl-infra builds are now on OpenWRT 21.x however they seem to have only just started on it.

My build and darryl’s are on OpenWRT 21 however still on kernel 4.4.60, I only wanted a OpenWRT version that didn’t have Gl.Inet’s stuff as it breaks how i like to set my network up with custom firewall rules for hijacking DNS requests to forward them to my pihole servers, sqm etc.

Currently i am messing about with gl-infra now to get a decent build made that has most of what some people need for a basic home network but hitting walls with it booting due to compile failures.

So to sum it into a TLDR, yes its still stuck on 15.05 but it seems work is being done to upgrade it to a later version of OpenWRT, which will take time.

3 Likes

Update: Right i have been compiling again with more additions for testing, once i have it working nicely i will do the same as i did with my Linksys WRT32x and compiling the whole lot of packages and then changing the feeds over so that kmod’s will be installable.

Just need to find space as my Compiling VM only has 200GB drive and thats near full already.

3 Likes

Thank you for your build!

-Jeff

Update: Ok i have started the new compile run with Kmods to be included along with everything else.
I will upload the .bin and .tar files to mega, however it will be set to use my server to get the other files from.

My internet connection is like a 48MB down and 3MB up so please please do not put the url out to the public as i use this connection every day for other services. If someone does leak the url i will simply disable the domain to it.

The site is also rate limited for downloads however doesn’t stop someone going to a DDOS attack on the domain.

Once the compile is completed i shell be purging the files to test the scripting as well i have made so that i can then bounce between Linksys routers and GL-AX1800 or when i wipe the VM to start clean its done automatically for me.

Some times the domain might be offline if i am doing maintance on the network, if the domain is down for more then 28 hours it means someone was naughty i have pulled it.

As always look in the 115 MB folder on MEGA Folder i will start with build versions on start of this compile.

3 Likes

Will we be able to install new packages like AdguardHome? Thank you for your builds! Much appreciate.

I mainly use AdguardHome and put my NextDNS account (DNS-over-TLS) as the upstream server so I could just check my nextdns account everywhere for monitoring. Then turn off AdGuardHome’s built-in block lists.

I would like to know, if we are able to install adguard home on a usb hard drive to keep the hard disk space on the flint.
thanks

2 Likes

@melskie On my build and Darryls you can use OPKG to install apps etc such as Adgaurd, however the current issue is anything that requires a kernel module will fail to install due to kernels being different.

@Eltorrro i am not sure on Darryls build about USB however i do know i defo included USB stuff for flash drives etc as well as Network Sharing via Ksmbd.

To sum it up though after the next 48 hours i should have r16273 full built with every single file for openwrt and kernel 4.4.60 kmods so that issue will then be solved.

3 Likes

I don’t know if this question has been asked or even if the time is right but I am wondering at what point do we go about getting the router officially on the radar with the openwrt team. The work being done by @solidus1983 and @darryl if they desire should be merged into the official openwrt channel so that builds, even if they are “snapshot” for now, can start being available on the openwrt firmware database. At least IMHO, it seems that the work is stable/mature enough to go full mainstream now.

4 Likes

Thanks for the quick response.
Is there a possibility to get version with adguard home preinstalled?
Im not well versed regarding linux and customization, but I bought this router, to get an adblocker routerbased and yeah…the standard firmware sucks.

As its already in a compile run i can’t make any changes however it will be easy to install via the Web UI under the software page.

There is already an adblocker included which is not adguard though called adblocker.

The builds we are making are using Gl-Inet’s infra builder, i am sure that once all the patches have been made etc it will get main streamed, however the stock OpenWRT snapshots are on either 5.10.111 Kernels or 5.13 kernels which means the drivers in the 4.4.60 Kernel will need to be ported to the 5.x Kernel branch that will take time. Its not easy when there is blob’s that are closed source, Yes QUALCOMM i am talking about you! its the whole reason why QSDK OpenWRT is still on 15.05 because the drivers haven’t been ported upwards.

I am having issues with the compile where the images are not the correct size however all the other files have compiled.

2 Likes

Well i am going to place the builds on hold whilst i attempt to repair the serial connection on the router. I so wish that OEM’s would have the serial TTL area already soldered on, its not that had to place a 2.5mm plug on a router. So off for round 4 with the soldering iron.

Not only that, the image is still not 100% creating correctly when i have everything compiling so looking into that as well. However the domain above is still working fine now i have switched back to my linksys wrt32x for now.

Take as long as you need and Thank you! Your build is quite stable and solid so far. I’ve only come across a few routers over last few years that had a serial connection area populated with an header for easy connection. Most manufacturers don’t want consumers to be able to “tweak” their routers.

Linksys is the only company i know of that has Serial TTL area populated.
Should be doing soldering in about 8 hours from now as i need sleep its 4:30am where i am and i should be sleeping.

Glad to hear that the build is stable though as it was for me till i flashed a new image which then killed wireless etc because images are not being made correctly for some reason.

Update: Serial TTL reconnected this time its not going to move.

Edit: I will leave the current kmods up however i can’t get it to compile nicely at all so going to give it a break.

@alzhao I have sent you a PM about the issue to see if a second pair of eyes can see where i am going wrong.

1 Like

Honestly @solidus1983, the first build that you have provided suits my needs perfectly at the moment. There is no pressure to release something that isn’t ready yet. Thank you for your efforts so far.

Thing is for me it needs to be better. Just works is not to me good enough.
Also finding issues and getting them sorted also helps GL-Inet as well look for issues and bugs to squash them before hand.

2 Likes

hi, just signed up @solidus1983 to say thanks – your build has been working smoothly so far.

3 Likes

Sorry for the late reply, been busy with getting the compile to work correctly.
No problem glad to be of assistance.

On the positive side i have now made a better script, after forking glinet’s repo.

Simply SSH into your build box then enter the following

nano glinet.sh

Or

vim glinet.sh

Paste below into it and save.

#!/bin/bash

## Update and install required packages for Gl-Inet Intra Cross Compile ##

sudo apt update && sudo apt dist-upgrade -y 
sudo apt install -y build-essential ccache ecj fastjar file g++ gawk subversion swig time \
gettext git java-propose-classpath libelf-dev libncurses5-dev \
libncursesw5-dev libssl-dev unzip wget binutils bzip2 diffutils flex perl clang \
python3 python2.7-dev python3 python3-distutils python3-setuptools \
xsltproc zlib1g-dev sshpass dos2unix zip patch curl \
make diffutils gcc grep libc-dev libz-dev rsync docbook2x util-linux \
perl subversion gcc-multilib g++-multilib git-core ocaml sharutils re2c qemu-guest-agent

## Unsetting SED ##
#unset SED

## Clone Intra ##
git clone https://github.com/solidus1983/gl-infra-builder.git
cd ~/gl-infra-builder
python3 setup.py -c config-wlan-ap.yml

## Add Themes ##
cd ~/gl-infra-builder/wlan-ap/openwrt/package
git clone -b master https://github.com/jerrykuku/luci-theme-argon.git 
git clone -b master https://github.com/jerrykuku/luci-app-argon-config.git

## Complete Intra Setup ##
cd ~/gl-infra-builder/wlan-ap/openwrt
./scripts/gen_config.py target_wlan_ap-gl-ax1800 solidus1983build

## Fix Config ##
cd ~/gl-infra-builder/wlan-ap/openwrt
sed -i '/is not set/d' .config

### Run Menuconfig to adjust things ##
./scripts/getver.sh > ~/gl-infra-builder/wlan-ap/openwrt/version.info
cat ~/gl-infra-builder/wlan-ap/openwrt/version.info
read -p "Edit the .config file and then press any key to continue... " -n1 -s
make menuconfig
make defconfig

## Compile ##
IGNORE_ERRORS=1 make -j$(($(nproc)+1)) V=sc

This script once you have chmod a+x glinet.sh then ./glinet.sh it will then make the entire build enviroment for you if your using either Debian 11.2 or Ubuntu 21.x+ then after compile the firmware.

Hopefully this will make it easier for the average joe. If you need to edit the .config file simply edit the solidus1983build.yml file in the ~/gl-infra-builder/profiles folder.

Be glad when this is all working and over, i can then get more then 2 hour sleep a day, this is taking why too much of my time and its not doing me any good lol.

Forgot to add the contents of the solidus1983build.yml file

---
description: Add the LUCI dependencies for Solidus1983 Build
feeds:
  - name: glinet
    path: ../feeds_dir/glinet

packages:
  - luci
  - luci-base
  - luci-mod-rpc
  - 464xlat
  - 6in4
  - 6rd
  - 6to4
  - adblock
  - banip
  - bcp38
  - bind-client
  - bind-libs
  - bind-nslookup
  - cgi-io
  - collectd
  - collectd-mod-cpu
  - collectd-mod-interface
  - collectd-mod-iwinfo
  - collectd-mod-load
  - collectd-mod-memory
  - collectd-mod-network
  - collectd-mod-rrdtool
  - collectd-mod-sensors
  - collectd-mod-thermal
  - collectd-mod-vmem
  - collectd-mod-wireless
  - coreutils
  - coreutils-sort
  - curl
  - ddns-scripts
  - ddns-scripts-cloudflare
  - ddns-scripts-digitalocean
  - ddns-scripts-freedns
  - ddns-scripts-godaddy
  - ddns-scripts-noip
  - ddns-scripts-nsupdate
  - ddns-scripts-route53
  - ddns-scripts-services
  - dnscrypt-proxy2
  - dnsmasq-full
  - dnsmasq_full_auth
  - dnsmasq_full_conntrack
  - dnsmasq_full_dhcp
  - dnsmasq_full_dhcpv6
  - dnsmasq_full_dnssec
  - dnsmasq_full_ipset
  - dnsmasq_full_noid
  - dnsmasq_full_tftp
  - etherwake
  - igmpproxy
  - ip-bridge
  - ip-full
  - iperf
  - iperf3
  - ipset
  - ipset-dns
  - iptables-mod-conntrack-extra
  - iptables-mod-conntrack-label
  - iptables-mod-dhcpmac
  - iptables-mod-filter
  - iptables-mod-hashlimit
  - iptables-mod-iface
  - iptables-mod-ipmark
  - iptables-mod-ipopt
  - iptables-mod-iprange
  - iptables-mod-ipsec
  - iptables-mod-nat-extra
  - iptables-mod-physdev
  - iptables-mod-proto
  - kmod-asn1-decoder
  - kmod-atm
  - kmod-br-netfilter
  - kmod-dnsresolver
  - kmod-fs-exportfs
  - kmod-fs-ksmbd
  - kmod-fs-nfs-common
  - kmod-fs-nfs-common-rpcsec
  - kmod-fs-nfsd
  - kmod-ifb
  - kmod-ip6tables-extra
  - kmod-ipip
  - kmod-ipoa
  - kmod-ipsec
  - kmod-ipsec4
  - kmod-ipsec6
  - kmod-ipt-checksum
  - kmod-ipt-compat-xtables
  - kmod-ipt-conntrack-extra
  - kmod-ipt-conntrack-label
  - kmod-ipt-dhcpmac
  - kmod-ipt-extra
  - kmod-ipt-filter
  - kmod-ipt-hashlimit
  - kmod-ipt-iface
  - kmod-ipt-ipmark
  - kmod-ipt-ipopt
  - kmod-ipt-iprange
  - kmod-ipt-ipsec
  - kmod-ipt-ipset
  - kmod-ipt-nat-extra
  - kmod-ipt-nat6
  - kmod-ipt-physdev
  - kmod-ipt-proto
  - kmod-ipt-raw
  - kmod-ipt-raw6
  - kmod-l2tp
  - kmod-lib-crc32c
  - kmod-lib-lzo
  - kmod-lib-textsearch
  - kmod-lib-zlib-deflate
  - kmod-lib-zlib-inflate
  - kmod-mppe
  - kmod-nat46
  - kmod-netem
  - kmod-nls-utf8
  - kmod-pppoa
  - kmod-pppol2tp
  - kmod-pptp
  - kmod-sched
  - kmod-sched-act-vlan
  - kmod-sched-core
  - kmod-sched-ipset
  - kmod-sit
  - kmod-tun
  - kmod-udptunnel4
  - kmod-udptunnel6
  - kmod-veth
  - kmod-wireguard
  - kmod-zram
  - ksmbd-server
  - libatomic
  - libbpf
  - libcap
  - libcap-ng
  - libcurl
  - libelf
  - libgmp
  - libipset
  - libiwinfo-lua
  - libltdl
  - liblua
  - liblucihttp
  - liblucihttp-lua
  - libmnl
  - libnatpmp
  - libnetfilter-conntrack
  - libnettle
  - libnfnetlink
  - libnghttp2
  - libnl-core
  - libnl-genl
  - libopenssl
  - libopenssl-conf
  - librrd1
  - librt
  - libsensors
  - libsysfs
  - libubus-lua
  - libuci-lua
  - libupnp
  - libustream-openssl
  - libuuid
  - libuv
  - libwebsockets-full
  - linux-atm
  - lm-sensors
  - lua
  - luci-app-adblock
  - luci-app-banip
  - luci-app-bcp38
  - luci-app-ddns
  - luci-app-firewall
  - luci-app-ksmbd
  - luci-app-openvpn
  - luci-app-opkg
  - luci-app-qos
  - luci-app-sqm
  - luci-app-statistics
  - luci-app-ttyd
  - luci-app-uhttpd
  - luci-app-upnp
  - luci-app-vpn-policy-routing
  - luci-app-vpnbypass
  - luci-app-wol
  - luci-compat
  - luci-lib-base
  - luci-lib-ip
  - luci-lib-ipkg
  - luci-lib-json
  - luci-lib-jsonc
  - luci-lib-nixio
  - luci-lib-nixio_openssl
  - luci-lib-px5g
  - luci-mod-admin-full
  - luci-mod-network
  - luci-mod-status
  - luci-mod-system
  - luci-proto-ipv6
  - luci-proto-ppp
  - luci-proto-wireguard
  - luci-ssl-openssl
  - luci-theme-bootstrap
  - luci-theme-argon
  - luci-app-argon-config
  - mdnsd
  - miniupnpd
  - mwan3
  - natpmpc
  - netperf
  - openssl-util
  - ppp-mod-pppoa
  - ppp-mod-pppol2tp
  - ppp-mod-pptp
  - qos-scripts
  - resolveip
  - rpcd
  - rpcd-mod-file
  - rpcd-mod-iwinfo
  - rpcd-mod-luci
  - rpcd-mod-rrdns
  - rrdtool1
  - speedtest-netperf
  - sqm-scripts
  - sysfsutils
  - tc-full
  - tc-mod-iptables
  - ttyd
  - u2pnpd
  - ucert
  - uclibcxx
  - uhttpd
  - uhttpd-mod-ubus
  - umdns
  - vpn-policy-routing
  - vpnbypass
  - wireless-regdb
  - wpad-openssl
  - wsdd2
  - zlib
  - zram-swap

diffconfig: |
  CONFIG_LUCI_LANG_ar=y
  CONFIG_LUCI_LANG_bg=y
  CONFIG_LUCI_LANG_bn_BD=y
  CONFIG_LUCI_LANG_ca=y
  CONFIG_LUCI_LANG_cs=y
  CONFIG_LUCI_LANG_de=y
  CONFIG_LUCI_LANG_el=y
  CONFIG_LUCI_LANG_en=y
  CONFIG_LUCI_LANG_es=y
  CONFIG_LUCI_LANG_fi=y
  CONFIG_LUCI_LANG_fr=y
  CONFIG_LUCI_LANG_he=y
  CONFIG_LUCI_LANG_hi=y
  CONFIG_LUCI_LANG_hu=y
  CONFIG_LUCI_LANG_it=y
  CONFIG_LUCI_LANG_ja=y
  CONFIG_LUCI_LANG_ko=y
  CONFIG_LUCI_LANG_mr=y
  CONFIG_LUCI_LANG_ms=y
  CONFIG_LUCI_LANG_nb_NO=y
  CONFIG_LUCI_LANG_nl=y
  CONFIG_LUCI_LANG_pl=y
  CONFIG_LUCI_LANG_pt=y
  CONFIG_LUCI_LANG_pt_BR=y
  CONFIG_LUCI_LANG_ro=y
  CONFIG_LUCI_LANG_ru=y
  CONFIG_LUCI_LANG_sk=y
  CONFIG_LUCI_LANG_sv=y
  CONFIG_LUCI_LANG_tr=y
  CONFIG_LUCI_LANG_uk=y
  CONFIG_LUCI_LANG_vi=y
  CONFIG_LUCI_LANG_zh_Hans=y
  CONFIG_LUCI_LANG_zh_Hant=y
  CONFIG_ALL_KMODS=y
  CONFIG_ALL_NONSHARED=y
  CONFIG_ALL=y 
4 Likes

Right! UPDATE!!!.

Yep there is a new Download for everyone.

R16273: DOWNLOAD

This has been setup to use a mirrored repo of my repo.

Everything is now working, just doing one more compile run for consistency checks then will remake the Howto with the scripts being used to make your own.

The above script is to make your own personal builds however it will default to openwrt’s repo so please make adjustments on that and also Press save once you have completed your adjustments.

2 Likes

Thanks. Can’t wait for the how to. Top work mate