Build for Netgear R7800

It is up to you. Depends on what do you want to do.
My script e.g. updates the source files, runs make and then generates the diffs about the changes. Make just compiles.

@hnyman
OK,I got it
I think hnscripts/updateNmake.sh fit for me

by the way ,I found a folder ‘buildscripts“ in https://www.dropbox.com/sh/ew0gap0crn30wyk/AADQLCBF5All8wc8RXmxisqAa

are these files can custom a build environment for my netgear 4300 V1?
if so,where should I change or modify?

Those are the same files as in hnscripts dir.
You can naturally use them for other routers, as long as you change the router-specific lines. Those refer to either R7800, ipq806x target or the image filename. Mostly in createbuildinfo.sh
I have tried to separate the router definition into variables to a large extent, and to keep router specific things in just a few scripts.

But you likely need at least some shell script skills to understand the scripts.

I use the scripts myself for wndr3700, R7800 and wrt3200acm builds. To highlight the needed changes, here is comparison of R7800 and wrt3200acm scripts. For daily builds, it is just createbuildinfo.sh (and mountNcopy.sh if you use that for image file transfer)

perus@ub1704:$ diff -r r7800/hnscripts/ wrt3200acm/hnscripts/

diff -r r7800/hnscripts/createbuildinfo.sh wrt3200acm/hnscripts/createbuildinfo.sh
17,19c17,19
< BinDir=$PWD/bin/targets/ipq806x/generic
< Device=R7800
< Prefix=lede-ipq806x
---
> BinDir=$PWD/bin/targets/mvebu/generic
> Device=wrt3200acm
> Prefix=lede-mvebu-linksys
60c60
< mv $Prefix-$Device-squashfs-sysupgrade.tar $Device-$VersTime-sqfs-sysupgrade.tar
---
> mv $Prefix-$Device-squashfs-sysupgrade.bin $Device-$VersTime-sqfs-sysupgrade.bin

