Best of two worlds, puppylinux on WSL?

What features/apps/bugfixes needed in a future Puppy
Message
Author
User avatar
rufwoof
Posts: 3690
Joined: Mon 24 Feb 2014, 17:47

#16 Post by rufwoof »

jamesbond wrote:
bark_bark_bark wrote:You don't need anti-virus for that, you just need a secure browser (like Pale Moon), and a good ad-blocker. Also, my mail program blocks remote content by default and I set it to view all emails in plaintext.
You have taken good precaution. But it takes one bug in Palemoon and your defense is broken. AV is a second line of defense. You might say that well that's the same thing could happen in Linux; and I would totally agree. The only difference is that - as greengeek pointed out - we're not being targeted (yet) because we're too small.
BTW, speaking of drive-by downloads, Chrome (and chromium/chrome-based browsers) are all vulnerable to drive-by downloads.
Exactly my point - to live AV free on Windows, you need constant vigilance because one oops means you're pwned.
Physical separation is more preferable, and with PC miniaturisation such as PC's on a stick (USB stick sized) devices 'multi core' setups should instead strive towards multi-processors. Running Linux programs in effect under a Windows host is only as secure as that Windows host. Locally, the argument for running a personal single user desktop system as root fundamentally distils down to data and both user and root having authority to read/change/delete that data. Network wise, online accounts, financial transactions etc. have vastly more attack points, Even if your local end is secure, the connection between and/or remote hosts could just as equally have you compromised. Personally I use online email and only pull down (copy) the text for the emails I desire to be kept relatively private for local storage. I use a hosts file instead of a adblock plugin. And I use the latest version of browser, cleanly booted from a cleanly booted OS (Fatdog at present). For when (note - not if) that is pwned, then its a liveCD (DVD) with no HDD physically attached - no saves (persistence, other than when I freshly boot to reconfigure things and make a new savefile). For data storage I run a OpenBSD box, base system only, that using a limited userid reverse sshfs mounts one of its folders as a mountpoint (folder) on Fatdog. All inbound ports are closed on that OBSD box (so no ssh into it etc.). That box takes regular snapshots of the Fatdog mounted data content into another OBSD box folder, which in turn is periodically backed up.

