Jump to content
Sign in to follow this  
Master_Scythe

See this? I want this.... on *nix

Recommended Posts

I love coding, I love scripting and I wish I could learn how to write a programming language.

At the same time, I wish I could read font smaller than 14pt, and I wish I didnt get migraines from straining to do so after an hour.

 

As such, my love for open source continues, but using bash and text editors exclusively is soul crushing, to say the least. Physically injuring some days with the eye strain.

 

So, I'd like this:

https://play.google.com/store/apps/details?...imate&hl=en

https://lh4.ggpht.com/-BX639wK4H6q6uycUSq0c...YY6zDPwoEIJ573w

Anyone seen anything like it on a *nix distro? Ideally I'd like it to be run on Raspian (Debian)

 

I'm probably only a month or so away from Android 4.0 running on my Pi (thank you SO MUCH broadcom! Dev that Droid!), but I'd prefer an actual *nix distro.

I'm somewhere between "bash is physically too hard on my eyes" and "android is too simple to secure and administer confidently".

 

Anyone seen anything like it?

 

Webmin allows close to that level of simplicity, but I had bad luck with it a few times now, so i'd like to avoid that.

Share this post


Link to post
Share on other sites

Maybe something like DD-WRT, although primarily designed as a router there are a lot of extras that include some of the features you mentioned. Not sure of what has been done for the Pi though.

 

On a side note, seriously get your eyes checked! Had the same problem until I got glasses sorted. Always tired, headaches etc. Not fun.

Share this post


Link to post
Share on other sites

I get eye surgery almost every 3 months and have spent 2 years 'blind' from a legal standpoint.

I'm actually pretty good nowadays. Well above driving level, can read a book if the light is perfect. etc etc.

I already have the strongest glasses currently available in standard lenses. If I go any stronger I need custom frames too. And Every 3 months at that. too much money considering each op is about $3k out of pocket, per eye.

In 2 months time I'm hoping to go for one final surgery. It will either FIX my eyes, or leave me permanently blind (untill I get a Corneal organ donor).

Risky, but its time something happened. its bit of bullshit living in this "ok but not" state.

Everything is harder, but i'm still capable, so no one sees it. I sleep upwards of 15 hours a day from eye strain.

 

ANYWAY!

 

the Pi supports OpenWRT. I plan to give that a try tonight. See how it goes.

I'd just like a set of tickboxes and severs. ADVANCED config can be left for config files and the bash shell; i can do it, I know roughly how (been a few years and im a linux noob) but I can with research.

 

Im just worried adding modules is going to involve a lot of script work, as opposed to a tickbox.

And I like that the android one can run multiple of the same server. I'll see what OpenWRT can do tonight.

Share this post


Link to post
Share on other sites

Sorry to hear that, I suffered major eye trauma at 18months old leaving me with one working eye and one effectively (and now completely) blind, makes you a lot more careful. The risk is any deterioration in my bad eye can also affect the good one. While not involving surgery it does require regular visits to the eye hospital for checkups. Due to my age at the time of the injury corneal replacement wasn't an option and now I'm too old for it to be effective.

 

Anyway!

 

The FreeNAS guys have done some great work in this area, is a pity it's all targeted at x86 and FreeBSD. Although as their framework for configuration management is built using Python the cpu arch isn't an issue and should be portable.

 

Isn't going to help with the setup though.

 

/edit

 

Having a quick dig through their code (based on Django) I could knock up a quick port/proof of concept of the features you needed. Not too dissimilar from many of the apps I build anyway.

Edited by SledgY

Share this post


Link to post
Share on other sites

Whos code do you mean? the "Servers" Android people?

 

I'm surprised a tool like that isn't much more widely available\ported.

Its literally a perfect, and simple "whatever serve you need" program.

Share this post


Link to post
Share on other sites

It seems people have discussed it:

http://www.raspberrypi.org/phpBB3/viewtopic.php?p=151852

 

So far I love my little Pi. I used it to learn how to configure all the stuff via BASH, and I actually succeeded.

But its too hard for me visually to administer long term, even for my own uses, hence that app looking amazing.

 

Ive used freenas before, but never for anything other than a NAS.

 

Have you used OpenWRT before? Im just wondering what the 'installing modules' method is like. If its a 'tickbox' type system, cool. if i'm expected to dd into the thing and add modules manually, then out the window with that.

 

This is the thing i was getting at with TheTick in the NAS thread, its not availability, the tools exist, its usability thats stopping me. I might just make a small virtual PC on my media centre.... it'll cost me a windows license, but thats a small price to pay for a working GUI.

 

Though I'll try OpenWRT first, and re-try webmin on Raspbian.

Share this post


Link to post
Share on other sites

XBMC have done a good job here as well, and it's been ported to run well on the Rasberry Pi. Not sure quite the depth of available plugins though.

 

Ideally plugins would need to be able to install deb packages to be able to really extend the functionality. I've set up a quick project to give the idea a spin though.