diff -r r7800/hnscripts/mountNcopy.sh wrt3200acm/hnscripts/mountNcopy.sh
8c8
< BinDir=bin/targets/ipq806x/generic
---
> BinDir=bin/targets/mvebu/generic
19c19
< cp $BinDir/*tar $Mountpoint
---
> cp $BinDir/*bin $Mountpoint

Additionally, there are filename/dir/versionstring changes in newbuildroot.sh and copyfiles2tmp.sh, but those are not essential for daily builds, so I deleted them from the diff output.

ok.I will try it
thanks for your everything Hnyman
Wish the best for you

I'm not sure the script files have been made it or not ,please help me check it out

for createbuildinfo.sh

change to :
BinDir=$PWD/bin/targets/ar71xx/generic
Device=WNDR4300V1
Prefix=lede-ar71xx
Branch=lede1701

for mountNcopy.sh

change to:
Mounttype=vboxsf
Mountname=PCSHARE
Mountpoint=/media/windows-share
BinDir=bin/targets/ar71xx/generic

Just test it, run the scripts ans see, if the results are as expected.

Ps.
you can see my own ar71xx versions of the scripts from the WNDR3700 community build. Just check the "main".patch of the 17.01 release if you want 17.01.

https://www.dropbox.com/sh/t52c02rm20y8x9p/AADTETYgu1LycB26BFTYOUkGa/lede1701-r3506-bb6a8b2cbf-20170906/WNDR3700-lede1701-r3506-bb6a8b2cbf-20170906-2058-main.patch?dl=0
(line 520 forward)

OK,you got it !

by the way,with your build environment,my following setup for sqm is good or not?,thanks

set sqm "pppoe-wan
Queuing disciplines: cake
Queue setup script: test_WAN_triple-isolate__piece_of_cake.qos
Advanced option string to pass to... : nat dual-dsthost
Advanced option string to pass to...:nat dual-srchost

SQM config has nothing to do with my R7800 build or, even my build environment...

(If you use that triple-isolate cake script, you need the sqm-scripts-extra package. Otherwie, no comment to the SQM config itself.)

OK,hnyman
thanks

@hnyman ( I have found something wrong with my modification ,skp following post ,I'm testing.. )
Hi,hnyman
I modified the following text,but get erros,please help me

for newBuildroot.patch

Current version

FILESTAMP=WNDR4300v1-lede1701-r3506-bb6a8b2cbf-20170906-2058

for main.patch

+# Use "make defconfig" to expand this to a full .config
+CONFIG_TARGET_ar71xx=y
+CONFIG_TARGET_ar71xx_nand=y
+# Openwrt device definition
+CONFIG_TARGET_ar71xx_nand_WNDR4300v1=y
+# LEDE device definition
+CONFIG_TARGET_MULTI_PROFILE=y
+CONFIG_TARGET_DEVICE_ar71xx_nand_DEVICE_wndr4300v1=y
+CONFIG_TARGET_DEVICE_ar71xx_nand_DEVICE_wndr6100=y

+BinDir=$PWD/bin/targets/ar71xx/nand
+Device=WNDR4300v1
+Prefix=lede-ar71xx-nand

+Mounttype=vboxsf
+Mountname=PCSHARE
+Mountpoint=/media/windows-share
+BinDir=bin/targets/ar71xx/nand

(I have no idea to modifiy here in mani.patch)
diff --git a/.config.init b/.config.init
new file mode 100644
index 0000000000..50d3d74931

erros logs

.....
Installing package 'kamailio-4.x' from telephony
Installing package 'ortp' from telephony
Installing package 'libosip2' from telephony
Installing package 'miax' from telephony
Installing package 'pcapsipdump' from telephony
Installing package 'restund' from telephony
Installing package 'rtpproxy' from telephony
Installing package 'sipp' from telephony
Installing package 'siproxd' from telephony
Installing package 'yate' from telephony
fatal: pathspec 'files' did not match any files
cp: cannot stat '.config.init': No such file or directory

You should probably let newbuildroot script to first create the new build environemtn unmodified, and then edit the files (.config.init, scripts etc.) by hand.

yes,my bad
I should read carefully about your previous post
thank you Hnyman

This is awesome! I always hesitated moving away from DD-WRT because I thought it would be too complicated to set up OpenWRT/LEDE but after following your simple instructions I've managed to compile a build for myself that actually works with all my LTE dongles! (EM7455 through mbim had to make my own luci proto for it though, E3272 through ncm, AC330U through ppp/sierra)
(yours only works with old ppp modems, main reason to build myself anyway :slight_smile: )
The SQM cake is impressive going from a C to an A in bufferfloat with a loss of only 0.3 mbit down and 0.1 mbit up via PPPoE VDSL. Definitely going to be nice for gaming, as I'm not seeing any introduced latency at all by enabling it.

I only have a few small problems and they are just regarding the WiFi.
In DD-WRT on 5 GHz band I was able to do 80+80 but I can only do 80 in LEDE despite it showing as an option in iw list (but not in luci), can I just manually configure this via /etc/config/wireless somehow, or is this a MU-MIMO thing?
I cannot do HT40 on 2.4 GHz with LEDE. It's always in HT20 mode.
and that's all!

DDNS is a go, VDSL2 is a go, 3G/LTE is a go, OpenVPN is a go, minidlna is a go, samba server is a go, UAS storage array via USB hub is a go, Transmission is a go, QoS is a go, WiFi stability is a go, overall stability is a go, and dang ubifs is the greatest thing my router just became my secondary PC.
Thank you!

@hnyman
Hi,hnyman,needs your help
I found this ,while re-excuting hnscripts/updateNmake.sh after few days

error: Your local changes to the following files would be overwritten by merge:
package/base-files/files/bin/config_generate
Please, commit your changes or stash them before you can merge.
Aborting

...update main source...
remote: Counting objects: 31, done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 31 (delta 23), reused 0 (delta 0)
Unpacking objects: 100% (31/31), done.
From https://git.lede-project.org/source
97ebdf9..12a0da6 lede-17.01 -> origin/lede-17.01
Updating 97ebdf9..12a0da6
error: Your local changes to the following files would be overwritten by merge:
package/base-files/files/bin/config_generate
Please, commit your changes or stash them before you can merge.
Aborting
...update feeds...
...install feeds...
Installing all packages from feed packages.

Normal git stuff.
As my approach leaves the self-made changes uncommitted, you need to stash the changes before git pull and then add them later to git tracking.

git status (so that you see the normal situation, which changed files are under git tracking)
git stash (move changes away before pull)
git pull
git stash pop (so that you re-apply the stashed changes)
(edit possible conflicts with text editor)
git add .gitignore package ... (whatever files you need to add back to git tracking)

There are several approaches into handling self-made changes, but this is what I have used and for which style my scripts have been crafted.

OK,you got it ,I will try,
Thanks a lot !

hey hnyman
skip this question,I think I understand now .(new question: I found some sh files in /etc folder,what doese these files work for ? and it's auto-start on boot or not ?)
thanks

The scripts is /etc are rather clear, if you look at their names and sources. There are scripts that

  • check (compare) current settings to defaults (in ROM) for most settings,
  • save or apply settings from an encrypted archive (my own settings are burned into image as the file /etc/HNsettings... so that I can apply the settings easily even after resetting the router with official defaults) ,
  • turn the router into a LAN repeater (wired-connected dumb AP) etc.

None of those runs automatically at boot. They are there just to make (my) life easier :wink:

Beautiful!
thanks for explain in details

Does this mean wifi leds? I searched your thread before asking, but got a ton of "lede" hits instead.