In my case that OBSD box is a single core celeron, but it could just as equally be a PC on a stick type device, perhaps using MMC/SD cards for storage. Broadly that is relatively 'safe'. De-pwning is simple/quick/easy. The greater risk is having online accounts pwned and to reduce that risk I prefer to use a updated/latest browser. On my Fatdog LiveCD system for instance I have the base savefile - around 7MB in save file size of my changes/customisations and after booting I add a gtk3 sfs - as chrome needs that and a chrome sfs (that I create using fatdogs install chrome option that creates a .tgz, that I then right mouse click and convert to sfs before saving that to /data (outside of the OS) and reboot without saving. So each reboot has me back at a clean OS and browser, but where shortly after booting /data pops up so I have access to limited amounts of data/data storage, but where more important data is stored in other OBSD box folders that are totally out of reach of Fatdog - excepting if I so choose to open them up to Fatdog (typically when I also ensure there are no external/WAN connections). As for online accounts, well I can secure banking transactions by clean booting a pristine OS and clean latest browser and go directly to that bank, nowhere else before or after ... and that's relatively safe. For everything else, general browsing you just have to accept that certain sites might be pwned, as might online transaction details (so use a dedicated card with low limits for online purchasing).

With regard to WSL, I have no need for it and would opt for multi-processor instead if I did (or even running Windows from under 'nix rather than the other way around). As for stripping out ssh, curl ...etc. well for me they are programs I use regularly, and in the case of ssh, heavily (I just use curl for local weather reports).

Security isn't a product, its a process. Yes you can adopt multiple security products that collectively aid in that process. Similarly no defence (security) is impenetrable given sufficient desire - excepting the most extreme cases (usability and security tend to be inversely correlated) where usability is zero.
[size=75]( ͡° ͜ʖ ͡°) :wq[/size]
[url=http://murga-linux.com/puppy/viewtopic.php?p=1028256#1028256][size=75]Fatdog multi-session usb[/url][/size]
[size=75][url=https://hashbang.sh]echo url|sed -e 's/^/(c/' -e 's/$/ hashbang.sh)/'|sh[/url][/size]

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#17 Post by disciple »

disciple wrote:BTW for anybody using WSL, I recommend WSLtty.
Also, use lxrunoffline, rather than installing distros from the Windows store.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

lmemsm
Posts: 51
Joined: Wed 27 Jun 2012, 15:01

#18 Post by lmemsm »

bark_bark_bark wrote:I would still like to see some way to run Puppy in WSL, but I'd settle for the ability to install popular puppylinux programs in WSL. Has anybody gotten puppylinux programs like pmusic to run directly on Ubuntu 16.04?
I get most programs I use to work natively in Windows and on Linux. Haven't looked at the source code for pmusic. However, most programs written with a cross-platform GUI will work on either system. Just takes some recompilation and patching. I use mingw and msys as a development environment on Windows. One could use Cygwin as well which can help with the porting process and provides a POSIX compatible layer. Midipix project is also working on a POSIX compatible layer for native Windows programs.

Had a comment on the security issue in this thread as well. In many cases, decent sandboxing of applications is a good way to make things more secure. I have read about a Microsoft project that was increasing sandboxing of applications. Linux has Linux containers which accomplishes this and systems like Docker make use of it. Android phones also use sandboxing between their various applications. It wasn't mentioned, but some Linux distributions are also running on Android devices. I think that would be an interesting option for an OS like Puppy as well.

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#19 Post by disciple »

Haven't looked at the source code for pmusic.
Pmusic is one of many "popular puppylinux programs" written in bash and using gtkdialog, so you would need to install one of the systems that provides bash, and it would probably be easiest to use WSL or CoLinux or an emulator.

I would have thought most "popular puppylinux programs" could be made to work reasonably easily in WSL. But as I noted above, anything that does audio recording or playback will be a problem unless you can get it to use pulseaudio. Something like virtualbox might be a better option.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

lmemsm
Posts: 51
Joined: Wed 27 Jun 2012, 15:01

#20 Post by lmemsm »

disciple wrote:Pmusic is one of many "popular puppylinux programs" written in bash and using gtkdialog, so you would need to install one of the systems that provides bash, and it would probably be easiest to use WSL or CoLinux or an emulator.

I would have thought most "popular puppylinux programs" could be made to work reasonably easily in WSL. But as I noted above, anything that does audio recording or playback will be a problem unless you can get it to use pulseaudio. Something like virtualbox might be a better option.
Sounds like it would be relatively easy to convert it to something that would work on Windows then. Bash works in msys or Cygwin or with midipix. I've even seen some native (but older) bash ports that don't require a POSIX compatibility layer (such as winbash). The Minoca OS Swiss project also has an interesting shell implementation that will work on Windows. I personally don't use gtkdialog, but I have been able to get yad and dialog working on Windows. I have flrec working on Windows and Linux systems (but it uses a FLTK front-end and a sox backend).

If you don't require binary compatibility, you can rebuild a lot of the Puppy programs from source and get them to run fine on Windows. Virtualbox or qemu would probably be better options if you wanted the binary compatibility.

From what I've read about WSL, it's more useful for command line/console programs. Someone on the LFS list built a LFS system using WSL and he mentioned performance was rather slow. One article mentioned that in order to run GUI programs, you'd need a native X server which brings you back to solutions like Cygwin or native ports of X Windows like Xming. (By the way, I did build X Windows from source natively on Windows a few years ago.) My guess as to one reason WSL was created was to run server software like nginx and Apache and tools/languages like Python which are a real nuisance to compile natively on Windows (even harder than building X Windows itself).

Think it might be pretty interesting to try to get some of the functionality of the Puppy package managers working natively in Windows. Having popular Linux and/or Puppy applications work on Windows is useful if you have to use Windows at work and still want the environment somewhat similar to home devices that run Puppy Linux. Also, if applications port to Linux and Windows, they're probably going to be fairly easy to port to other devices/machines as well. That could potentially make Puppy (or a Puppy-like system) available on a lot more machines.

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#21 Post by disciple »

From what I've read about WSL, it's more useful for command line/console programs.
That's the official line, but it's trivial to install an x server on windows, and then gui programs work great.
Assuming you don't need alsa or some special kernel module the most likely problem you'll notice is poor IO performance.
Virtualbox or qemu would probably be better options if you wanted the binary compatibility.
WSL is probably a slightly better option in terms of system integration. Or maybe it is possible to share all your Windows drives with the virtualbox client? I haven't tried.
Natively porting a bunch of things would be a whole lot of unnecessary work.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

lmemsm
Posts: 51
Joined: Wed 27 Jun 2012, 15:01

#22 Post by lmemsm »

That's the official line, but it's trivial to install an x server on windows, and then gui programs work great.
Which X server do you use on Windows?
WSL is probably a slightly better option in terms of system integration. Or maybe it is possible to share all your Windows drives with the virtualbox client? I haven't tried.
Using VirtualBox, there is a way to set up a shared drive with Windows. I use that feature a lot.
Natively porting a bunch of things would be a whole lot of unnecessary work.
Guess it depends on the person. I build most of my programs from source natively (even on Linux). I enjoy reading resources such as the Beyond Linux from Scratch book. I feel like if you want something done right, you do it yourself. If I build it myself, I can make sure everything works the way I want it and fix bugs should they arise. If someone else does it, I'm stuck with whatever they offer and whenever they choose to fix or update the project. Knowing how the various parts of your system work (how the software and libraries integrate and can work together) can be a good learning experience for some. Guess that's why there are some systems like Gentoo where you build everything from scratch and some systems like Red Hat or Ubuntu where someone gives you a polished and supported end result. Some people prefer the former to the latter.

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#23 Post by disciple »

Sorry, I haven't been getting forum notifications lately for some reason. Even changed to using a different email address instead of Gmail and it made no difference..
lmemsm wrote:
That's the official line, but it's trivial to install an x server on windows, and then gui programs work great.
Which X server do you use on Windows?
VcXsrv. It seems to be recommended these days, although I don't remember any problems with Xming when I used it years ago.
WSL is probably a slightly better option in terms of system integration. Or maybe it is possible to share all your Windows drives with the virtualbox client? I haven't tried.
Using VirtualBox, there is a way to set up a shared drive with Windows. I use that feature a lot.
Yes, that's kind of the first level of integration. Clipboard sharing is good too. I was think of other things like translating windows to Linux file paths and vice versa, although I suppose there's bound to be a way to do most of it with Virtualbox.
Natively porting a bunch of things would be a whole lot of unnecessary work.
Guess it depends on the person. I build most of my programs from source natively (even on Linux). I enjoy reading resources such as the Beyond Linux from Scratch book. I feel like if you want something done right, you do it yourself. If I build it myself, I can make sure everything works the way I want it and fix bugs should they arise. If someone else does it, I'm stuck with whatever they offer and whenever they choose to fix or update the project. Knowing how the various parts of your system work (how the software and libraries integrate and can work together) can be a good learning experience for some. Guess that's why there are some systems like Gentoo where you build everything from scratch and some systems like Red Hat or Ubuntu where someone gives you a polished and supported end result. Some people prefer the former to the latter.
I can't say I've ever taken the step up from Arch to Gentoo - I'm actually annoyed by all the compiling I need to do in Arch because of using too much software that isn't in the official repositories. So I don't think I'd cope with Gentoo!
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

WSL 2 is a true testament to how much Microsoft loves Linux!

#24 Post by disciple »

disciple wrote:Assuming you don't need alsa or some special kernel module the most likely problem you'll notice is poor IO performance.
Looks like some (most?) of that'll be changing soon; not sure about alsa though.
Today we’re unveiling the newest architecture for the Windows Subsystem for Linux: WSL 2! Changes in this new architecture will allow for: dramatic file system performance increases, and full system call compatibility, meaning you can run more Linux apps in WSL 2 such as Docker.
...
Microsoft will be shipping a Linux kernel with Windows
...
WSL 2 uses the latest and greatest in virtualization technology to run its Linux kernel inside of a lightweight utility virtual machine (VM). However, WSL 2 will NOT be a traditional VM experience. When you think of a VM, you probably think of something that is slow to boot up, exists in a very isolated environment, consumes lots of computer resources and requires your time to manage it. WSL 2 does not have these attributes. It will still give the remarkable benefits of WSL 1: High levels of integration between Windows and Linux, extremely fast boot times, small resource footprint, and best of all will require no VM configuration or management.
So they've obviously realised it is too hard to try to reimplement Linux, like they were doing with WSL 1, and they were never going to get performance good enough.
Makes me wonder if they are trying to do "embrace, extend, extinguish" not just to Linux but to VMs.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

s243a
Posts: 2580
Joined: Tue 02 Sep 2014, 04:48
Contact:

Re: WSL 2 is a true testament to how much Microsoft loves Linux!

#25 Post by s243a »

disciple wrote:
disciple wrote:Assuming you don't need alsa or some special kernel module the most likely problem you'll notice is poor IO performance.
Looks like some (most?) of that'll be changing soon; not sure about alsa though.
Today we’re unveiling the newest architecture for the Windows Subsystem for Linux: WSL 2! Changes in this new architecture will allow for: dramatic file system performance increases, and full system call compatibility, meaning you can run more Linux apps in WSL 2 such as Docker.
...
Microsoft will be shipping a Linux kernel with Windows
...
WSL 2 uses the latest and greatest in virtualization technology to run its Linux kernel inside of a lightweight utility virtual machine (VM). However, WSL 2 will NOT be a traditional VM experience. When you think of a VM, you probably think of something that is slow to boot up, exists in a very isolated environment, consumes lots of computer resources and requires your time to manage it. WSL 2 does not have these attributes. It will still give the remarkable benefits of WSL 1: High levels of integration between Windows and Linux, extremely fast boot times, small resource footprint, and best of all will require no VM configuration or management.
So they've obviously realised it is too hard to try to reimplement Linux, like they were doing with WSL 1, and they were never going to get performance good enough.
Makes me wonder if they are trying to do "embrace, extend, extinguish" not just to Linux but to VMs.
I find VMs quite fast for lightweight versions of linux. For instance on this forum strechdog, fatdog64 and tazpup/64 all work well in virtualbox and don't consume that many resources. I've had some issues with a standard puppy in virtualbox. I think that with a standard puppy that we need to remove the part where it hides the cursor in the .xinitrd script:

Code: Select all

#v2.01 hide cursor when not moving... (setup in /usr/sbin/input-wizard)
if [ -f /etc/mousehide ];then
 IDLETIME="`cat /etc/mousehide | cut -f 1 -d ','`"
 [ ! "$IDLETIME" = "0" ] && unclutter -idle $IDLETIME &
fi
but I here that standard puppies work well in other virtualization tools like KVM and VMWare. Anyway, I like the isolation aspect of a virtualmachine and the guest additions of vitualbox allows sufficient OS integration.

Anyway, I'm sure that WSL will be quite useful but I'm sure it will come at the cost of more influence on linux by microsoft than we want. I don't use it yet because I'm still on windows 8.1 and I'm not very excited about the prospect about moving to windows 10, which is more than likely whenever I eventually get a new computer.

Also I suspect that microsoft will put annoying non standard restrictions on WSL (i.e. a non standard security model) that one won't have to worry about in a VM. Actually this is one annoying thing about microsoft. They keep breaking the features that they invent by changing the security model. Historically Microsoft has been "too unstable" and for this reason there could be maintenance nightmares for systems which depend on WSL.

As for systems getting extinguished by WSL, the more likely victums are cygwin and mingw. Both of these have helped make code portable from linux to windows systems and if WSL leads to the obsolescence of these systems the consequences might not be good.

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#26 Post by disciple »

As for systems getting extinguished by WSL, the more likely victums are cygwin and mingw
Yes - I'm not using them these days because I have WSL - even on a non-technical level, I figure it's easier to justify to anyone who has an issue with me installing it on my work machine i.e. I can say "but it's just a feature of windows".

The major difference with cygwin and mingw is that they don't run Linux binaries so you can't just install something from e.g. the massive Debian repo. Because of this I'm guessing it is much more common for people to install virtualbox than either of them,

Hypothetically, if WSL killed them, in the long term it is Windows which would suffer, because it would be harder to port software to Windows (as a native build). WSL might already have a side effect of encouraging developers not to bother worrying about portability, because "Windows usrs can just use a linux build"
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#27 Post by disciple »

FWIW WSL2 is obviously a lot more like Colinux.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

s243a
Posts: 2580
Joined: Tue 02 Sep 2014, 04:48
Contact:

#28 Post by s243a »

disciple wrote:
Hypothetically, if WSL killed them, in the long term it is Windows which would suffer, because it would be harder to port software to Windows (as a native build). WSL might already have a side effect of encouraging developers not to bother worrying about portability, because "Windows usrs can just use a linux build"
The danger is that either Microsoft won't support WSL long term or alternatively they will make changes to WSL (e.g. the security model) to make it incompatible with many linux applications.

Regarding cygwin, I think it is fun to play with but given how much easier WSL is to use there is now much much less incentive to use cygwin. I don't trust Microsoft to support WSL long term in a tightly integrated way. For instance look at all the restrictions that they put on PowerShell. This makes PowerShell hard to use because one has to decide what security policy they want and depending on the security policy they might have to sign the applications that they use. Will Microsoft in the future do something similar to WSL and if not will they add additional levels of segregation between WSL and windows for security reasons. For now here is a google search which might give clues about what is coming:

wsl security concerns

s243a
Posts: 2580
Joined: Tue 02 Sep 2014, 04:48
Contact:

#29 Post by s243a »



disciple
Posts: 6984
Joined: Sun 21 May 2006, 01:46
Location: Auckland, New Zealand

#30 Post by disciple »

The key here is that the attack requires an elevation of privilege but if you can elevate privileges you can do many different attacks and so called "bashware" is just one option.
Not to mention that it is surely a more complicated option.
The danger is that either Microsoft won't support WSL long term or alternatively they will make changes to WSL (e.g. the security model) to make it incompatible with many linux applications
Yeah, that's the "extend and extinguish" part.
Do you know a good gtkdialog program? Please post a link here

Classic Puppy quotes

ROOT FOREVER
GTK2 FOREVER

s243a
Posts: 2580
Joined: Tue 02 Sep 2014, 04:48
Contact:

#31 Post by s243a »



Post Reply