Episode: 1113 Title: HPR1113: TermDuckEn aptsh - screen - guake Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1113/hpr1113.mp3 Transcribed: 2025-10-17 19:10:13 --- Howdy folks, this is 5150 for Hacker Public Radio. I recently discovered the AppShell, a pseudo shell which gives users of distributions which use app for package management quick access to the functionality of AppDash yet. The command to get into the shell is actually Alpha, Papa, Tango, Sierra Hotel. You should find AppShell in their repositories of Debian-based distros. Once installed, you can launch AppShell's root from the command link, i.e. pseudo-appshell. One of the drawbacks of installing software from Terminals is that sometimes you don't know the exact name of the package you want to install. From the AppShell prompt, ls plus search string will show all the packages that have that string in their names. You can then type install plus a partial package name and use tab completion to finish the instruction. The function of the update and upgrade commands are self-explanatory. Unfortunately, you can't string them together on the same line, like you can in Bash. i.e. pseudo-appdash-get-update-ampersand-ampersand-sudo-appdashget-y-safe-upgrade. Instead, you can use the backtick key to put AppShell into Q mode. In Q mode, you can enter commands 1 by 1 to be launched in sequence at a later time. To bring your system up to date, you could run, hit backtick, and the APTSH prompt will change to asterisk-based APTSH, and you can type in update, hit return, and type in upgrade, and hit return, and hit the backtick again to close the Q mode. And then from the regular appshell prompt, type in Q-comment-safe-yes, space-yes. Backtick toggles the Q entry, and Q-comment runs whatever is in the queue. Q-comment-safe tells AppShell to answer in the affirmative to any queries from commands executed in the queue in much the same way, as appdash-get-space-y-space-safe-upgrade confirms software updates without user interaction. And fortunately, I must be using AppShell wrong, because I can't ever get that to work. I've done Q-comment-safe-y, I've done Q-comment-safe-yes. None of them seem to actually work in installing updated packages where you're prompted to confirm whether or not you want to install. AppShell is capable of other app-related tasks, but I think I've covered the most useful ones. The trouble with running AppShell is that unless you start an internal when you start computer and leave it running all day, as opposed to opening it as a new shell within your terminal every time you want to do an update or an install, despite the convenience of the package name search and tab completion, it's really not going to save you any key strokes. With that in mind, I start looking for ways to have the app-shell available at a key stroke. And we're going to leave the wisdom of having a shell open with a subset of root privileges for another day. I had Gwake installed, but rarely used it because I usually have multiple terminal tabs open at once, since I'm logged into my server remotely. And actually, I'd forgotten that Gwake supports tab terminals quite well, really. You can open a new tab with Shift-Control T in Gwake, and then switch between open tabs with Control-Page Out or Control-Page Down, or by clicking Session buttons that appear at the bottom of the Gwake window. I'd forgotten this until I started doing research on this story. Since this revelation kind of ruins my story, we're going to forget about tab terminal support in Gwake and not mention it again. I'm also going to assume that everybody is familiar with Gwake. If not, suffice it to say, Gwake is a terminal that pops down on the top third of the screen when you hit a hotkey, F12 being the default. It returns to the background, with the session still running when you press F12 again, or when you click the lower part of the desktop. It is patterned after the command shell in the game Quake that lets you input diagnostic and cheat codes. Hence the name. I wasn't using Gwake as a terminal anyway, so I wanted to see if I could make it run app-shell by default. I found you could access Gwake's graphical configuration manager by right-clicking inside the open Gwake terminal and selecting preferences. On the first preferences tab, I found command interpreter. But since app-shell is only a pseudo-shell, it isn't found in the drop-down list. However, one option was screen, which would give me a way to run multiple terminals that I thought Gwake lacked. Next, I'd look up how to configure screen. I figured there must be a way to make screen run, app-shell in one session by default, and I found it. In the show notes, I've included a version of my .screen RC file for my home folder, which I set up with a help with an article from the online Red Hat magazine, link in the show notes. And I am not going to, the comp of my .screen RC is right there in the show notes. I'm not going to try to read it off, but I will try to describe as fast I can, the content. The two lines have hard status command, and they are used to set up the screen status line. The first puts it at the bottom of the terminal, it says hard status face always last line. And the second sets up what is going to appear on the status line, and it included is a host name and date, and an indicator that lights up to show which screen window you're looking at. Below the comment, pound default screens, sets up the screen sessions that are opened by default. The first line opens up a regular terminal, named shell one, and that line greens screen face dash t, face shell one, face or tab zero. The second window opens up a window called aptash shell, and that's how it is identified in the aforementioned status line, and launches apt shell, and the format of that command is screen space dash t, space aptash shell, space one, space pseudo, space apt shell. I'm sure you've already found them that the format of the lines in the pound default screen section goes long screen t to open up a new terminal window in end screen, and then give that screen a name or designation that's going to appear in the status line and be highlighted when you have that screen session opened, so just stringing it could be anything. And then the terminal window number started with zero, so first line zero, second line is one. And then finally, if you're going to have, if you are going to buy default, launch a bash command or script in that terminal window, that comes last. My last two screen windows that I have opened by default open sales chest sessions into other computers. The first one is SSH space 5150 server, which is an alias to my server, and I was able to set up thanks to Ken Fallon and his excellent HPR on SSH and how to modify your, in your home folder, your dot SSH slash config file. And then my second one, if it's up and running, it'll open a shell session into my Fedora laptop. And that command is SSH space 5150 at redbook. I still, when I launch screen by hitting f12 first time to launch and launch weight, which launches screen, I still have to cycle through my screen windows and type in passwords for whatever resources they're brought up by default, a pseudo in case of the running app shell session, and SSH passwords for the remote sessions into other computers. But the configuration file could be set up to launch any bash script or bash command by default. The cited article didn't include any more configuration tips, so I'm certain there must be ways to set other screen options such as split windows by default. Since I'm also running screen in the remote session on my server, I have to remember there is a command prefix for additional layers in screen, and that is control A followed by another A. Here I go. If I wanted to move to the next window in a screen session running under wake on my local PC, the command would be control A and then in. But if I'm in the screen session that's open to an SSH session to an open terminal on my server, then the command sequence is would be control A, then just regular A by itself. And then in after that, to move to the next screen window on the server. Well, that's how I learn to run app shell inside screen inside wake. I've been 5150 for hacker public radio. I can be contacted at 5150 at LinuxVacement.com or by using the contact form on the big red switch dot triple gardens dot com. You have been listening to Hacker Public Radio at Hacker Public Radio does our we are a community podcast network that releases shows every weekday Monday through Friday. Today's show, like all our shows, was contributed by a HPR listener by yourself. If you ever consider recording a podcast, then visit our website to find out how easy it really is. Hacker Public Radio was founded by the digital dot pound and the economical computer cloud. HPR is funded by the binary revolution at binref.com or binref projects across the sponsored by luna pages. From shared hosting to custom private clouds, go to luna pages dot com for all your hosting needs. Unless otherwise stasis, today's show is released on your creative commons, attribution, share