No Next Item No Next Conference Can't Favor Can't Forget Item List Conference Home Entrance    Help
View Responses


Grex Agora Item 14: gBoard -- another grex bbs
Entered by tfurrows on Tue Nov 1 04:48:57 UTC 2016:

gBoard - another grex bbs

33 responses total.



#1 of 33 by tfurrows on Tue Nov 1 05:05:31 2016:

I'll go out on a limb a little, and try to get something started that I'm
interested in seeing on Grex: another CLI bbs option. I'm new here, so go easy
on me if I'm overstepping, stepping on toes, or otherwise offending anyone.

My plan is to extend an existing project that I created a few months ago,
which is slightBBS. Rather than try to explain the vision in that, I'd like
to get it going with the ideas that I currently have, and see what it develops
into. My plan is to create an experience that like-minded *nix CLI users might
enjoy.

To get started, I'll need some help. Now, if I'm asking for too much, please
let me know, but I'm only asking for basic things that I feel I'll need to
accomplish a secure-ish setup on OpenBSD. I don't know who to ask, nor how
to ask, so I'll post my requests here. If I'm barking up the wrong tree and
you know where/what the right tree is, let me know and I'll bark there.

Here's what I feel I need to get started:

- A user specifically for the board s/w to run under with setuid, so that all
  of the board files are owned and controlled by that user. Perhaps "gboard"
  any username will do of course. The user won't need a shell in the end, but
  I'll need the ability to doas or to become that user.

- A shell script that is in a location, and with sufficient permissions so
  that any user on grex can read and execute it. I'll need permission to edit
  said script, even if it's with the gboard user. The script itself needs to
  NOT have setuid, the process should be owned by the user running it. It 
  could be called "gboard"

- Another script that is also in a locate where anyone can run it, a PHP
  script, that is setuid as the gboard user. This will be started by that
  script. The reason for the two is to identify the process owner as a way
  to authenticate the user to the board without giving them any permission
  to modify any of the boards files (beyond what the script allows of course.)

And that's all I think I need. Correct me if I'm wrong, but I don't believe
I'm asking for any elevated permissions, nor access to anything on the server
beyond the self-contained second user. All of the code would be open to any
and all, if that's the way you prefer it from a sysadmin point-of-view. If
you'd prefer it to be closed off, I'm ok with that too, though I feel the
userbase would appreciate the access perhaps.

Thanks for listening, and I hope to hear from those who might be able to help
me get this setup!


#2 of 33 by tfurrows on Tue Nov 1 05:16:37 2016:

Another thought occurred to me. Right now, I'm asking for a way to play with
an idea on the grex server. I could certainly do this on my own systems, but
I'd love to do it here, and see if I can't get some interaction going. When
all is said and done, I'm more than happy to see the project in the hands of
whoever would own it here on Grex. I'm happy to see it under community
control, with voting, or however things happen here on Grex. I have no
interest in thumbing the project, or preventing it from going any particular
direction, or preventing others from managing, modifying, or even
discontinuing it. Whatever happens, I'm fine with it.

That said, I would like to have the flexibility and freedom to start the
project off without a lot of politics. I'll take responsibility for it, of
course. I don't mind oversight, and I certainly don't need any
privacy/secrecy. I don't know how that falls into "the way things are done"
at Grex. Let me know.


#3 of 33 by cross on Tue Nov 1 12:52:20 2016:

For a user, just go ahead and great a new account and shoot a mail saying what
it is. That's as good a way as any to start.

Put a script anywhere in that user's directory you like ($HOME/bin or
something) and let me know the location and I'll put a wrapper that executes
it into /cyberspace/bin, which is in all $PATH's.


#4 of 33 by tfurrows on Tue Nov 1 22:42:11 2016:

Thank's Dan for helping me get this going! Here's a question for the agora
users: if you were to try out another command-line bbs system here on grex,
would you prefer if it had similar command keys to agora, or does that not
matter at all?


