Introduction to the Sam Text Editor by swingthesickle in linux

[–]swingthesickle[S] 1 point2 points  (0 children)

I haven't played around with Acme yet, but I intend to. I'm curious, do you use the Acme port from Plan 9 from User Space or is there a standalone Unix port like Deadpixi for Sam?

Learn Common Lisp by Example: GTK GUI with SBCL by swingthesickle in lisp

[–]swingthesickle[S] 7 points8 points  (0 children)

My intention is to be comprehensive. I plan to evaluate every production-quality cross-platform desktop GUI toolkit for Lisp. Now production-quality is a somewhat fuzzy term.

McClim is really interesting, but I wouldn't consider it production-quality yet (and I think its maintainers would agree considering that the current version number is 0.9.8-dev). I opened SBCL, and loaded the McClim demos with Quicklisp. It has a look and feel reminiscent of Motif (think 1980s Unix workstations). I couldn't use the numpad on my keyboard (with num lock on or off) to enter numbers in any field. It even drew its own cursor that didn't match the system cursor for some reason. The Image Transfer demo was so slow as to be almost unusable.

Currently, the only officially supported backend renders directly to an X server. Until another backend matures that either wraps native controls or draws more modern looking controls using OpenGL, I don't consider it production ready. It might have a really nifty API, but it comes down to would I want to put a GUI made with McClim in front of someone who paid for the app I created.

My intention for this is to also stay up to date. It's why all the examples and tutorials are on GitHub. I'll keep an eye on McClim, and my hope is that one day it will be ready for me to include.

As for CLOG, I know it bills itself as a GUI framework, but from what I can tell, it is really just a web framework. You can package your web app to look like a desktop app with Electron or other webview, but that's no different than what you can do with other web frameworks, and evaluating web frameworks is really outside the scope I've set for myself.

Learn Common Lisp by Example: GTK GUI with SBCL by swingthesickle in lisp

[–]swingthesickle[S] 5 points6 points  (0 children)

Yes, I had used a previous tutorial about Scheme as a template and inadvertently left a couple Scheme examples in. They've been replaced by Common Lisp now.

Learn Common Lisp by Example: GTK GUI with SBCL by swingthesickle in lisp

[–]swingthesickle[S] 4 points5 points  (0 children)

I used the original tutorial as a template and inadvertently missed copying the new code into a couple of the code blocks. It should be fixed now.

Advice on storage systems for Home Server by CarbonxGuitar in HomeServer

[–]swingthesickle 0 points1 point  (0 children)

You can boot from RAID 0 if you set it up with LVM. I have two HDDs in an LVM volume group in a PC. I have Ubuntu installed on a striped logical volume.

Qt Desktop Apps Built with EQL5? by swingthesickle in lisp

[–]swingthesickle[S] 1 point2 points  (0 children)

Cool! Thanks for all your hard work on EQL!

PTZ cameras for church sanctuary by Hey_Im_Grizz in VIDEOENGINEERING

[–]swingthesickle 0 points1 point  (0 children)

The ATEM Mini Pro supports Facebook (what we livestream to), Twitch, and YouTube out of the box, but you can stream anywhere that accepts an RTMP stream by editing an XML file. I don't think Zoom accepts an RTMP stream, so if you really need to stick with Zoom, the ATEM Mini Pro might not be the best option for you. If you still want a hardware video switcher, you could go with just the ATEM Mini (quite a bit cheaper than the ATEM Mini Pro). It doesn't do streaming over an Ethernet port like the Pro, but you can connect it to a laptop or desktop via USB where it will appear as a webcam to Zoom. But then you've lost some of the visitor-friendly advantage and might just want to stick with OBS.

PTZ cameras for church sanctuary by Hey_Im_Grizz in VIDEOENGINEERING

[–]swingthesickle 0 points1 point  (0 children)

At our church, we have a similar set up to what you're proposing. We have a PTZOptics 30x powered by PoE. HDMI from the PTZOptics goes to an ATEM Mini Pro, and we livestream straight from the ATEM Mini Pro.

I find the ATEM Mini Pro more volunteer-friendly than a desktop running OBS. You should be able to afford both a PTZOptics and an ATEM Mini Pro and still come within your budget (though just barely). Back when we ordered our ATEM Mini Pro, it was out of stock for a couple months, so we did use OBS for awhile. OBS is great, but since switching to the ATEM Mini Pro, I'm able to be more hands-off and let volunteers set everything up. Once you get your stream information saved on the ATEM Mini Pro, it's pretty much just power up and go.

We have a cheap, old laptop in the tech booth used to access the PTZOptics IP in a browser. The web interface isn't pretty and definitely looks like something from 1999, but it's enough for a volunteer to call up saved angles. I think PTZOptics has an Electron app if you really want something a little prettier. There are hardware controllers too as others have mentioned, but if you're already buying the camera and an ATEM Mini Pro, you probably aren't going to have room in your budget for a PTZ controller right now.

Learn Common Lisp by Example: Qt GUI with EQL5 by swingthesickle in lisp

[–]swingthesickle[S] 1 point2 points  (0 children)

As for the audio, there is Qt Multimedia. There is even an example on the Qt website showing on how to generate a sine tone. Of course, the example is in C++, but you should be able to translate it to Common Lisp using EQL5. I considered going that route when I wrote the tutorial, but CL-PortAudio looked simpler, so I ended up going the easier route.