Share this post


Link to post
Share on other sites

if you want to learn basic coding, read through the autopilot (python) stuff here www.theorangenotebook.com

Share this post


Link to post
Share on other sites

I learnt python. It was PAINFUL. Ive since forgotten it, lol.

I learnt half of C++ and then my eyes gave out.

Im thinking if i learn again I'll go for C sharp.

 

Is there a more modern version of Delphi's old way? I learnt that back in 2004. You know, 'draw' your app then assign commands to the buttons?

 

XBMC have done a good job here as well, and it's been ported to run well on the Rasberry Pi. Not sure quite the depth of available plugins though.

 

Ideally plugins would need to be able to install deb packages to be able to really extend the functionality. I've set up a quick project to give the idea a spin though.

Yeah no plugins for what I want.

Though i'll admit 1080p MKV's on the RPi hardware is very cool.

Share this post


Link to post
Share on other sites

Is there a more modern version of Delphi's old way? I learnt that back in 2004. You know, 'draw' your app then assign commands to the buttons?

Most languages have GTK bindings which lets you do that. Or QT bindings if you prefer QT (the QT design is actually pretty nice).

 

This would be a pretty nice project for the Raspberry Pi, I might do a bit more extensive proof of concept and see where that leads.

Share this post


Link to post
Share on other sites

Is there a more modern version of Delphi's old way? I learnt that back in 2004. You know, 'draw' your app then assign commands to the buttons?

That's what Visual Studio from Microsoft is, AND it supports all the ease-of-access stuff that Windows supports, like high-contrast colour scheme, large font, etc.

 

You didn't know this?

 

Also you can get VS Express for free: http://www.microsoft.com/visualstudio/eng/...xpress-products

 

I just noticed that it even comes in Windows 8 phone flavour. Neat.

Edited by SquallStrife

Share this post


Link to post
Share on other sites

To be honest Squall, I had no idea.

Codecreeper will understand this, but when something gets hard due to a physical limitation, you kinda 'give up on it'.

However I really want to lean how to program!

The will to do it is there, the drive to find things out wasnt.

Visual Studio you say? and WOO! high contract is the best. Even before my eyes went bad I used it. OK lets do this shit! lol.

 

Meanwhile, SledgY, when you look at it as a project what are you planning? Just a nice GUI for a bunch of dependant back ends? It'd be easy and fast that way.

FTPd, basic LAMP stuff, SAMBA, Twonky, etc. Just make all the dependencies come down and build a front for it?

As i said, if you need testing done, I'm in.

Share this post


Link to post
Share on other sites

To be honest Squall, I had no idea.

Codecreeper will understand this, but when something gets hard due to a physical limitation, you kinda 'give up on it'.

However I really want to lean how to program!

The will to do it is there, the drive to find things out wasnt.

Visual Studio you say? and WOO! high contract is the best. Even before my eyes went bad I used it. OK lets do this shit! lol.

 

Meanwhile, SledgY, when you look at it as a project what are you planning? Just a nice GUI for a bunch of dependant back ends? It'd be easy and fast that way.

FTPd, basic LAMP stuff, SAMBA, Twonky, etc. Just make all the dependencies come down and build a front for it?

As i said, if you need testing done, I'm in.

Yep that's I'm thinking, obviously with a lean towards the power requirements of the Pi. I do have a Pi to work with although will probably do development with QEMU.

 

