Building portable apps on Windows is fairly easy given the straightforward packaging of the apps in question along with its dependencies (that is, its libraries). However, it’s a different ballgame with Linux because you are going to contend with the different packaging systems of various distros (unless you want to create your own distro-agnostic package management system). That’s the rub: don’t reinvent the wheel, don’t reinvent the package management system that is tightly linked with Linux distros. Building portable Linux apps is an exercise in Linux programming. The non-technical audience don’t have the expertise nor the time to dabble with Linux nuances. They simply want their apps to work out of the box (period).
That being said, portable Windows apps do not necessarily translate to its seamless Linux counterparts. Linux apps are best left installed to your laptop where you carry it wherever life takes you. That’s the essence of portable computing, not portable Linux apps.