What's new

amcfwm - AsusWRT-Merlin Custom Firmware Manager

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

One unknown at install is what to do with nano opening file so I left it empty and closed it.

amcfwm prompts you before opening nano, read the output carefully.

Code:
            echo "Setting Up OpenSSH-Server - Input Pubkey Of Your SSH Client - [Press Enter To Continue]"
            read -r "continue"
            sudo nano -w "$HOME/.ssh/authorized_keys"

Tried to run the uninstaller which failed, keeps asking Warning - This will delete all files related to the project... pressing 1 or 2 results in the question being asked again.

The uninstaller worked, I just forgot to add a break at the end so it would continue to ask the question after uninstalling. This has been patched in a hotfix.

I was able to overcome issues with OpenSSH server by purging (sudo apt purge openssh_server) it and installing it again (sudo apt install openssh-server).

What issues?

Also feel that adding the user to the sudoers file without password, while convenient, is a security risk, more so than changing the openssh port and key file!

Hence why this script is designed to setup a dedicated compile environment for a virtual machine, not a general use machine. ;)

I'd also like to add users are free to manually "configure" the VM (without support) and just use amcfwm for the build functionality, I am just simplifying the user experience.
 
"Rant mode on"

Honestly, guys, you need to chill out and let [mention]Adamm [/mention] breath, you don't like how the script works or behaves then you're free to make your own but don't expect him to offer support and user-defined customization or quality assurances for something which is given to the public for free on "it is what it is basis". Honestly, that's exactly why I was always against such a script ( no offense to [mention]Adamm [/mention] or the script) because firmware compilation is for professionals who know exactly what they're doing and they don't need some script to do all the heavy lifting, you guys should be thankful to Asus that they make it extremely hard to brick the router but it is still a possibility that a bad flash will end up in a brick and then you'll have to do a serial revival and most guys can't really do that on their own because it needs special hardware.

"Rant mode off"
 
If you read my posts I am not asking for customization. I am asking for clear instructions that cover the installation and options (which I am beginning to work up). Adamm is a wizard with scripting. Better than I once was with DOS batch files. Others need to be able to find what to do with the options. I'll see what I can do with what he has given up and run it by him before publishing. Might take me a day or so to work it in between household chores and spring lawn work (maybe snow shoveling).

That's exactly my point if a person needs instructions just to set up a simple build environment, he shouldn't even attempt firmware compilation in the first place. But anyways my post was not specifically for you or anyone in this thread, it was for everyone including me, we should treat the developers with respect and don't push them too hard that they start regretting their decision for making their work public. When something is given out to the public for free then we should realize that the developer is really not obliged to give ANY support or feature enhancements for the given work, it's entirely done on his own discretion.
 
"Rant mode on"

Honestly, guys, you need to chill out and let [mention]Adamm [/mention] breath, you don't like how the script works or behaves then you're free to make your own but don't expect him to offer support and user-defined customization or quality assurances for something which is given to the public for free on "it is what it is basis". Honestly, that's exactly why I was always against such a script ( no offense to [mention]Adamm [/mention] or the script) because firmware compilation is for professionals who know exactly what they're doing and they don't need some script to do all the heavy lifting, you guys should be thankful to Asus that they make it extremely hard to brick the router but it is still a possibility that a bad flash will end up in a brick and then you'll have to do a serial revival and most guys can't really do that on their own because it needs special hardware.

"Rant mode off"
This.
 
"Happy Bunny Mode ON" ... :D

As a non-coder who should definitely NOT be paddling in this pool ... I am extremely grateful to @Adamm for making this script available - on the CLEAR understanding that it was intended for experienced coders who would have zero difficulty with its installation and use. I too tripped over his preferred SSH setup initially but read the screen prompts and did the necessary paste - plus kept copy to use as key for MobaXterm.

For me - this script has been a most useful Covid-19 Lock Down distraction which has quite literally BLOWN my mind - I had no idea of the massive complexities involved in generating a little [between 30 and 70 Mb] firmware file for an array of supported Asus Routers. The Magic of Merlin has been laid bare for me as I have trawled through a tiny portion of the source code buried in up to 12Gb of files per router model!

Hats off to all the "wizards" who live at least a part of their lives on this forum - sharing their skills for the love of the game. {Both Thumbs Up}
 
I couldn't agree more! With all the down time, studying how "make rt-ax88" even gets started has my head sore ;-)
It also allowed me to modify busbox to now include undo when using vi.
That alone is reason for me to buy a beer for @Adamm!
 
Does anyone have a good guide on how to share Ubuntu VM files with Windows 10? Was hoping to save/move some of these compiled AX88U FWs (generated by AMCFWM script in my Ubuntu Virtual Box 18.04 LTS) in one of the Windows folders for future reference. I followed several of the guides online but had no success in sharing the files. Most likely I am doing something wrong or not following all the steps correctly.

Thank you in advance!


Sent from my iPhone using Tapatalk
 
VirtualBox has a Folder Sharing option that can be configured within the Virtual Box settings. Can't tell you anymore as I switched from VBox to VMWare Player years ago.
 
VirtualBox has a Folder Sharing option that can be configured within the Virtual Box settings. Can't tell you anymore as I switched from VBox to VMWare Player years ago.
Yes, I use this feature. It works well, but you do need to play with it and I used "persistent" setting, and then I have to provide my credentials inside unbuntu a couple times before I can see my windows shared folder.
 
Does anyone have a good guide on how to share Ubuntu VM files with Windows 10? Was hoping to save/move some of these compiled AX88U FWs (generated by AMCFWM script in my Ubuntu Virtual Box 18.04 LTS) in one of the Windows folders for future reference. I followed several of the guides online but had no success in sharing the files. Most likely I am doing something wrong or not following all the steps correctly.