Basics up first frontends for APT, PAM (authentication), Network config, Nginx (apache isn't exactly light weight, Nginx fits the bill), PHP, SSH, SAMBA and some form of log viewer. Probably not do FTPd as it's function is well covered by SSH (plugins SFTP and SCP) and many clients (WinSCP, Filezilla etc) already have support. Will look at what alternatives there are for MySQL, full blown mysql uses a fair chunk of memory, ideally Sqlite is the way to go but that might cause problems with applications that depend on MySQL features. Other big feature I will include is support for Zeroconf (Bonjour is the apple implementation), this technology is awesome when it comes to sharing resources, no need for static addresses (or even DHCP if configured correctly).

 

Had a look at Twonky, icky DLNA, uses UPnP under the hood, which is a pity as Zeroconf would have made far more sense. Will see what I can do on that, not had much exposure to it.

Edited by SledgY

Share this post


Link to post
Share on other sites

May I request it IS apache?

while its proven to be slower, its proven to still work on the Pi. IMO if you're thinking of doing it, do it with the most popular ones.

My Pi, clocked to 990mhz runs apache with 10 users viewing the page without delay.

What I'm suggesting is, if you're going to build a tool, make it widely compatible, as opposed to Pi optimized (but easily Pi usable :D).

The Pi will always be 'slow' and will never be enterprise material. Slow, but functioning in every way IMO is better than fast, but limited (especially on hardware where you kinda EXPECT slow)

 

Hopefully without sounding demanding, I'd request:

Web : (Personally? I'm hoping to run a basic webpage, maybe a Forum, and TinyBoard)

- Apache (if you really feel the need to be light, Lighttpd, but full featured would be nice.)

- MySQL (its big, but it works, and Pi now has 512mb ram; really you'd want to worry about compatibility here, as you said. Don't break things :P)

- PHP (kinda goes without saying for any decent webpage)

 

File:

- SSHd (obviously for the SSH functions)

- FTPd (For FTP, and correct me if I'm wrong, but doesnt SSH only support FTP+S, not SFTP?)

- Samba (You see there is this operating system called Windows and.... yeah.... :P)

- WebDAV (maybe?)

 

Media:

- Twonky (yes its UPnP, but DDWRT routers can handle it, surely the Pi can. For older tech especially

 

 

All of it is a bit heavy, there is no denial there. But multi platform use, as long as it CAN function on the Pi is what I'd like :)

 

Any help I can offer I'd be willing to do. Just let me know. testing etc. :)

Share this post


Link to post
Share on other sites

Lighttpd and NginX are both "full featured". PHP will run on either thru FastCGI.

 

Youtube, for instance, runs Lighttpd. Hulu, Wordpress and Sourceforge use NginX.

 

Apache isn't "it" any more, not by a long shot.

Edited by SquallStrife

Share this post


Link to post
Share on other sites

OK on choice of features and supported servers:

 

HTTP: NGINX is the bee's knees really is nice and lean and as mentioned supports FCGI for PHP. I will also be running the admin UI, a Python application proxied behind WSGI so Nginx is dual purpose.

PHP: as much as I dislike PHP it's still very common and will be supported via FCGI. I will configure a basic PHP and open it up to the community to optimise the php.ini

MySQL: With MySQL when I said look at alternatives there are a number of MySQL branches that offer lower memory usage but are API and feature compatible. Applications don't know the difference but will keep plenty of memory available for other tasks, MySQL will be an option.

SSH: This is a given, SSH also supports SFTP and SCP

FTP: As mentioned in my initial feature post is not really required given SFTP (FTPS is FTP over SSL but is not very common).

Samba: Again a given to support Windows clients

Webdav: Not really used that much any more, but never fear it's also supported by Nginx

Twonky: I'm not familier with this software is all, but as mentioned will look into it

 

Others:

IRCd

Zeroconf (Bonjour): Lots of cool things you can do here, maybe support for Airfoil speakers to turn your Raspberry Pi into a Airplay device

SMTPd: No real opinion on which, will favour low memory usage.

DNS proxy: Would be a nice option, possibly Dnsmasq as it's light on memory and also optionally supports DHCP.

 

 

A little more on design, similar to FreeNAS will utilise a thin client style UI for managing the Pi. Have started mocking it up with Twitter bootstrap and will probably utilise some of the many JS libraries to make the UI interactive while keeping the server to just serve JSON responses via a RESTful API. To put it simply minimise the amount of work done on the pi and let your PC/Tablet/Phone handle the UI. Being built with Bootstrap I'll support responsive out of the box meaning the UI will scale to your phone/tablet nicely

 

/edit

Source! https://bitbucket.org/timsavage/pyticle

 

Will be committing work into this repository, some application structure and template boilerplate in there at the moment nothing really to see yet. Once the software is doing something will create an image.

Edited by SledgY

Share this post


Link to post
Share on other sites

IRCd is brilliant +1

 

I'm still like FTPd for normal everyday FTP, which nothing else does in that list. :P But beggars cant be choosers. I'll be watching VERY closely.

 

 

For my curiosity, what are you programming in, and using which tool for GUI design?

Edited by Master_Scythe

Share this post


Link to post
Share on other sites

Code is all Python using Django (same as FreeNAS).

 

As for GUI design I'm following my nose a little, is using Twitter Bootstrap, a framework saves a lot of time, rather than messing about with layouts can just get into the code.

 

For the initial version will just render server side, later on will introduce JQuery/Backbone.js etc and make the UI more of an application in the browser, but first things first need to get the server side doing the business/make sure this stays secure!

 

Have user/group listings working now, and will have authentication etc working in the next couple days so you can login and browse about. Will probably look at a service plugin model after that and build something to manage HTTPd will be a good test case and something I am very familiar with.

Share this post


Link to post
Share on other sites

Sigh, my Pi has died, oh well only another $30 :D

 

Doesn't really affect dev though nothing (yet) is Pi specific, the software will work with any Debian based distro anyway.

Share this post


Link to post
Share on other sites

I can flash images and give you SSH if it helps down the track.

 

How did it die? Were you over-volting?

 

I got a great OC on stock volts; though I did whack a ramsink on the little processor.

Share this post


Link to post
Share on other sites

It's been sitting on my desk for a couple of months, powered it up before putting it into a Pibow enclosure that finally turned up and didn't start up. Haven't really done much trouble shooting.

 

Was running stock, will just get a new one though, could use the extra RAM.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×