#5 of 33 by tfurrows on Tue Nov 8 23:45:41 2016:

Dan was great about helping me get the php version going, and patching up some
security issues. On his recommendation, I'm creating a Perl version, which
may hopefully get more participation/interest from the grex community. I'll
post here with an update when I have one.


#6 of 33 by tfurrows on Tue Nov 8 23:51:35 2016:

If anyone wants to try out the php version, it's in /cyberspace/bin/gboard.
It may go away if the perl version works better, but it's there to try.


#7 of 33 by gelinas on Tue Nov 15 18:51:39 2016:

I've tried the php version. I even left feedback, ;)


#8 of 33 by tfurrows on Thu Nov 17 02:32:18 2016:

Thanks gelinas! Certainly need all the testing and feedback one can get...
I agree on the editor, vi would be a big improvement over what's there.
Nano/pico also have modes that might work.

The Perl version is online as well, I believe I posted about how to use it
in the php version.


#9 of 33 by tfurrows on Mon Nov 28 22:31:25 2016:

If you want to try the work-in-progress perl version of gboard, the client
can be run by anyone in the 'people' group. It is located in:

/z/g/b/gboard/bin/gboard.pl

Right now, it doesn't use the same board data as the php version, so
the board names and message content will not be the same. It would be trivial
to make them both use the same data, but since they're both experimental, and
one alone will probably survivie on grex, I figured it didn't matter too much.

Thanks for testing!


#10 of 33 by cunnings on Wed Dec 7 00:09:02 2016:

Well so far I've been trying the PHP version and it seems well organized and
easy to use. I don't mind the editor at all, but as an alpine user pico would
be ok by me too.


#11 of 33 by tfurrows on Fri Dec 9 01:11:19 2016:

I'm glad people are trying it out... now we just have to find a way to get
the discussion kickstarted. Between bbs, gboard, and party, I'm not seeing
a lot of activity, though I am checking them all regularly. What can we do
to get more participation in the social side of things, or is that not a focus
for the grex audience?


#12 of 33 by gelinas on Fri Dec 9 23:12:37 2016:

It used to be the focus. I don't know how to get it restarted.


#13 of 33 by cross on Tue Dec 13 19:23:46 2016:

Sorry, I need to respond to several of your emails, Joseph! I apologize; I
had a cold that really laid me out for a few weeks and then a succession of
visitors.


#14 of 33 by tfurrows on Wed Dec 14 02:38:21 2016:

No problems at all, I figured between being sick and the holiday season, it
could wait :) Thanks for all of your help, I'm curious to see what all we can
do. No rush though, there's nothing urgent in all of this fun.


#15 of 33 by tfurrows on Wed Dec 21 21:03:07 2016:

I wonder, could we get gboard listed on 'menu'? New users seem to hit party
and a few even come in here to bbs, but none make it all the way through to
gboard. Might be a helpful test, see if new users are more willing to post
on there.


#16 of 33 by kentn on Fri Dec 23 12:47:52 2016:

That should be do-able.  


#17 of 33 by tod on Fri Jan 6 02:34:55 2017:

Pretty neat Perl BBS. Reminds me of the old modem days.


#18 of 33 by papa on Fri Jan 27 18:26:09 2017:

Shades of SDF! gboard is very familiar to SDF's bboard. It's a neat and
ambitious experiment that's looking great so far. 

Regarding the Perl version, attempts to run the program generate 
the following error:

     ERROR: Can't connect to the gboard server



#19 of 33 by telnetuserid on Sun Mar 19 13:22:05 2017:

So far so good. It's usable and provides nice UI.

The downsides are:
1. Missing $EDITOR configuration.
The built in gboard editor is just readline based 
text input. It would be better to use 'ed' as 
the editor and make it configurable.

