So, I wanted to be able to do stuff with BASIC, but there’s no BASIC compilter working out of the box (despite the website saying it’s supported, hmm). I installed VS Code and persuaded fbc to install from a tarball, and then found some unmet dependencies. No problem, I’ll just apt install them.
After a minute, the bugger dropped the GUI. No problem, I’ll just go to another tty and reboot.
So… what’s the deal? Quite apart from BASIC obviously not being supported (really CPI should edit the front page and stop claiming the DevTerm supports software it doesn’t), I’m now looking at having to rewrite my SD card again to get a working system.
Check your /etc/X11/xorg.conf.d directory. The stock OS has proper rotation settings. But since you “persuaded” some tarballs to install, you may need to check what they actually did.
If you want to startx, at least stop the display manager (in your case, systemctl stop lightdm) – I don’t recommend this though. That you cannot login may be related to picking the wrong session (cut off in the rotated view so you aren’t seeing it…)
I’m on ArchLinux but I think Armbian is similar, and it’s got a ton of different BASIC environments – yabasic, bas, clibasic, lowres-nx (https://lowresnx.inutilis.com/ , looks interesting, and the author @Timo is also on this forum ) to name a few. Some may require compiling, but always check if there are pre-packaged binaries, if not, then check if there are build scripts tailored for your distribution, and then resort to compiling a tarball.
Not sure how you even got it installed with unmet dependencies but anyway. During your apt install transactions, do you notice significant changes? Like some packages conflict with system default ones so installing them will force the stock OS packages to be removed.
Yatli wrote up an excellent explanation of how you trashed your system. But the most important thing he said is that basic is a binary that interprets the basic script you write. It’s like python. Yatli mentioned a couple packages that you can install via apt that provide a basic interpreter. I know the standard yabasic package is available.
Here’s a simple yabasic session:
cpi@clockworkpi-a06:~$ sudo apt -y install yabasic
[...]
cpi@clockworkpi-a06:~$ yabasic
This is yabasic version 2.89.1,
configured for aarch64-unknown-linux-gnu at Fri Feb 5 10:22:26 UTC 2021
Copyright 1995-2021 by Marc Ihm, according to the MIT License
Enter your program and type RETURN twice when done.
Your program will execute immediately and cannot be saved;
create your program with an external editor, to avoid this.
Type 'man yabasic' or see the file yabasic.htm for more information,
or go to www.yabasic.de for online resources.
10 print "Devterm"
Devterm
cpi@clockworkpi-a06:~$
Also, you mentioned VSCode. VSCode is just a [very fancy] text editor. You don’t need it for basic, and it doesn’t provide a interpreter. It’s also very resource intensive for DevTerm.
Now, trying to repair your existing system…
You can try to issue the command, from a devterm terminal to temporarily correct the screen: $ xrander -o right
For a more permanent solution, you can try to recreate the file that ClockworkPi uses to set the monitor rotation. That file is /etc/X11/xorg.conf.d/10-monitor.conf
I know what BASIC is, I’ve been using it for a long time. I just specifically wanted freebasic because it’s a compiler I use on my Windows boxes, one I know my way around. And I like being able to produce binaries.
Similarly, I know what VS Code is. Again, I wanted that because… well, I wanted it. And it worked fine, VS Code isn’t the issue. I only mentioned it because it was part of the setup routine I’d done.
I might just reflash, it’ll be simpler - and not try and install that again. Be better to just keep to using it for writing and emailing and such.
I’ll have a look, but the tarball I installed shouldn’t have touched the display. It was just the freebasic binaries.
Not being able to login was it refusing to accept my password. Except just logging in on a tty was fine.
I know, I just wanted to have the same compiler I use on my other machines. Uniformity within my ecosystem.
The freebasic install for Linux on arm is distributed as a bag of files with an install shellscript that just copies files to your /usr directory. The program threw an error when I tried to compile a tiny test program, and I looked the error up, looked to be some library missing. The machine borked when I was trying to install that library.
Not being able to login was it refusing to accept my password. Except just logging in on a tty was fine.
Hmm yeah I had a similar issue on my desktop, with lightdm. I thought I forgot the password, ssh’ed in with pubkey, chpasswd, and a few days later got blocked again. Maybe try another display manager like sddm:
There’s got to be a similar way for Armbian to lookup package build scripts.
Some of the deps ( 'libxpm' 'gpm' 'libffi' 'libxrandr' 'mesa') may have clockwork special treatments under Armbian. Cross-check your installation history.
Thanks for this - but I can’t get network access to install another dm if I can’t login to the gui. I’ve not got the inclination to try and remember how to get on wifi through bash. I’m just going to reflash the thing (third time’s the charm?) and not try again to put programming stuff on it. The DevTerm just isn’t made for programming, I can see that now. It’s just a novelty that’s not capable of running anything more than a web browser and basic office utilities, so I’ll just use it for writing. At least LibreOffice works.