Thank you in advance!


Sent from my iPhone using Tapatalk
Windows powershell

scp -p port user@ip:/path/* C:\path
 
Thank you guys I will try them!


Sent from my iPhone using Tapatalk
 
Hey @Adamm , hope you're doing well!
I see that a commit wash pushed to the repo updating openvpn to version 2.4.9.
I had to configure a new VM, so I have configured from scratch your script, VM and repo.
Then I've build successfully for my RT-AC86U and installed, everything good!
However I noticed that the openvpn client is still on version 2.4.8.
Does your script builds based on master or mainline? Because as I saw, the commit is only on master branch.

Cheers!
 
Does your script builds based on master or mainline? Because as I saw, the commit is only on master branch.

That model is built from the mainline branch
 
That model is built from the mainline branch
So if before I press compile, I manually merge them? Will it compile or get again the original mainline from GitHub?
 
Code:
            if [ "$BAC56" = "y" ]; then
                build_fw amng.ac56/release/src-rt-6.x.4708 rt-ac56u master &
                sleep 20
            fi
            if [ "$BAC68" = "y" ]; then
                build_fw amng.ac68/release/src-rt-6.x.4708 rt-ac68u mainline &
                sleep 20
            fi
            if [ "$BAC87" = "y" ]; then
                build_fw amng.ac87/release/src-rt-6.x.4708 rt-ac87u 384.13_x &
                sleep 20
            fi
            if [ "$BAC3200" = "y" ]; then
                build_fw amng.ac3200/release/src-rt-7.x.main/src rt-ac3200 384.13_x &
                sleep 20
            fi
            if [ "$BAC3100" = "y" ]; then
                build_fw amng.ac3100/release/src-rt-7.14.114.x/src rt-ac3100 mainline &
                sleep 20
            fi
            if [ "$BAC88" = "y" ]; then
                build_fw amng.ac88/release/src-rt-7.14.114.x/src rt-ac88u mainline &
                sleep 20
            fi
            if [ "$BAC5300" = "y" ]; then
                build_fw amng.ac5300/release/src-rt-7.14.114.x/src rt-ac5300 mainline &
                sleep 10
            fi
            if [ "$BAC86" = "y" ]; then
                build_fw amng.ac86/release/src-rt-5.02hnd rt-ac86u mainline &
                sleep 10
            fi
            if [ "$BAX88" = "y" ]; then
                build_fw amng.ax88/release/src-rt-5.02axhnd rt-ax88u ax &
                sleep 10
            fi
            if [ "$BAX58" = "y" ]; then
                build_fw amng.ax58/release/src-rt-5.02axhnd.675x rt-ax58u ax &
                sleep 10
            fi
            if [ "$BAX56" = "y" ]; then
                build_fw amng.ax56/release/src-rt-5.02axhnd.675x rt-ax56u ax &
                sleep 10
            fi

this gives you more specifics. certain models have their own branches. only no longer supported models build off of the master.
 
Code:
            if [ "$BAC56" = "y" ]; then
                build_fw amng.ac56/release/src-rt-6.x.4708 rt-ac56u master &
                sleep 20
            fi
            if [ "$BAC68" = "y" ]; then
                build_fw amng.ac68/release/src-rt-6.x.4708 rt-ac68u mainline &
                sleep 20
            fi
            if [ "$BAC87" = "y" ]; then
                build_fw amng.ac87/release/src-rt-6.x.4708 rt-ac87u 384.13_x &
                sleep 20
            fi
            if [ "$BAC3200" = "y" ]; then
                build_fw amng.ac3200/release/src-rt-7.x.main/src rt-ac3200 384.13_x &
                sleep 20
            fi
            if [ "$BAC3100" = "y" ]; then
                build_fw amng.ac3100/release/src-rt-7.14.114.x/src rt-ac3100 mainline &
                sleep 20
            fi
            if [ "$BAC88" = "y" ]; then
                build_fw amng.ac88/release/src-rt-7.14.114.x/src rt-ac88u mainline &
                sleep 20
            fi
            if [ "$BAC5300" = "y" ]; then
                build_fw amng.ac5300/release/src-rt-7.14.114.x/src rt-ac5300 mainline &
                sleep 10
            fi
            if [ "$BAC86" = "y" ]; then
                build_fw amng.ac86/release/src-rt-5.02hnd rt-ac86u mainline &
                sleep 10
            fi
            if [ "$BAX88" = "y" ]; then
                build_fw amng.ax88/release/src-rt-5.02axhnd rt-ax88u ax &
                sleep 10
            fi
            if [ "$BAX58" = "y" ]; then
                build_fw amng.ax58/release/src-rt-5.02axhnd.675x rt-ax58u ax &
                sleep 10
            fi
            if [ "$BAX56" = "y" ]; then
                build_fw amng.ax56/release/src-rt-5.02axhnd.675x rt-ax56u ax &
                sleep 10
            fi

this gives you more specifics. certain models have their own branches. only no longer supported models build off of the master.

My question is if I manually git merge the master into mainline before building I with amcfwm script, will the script then pull the mainline again and I loose the merge I did?
 
My question is if I manually git merge the master into mainline before building I with amcfwm script, will the script then pull the mainline again and I loose the merge I did?
i think you would have to redo the repo in order for that to happen. (test it out the changelogs will reflect or you will get a failure to merge).
 
this gives you more specifics. certain models have their own branches. only no longer supported models build off of the master.

Nothing should be compiled off master/HEAD. I haven't tried compiling it in many months, it's only used to apply repository-wide changes (like package updates). All the GPL-related changes are applied directly to their respective branches.
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top