2. The long output doesn't get piped to the $PAGER
Sometimes, post in a thread can be very long that 
it can't be viewed in a single terminal window. It's 
rather inconvenient to scroll the terminal to view 
post. There is $PAGER, such as 'less' to overcome this
inconvenience. Why don't just use that?

3. No 'man gboard' available
Great program comes with manual page so that users 
can view the manual page when they get lost instead 
of wandering around in confusion.



#20 of 33 by papa on Sun Mar 19 14:10:12 2017:

I think nano is a friendlier choice for default editor.


#21 of 33 by tfurrows on Wed Apr 26 05:21:26 2017:

gboard is no where close to perfect, but would there be value in adding it
to 'menu' so that new users could join in without having to be directed? What
is the protocol for getting things modified in the menu program here on Grex?


#22 of 33 by cross on Wed Apr 26 14:40:58 2017:

Probably just make a copy of the menu you want to add it to and send a diff
is easiest.


#23 of 33 by tfurrows on Wed Apr 26 15:59:53 2017:

I guess I'd suggest something like:

1. Modify /cyberspace/lib/omenu/dialogs/mainmenu.tpl:

 Change:
   B:P:/cyberspace/bin/bbs:BBS (very, very cool!!)
 to
   B:M:/cyberspace/lib/omenu/templates/bbsmenu.tpl:Bulletin Board Systems

 and Remove:
   Z:P:/cyberspace/bin/bbsguide:View BBS introductory info


2. Add the file /cyberspace/lib/omenu/templates/bbsmenu.tpl containing:

** BBS MENU **
%
B:P:/cyberspace/bin/bbs:Grex FrontTalk BBS (Main BBS)
I:P:/cyberspace/bin/bbsguide:FrontTalk BBS introduction
G:P:/cyberspace/bin/gboard:Grex GBoard BBS (Experimental BBS)
%


#24 of 33 by tfurrows on Sun May 7 03:17:57 2017:

Thank you cross for getting gboard on menu! Already a few new names have
popped up, and that's a great thing!


#25 of 33 by tfurrows on Sun May 7 03:18:48 2017:

News: gboard can now use an external editor (nano.) Check out the help from
within gboard for more info. Now it needs a pager... and other thing of
course.


#26 of 33 by swolf154 on Tue Mar 20 08:06:02 2018:

Very Nice tfurrows. Job well done. Now...How do we bring in more users that
will enjoy your hard work?


#27 of 33 by walkman on Sat Apr 14 23:47:26 2018:

Pizza party!


#28 of 33 by tfurrows on Mon Dec 31 15:46:09 2018:

Folks, gboard has been updated to use a different filesystem layout, and
another compatible client has been written in Lua. We're testing a "federated"
setup over at a a few other servers (in the circumlunar.space domain) and
there may be interest in federating grex in... this would increase the
activity in gboard (or "Telem" in the Lua case.) The new gboard isn't in place
here at grex, but it could  be- or it could be replaced with telem.

Is there any interest in sharing boards with other systems?


#29 of 33 by papa on Wed Jan 2 01:06:57 2019:

A federated bulletin board system with a shell interface sounds like a great
idea.


#30 of 33 by cross on Wed Jan 2 20:20:27 2019:

Sounds cool. Go for it.


#31 of 33 by tfurrows on Thu Jan 3 17:26:18 2019:

I'll ask the folks over there if we can bring grex in the loop. As you already
know, gboard uses a filesystem setup vs. a database; we're using rsync to
federate. Would we run this under the gboard user, or would there be another
preference?


#32 of 33 by cross on Thu Jan 3 18:05:39 2019:

Probably the gboard user would work.... Let me ponder it.


#33 of 33 by lar on Sat Mar 14 00:57:38 2020:

gboard looks pretty cool

Response not possible - You must register and login before posting.

No Next Item No Next Conference Can't Favor Can't Forget Item List Conference Home Entrance    Help

- Backtalk version 1.3.30 - Copyright 1996-2006, Jan Wolter and Steve Weiss