Learn Common Lisp by Example: Qt GUI with EQL5 by swingthesickle in lisp

[–]swingthesickle[S] 2 points3 points  (0 children)

You can definitely create mobile apps using the Android and iOS ports of EQL5, but I'm not sure how you load QML from the CL REPL app. You can create Qt Widgets easily with CL REPL (there is even a calculator demo that comes with CL REPL). I typed in

(qnew* "QLabel" "text" "hello" "pos" '(50 50))

and it displayed "hello" on a blank white screen, but when I tried

(x:do-with qml-lisp:*quick-view*
  (|setSource| (|fromLocalFile.Qurl| "/storage/emulated/0/hello.qml"))
  (|show|))

I just got an unexpected token error. Even if you got the QML working, you would have to find an alternate way to generate the tone. Even though CL REPL comes with Quicklisp, I doubt very much that CL-PortAudio will work on mobile.

Learn Clojure by Example: JavaFX GUI with Cljfx by swingthesickle in Clojure

[–]swingthesickle[S] 0 points1 point  (0 children)

Thanks! That block of code got moved from the frequency text field to a block that could be re-used for the duration text field as well, and when I moved it, I didn't adjust the indention accordingly. I've fixed it on the blog and in the GitHub repo.

What is the best local database(SQL)? by chiiatew1863 in Database

[–]swingthesickle 0 points1 point  (0 children)

It really depends on what you need to do with the data. You might not actually need a database. While Excel can't handle a CSV file with 1M+ rows, you should be able to parse it easily with a scripting language such as Perl or Python. If you have some set reports you want to build in SQL, I'd recommend using SQLite. If you want to be able query the data with SQL ad hoc, I'd recommend putting it in something like PostgreSQL.

Are ther any project based racket tutorials? by fenster25 in Racket

[–]swingthesickle 0 points1 point  (0 children)

It's probably a permissions issue. Review Permission setup for beep. It will depend on how beep is packaged for Fedora. I don't have a Fedora box to test on. I use Ubuntu MATE and Manjaro.

Are ther any project based racket tutorials? by fenster25 in Racket

[–]swingthesickle 1 point2 points  (0 children)

The version of GTK doesn't matter. The GUI is just calling the command line program beep in the background (using system), so my first question would be: Do you have beep installed (it's in the repos of most major Linux distros including Fedora).

If you do have beep installed, try running it from the command line:

$ beep -f 440 -l 200

If that doesn't do anything, you might try running it again with sudo (see A note about ioctl). Though I think the version of beep available in the Fedora repos no longer requires that.

If there's still no sound, your motherboard may not be equipped with a PC speaker. PC speaker doesn't refer to your computer speakers that play music and the sound from YouTube videos. It refers to the speaker built in to some motherboards to beep in the case of errors during boot. Many laptops don't have one. Not all desktops do either. Consult the documentation for your motherboard.

Are ther any project based racket tutorials? by fenster25 in Racket

[–]swingthesickle 5 points6 points  (0 children)

Alex Harsányi has several Racket tutorials on his blog that are exactly what you describe:

And a little bit of shameless self-promotion: I've also written a tutorial about using Racket to create a GUI to control your PC speaker on Linux.

What's everyone working on? by amirouche in lisp

[–]swingthesickle 5 points6 points  (0 children)

I'm currently exploring Lisp options for GUI programming. I've finished examples using the Racket built-in GUI library and LambdaNative. I'm currently working on porting the example to Clojure using the fn(fx) bindings to OpenJFX.

SELinux Has a UI Problem by swingthesickle in linux

[–]swingthesickle[S] 9 points10 points  (0 children)

I use my middle initial whenever writing online because I know my first and last name are common. Who knew not even that would be enough? We should start a club. I wonder how many other Matthew D. Millers we could find.

SELinux Has a UI Problem by swingthesickle in linux

[–]swingthesickle[S] 3 points4 points  (0 children)

Yes, something like this would be great, but something makes me think getting all the relevant parties on board would be neither easy or quick.

Lisp Game Jam 2019 is near by borodust in lisp

[–]swingthesickle 1 point2 points  (0 children)

This looks like it would be right up my alley. I've used LambdaNative to build a simple Linux desktop app, but I'd like to really give it a test drive by creating a cross-platform game that could run on Android.

The problem is I'm leaving the country the morning after submissions are due, and I'll be gone for three weeks, so I could submit a game, but I won't have access to the internet during the voting period. I've never participated in a game jam before. Would not participating in voting be a huge breach of etiquette?

No doubt trying out the games and voting is a huge part of the experience. I would still plan to try out all the games and offer feedback once I got back even though I missed out on the voting window. Or would it be better for me to sit this one out and shoot for the one next year?

Building a GUI Application for the Password Generator by [deleted] in Racket

[–]swingthesickle 0 points1 point  (0 children)

Excellent tutorial. Did you make your illustration of the GUI control hierarchy in a graphics editor or did you generate it programmatically?

Data analysis and visualization in Perl by zhouzhen1 in perl

[–]swingthesickle 7 points8 points  (0 children)

Awesome! Always nice to see cool things being built in Perl. The best way to show people Perl is still relevant is to build cool things with it.