Linux for NES development
Compiler: cc65
The easiest option is to use the cc65 compiler, which supports multiple 6502 variants, including the NES.
On Ubuntu:
sudo apt install cc65
On Fedora and other DNF-based distributions:
sudo dnf install cc65
This installs the libraries and binaries required for 6502 development.
Vim / Neovim as an IDE
NES programming is essentially assembly programming for the 6502 processor. By default, Vim and Neovim understand basic assembler syntax for *.s and *.asm files.
I developed and maintain the nes.nvim plugin for Neovim. It works well with lazy.nvim and provides features such as syntax highlighting, error detection, and quick build-and-run, out of the box. If you find bugs or other issues, please open an issue or submit a pull request.
That’s it. For more tools, see the NES toolbox page.