Howtos
Creating executable file for python program
Submitted by trendoceangd on Monday 13th of December 2021 04:54:49 PM Filed under
Finally, you have finished your python program and wanted to share someone else.
- trendoceangd's blog
- Login or register to post comments
Printer-friendly version
- Read more
- 32422 reads
PDF version
Migrate google chrome web browser profiles and settings from Windows to Linux?
Submitted by trendoceangd on Sunday 12th of December 2021 12:02:21 PM Filed under
Google chrome is one of the most popular application in the world of browser.
- trendoceangd's blog
- Login or register to post comments
Printer-friendly version
- Read more
- 31557 reads
PDF version
Using Menus For Command Line Programs and Scripts
Submitted by Roy Schestowitz on Sunday 8th of December 2019 02:41:54 PM Filed under
THE holidays are coming (Christmas approaching), so I've taken advantage of some spare time to menu-ise commands that I use frequently. Those commands aren't the mere opening of an application and they often require dealing with input and output (in the command line). So I've created menu.sh
and used dialog
to craft the following menu, e.g. for operations associated with Techrights. I invoke this menu with the click of one button (of the mouse).
Rianne has a similar menu for commands she often runs (which are long and would otherwise need pasting or typing in length). Her menu looks something like this:
Here's the code (bash file) that renders the menu above (it's really that simple!):
#!/bin/bash HEIGHT=15 WIDTH=40 CHOICE_HEIGHT=4 BACKTITLE="Aloha, Rianne" TITLE="Rianne @ Ted" MENU="Choose one of the following options:" OPTIONS=(1 "Start VPN" 2 "REDACTED" 3 "REDACTED" 4 "REDACTED" 5 "REDACTED" 6 "REDACTED" 7 "REDACTED" ) CHOICE=$(dialog --clear \ --backtitle "$BACKTITLE" \ --title "$TITLE" \ --menu "$MENU" \ $HEIGHT $WIDTH $CHOICE_HEIGHT \ "${OPTIONS[@]}" \ 2>&1 >/dev/tty) clear case $CHOICE in 1) echo "You chose Option 1" sh ~/vpn.sh ;; 2) echo "You chose Option 2" REDACTED COMMAND ;; 3) echo "You chose Option 3" REDACTED COMMAND ;; 4) echo "You chose Option 4" REDACTED COMMAND ;; 5) echo "You chose Option 5" REDACTED COMMAND ;; 6) echo "You chose Option 6" REDACTED COMMAND ;; 7) echo "You chose Option 7" REDACTED COMMAND ;; esac
Hopefully this inspires other people out there to do the same. It takes a while to set up, but it's a big time saver over the long run. █
- Roy Schestowitz's blog
- Login or register to post comments
Printer-friendly version
- 43653 reads
PDF version
The Bash Fingertips: Making Your Own 'Information Centre'
Submitted by Roy Schestowitz on Sunday 3rd of February 2019 08:35:34 AM Filed under
FORGET bloated Web browsers. Forget so-called 'social' media (I call it social control media). They're not efficient, they eat up a lot of memory and CPU cycles, and the interfaces are not consistent (across sites). They're sufficiently distracting and they have ads. They erode privacy. They don't scale well; neither for an aging system (my laptop turns 10 in a few months) nor for users. GUIs are good in particular scenarios, but when the same things are repeated over and over again one might as well set up scripts, automating things and tailoring one's own interfaces, which is easy to achieve (relatively fast and simple) in the command line. It's also more accessible, e.g. over SSH. The pertinent tools are already out there (available for download/installation from repositories), they just need to be put together and programming skills aren't required, just batching in a bash file.
Some years ago I 'developed' a little script (I've been scripting since I was about 12). I called it getswap-sorted.sh
and it just ran another script that helped me see what applications use the swap (and how much of it). For the sake of speed I like to restart applications that heavily use swap (i.e. depend on magnetic disk operations). I don't have much RAM. I never had more than 2 GB. getswap-sorted.sh
just called out ./getswap.sh | sort -n -k 5
and getswap.sh
comes from Erik Ljungstrom. Here it is:
#!/bin/bash # Get current swap usage for all running processes # Erik Ljungstrom 27/05/2011 SUM=0 OVERALL=0 for DIR in `find /proc/ -maxdepth 1 -type d | egrep "^/proc/[0-9]"` ; do PID=`echo $DIR | cut -d / -f 3` PROGNAME=`ps -p $PID -o comm --no-headers` for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'` do let SUM=$SUM+$SWAP done echo "PID=$PID - Swap used: $SUM - ($PROGNAME )" let OVERALL=$OVERALL+$SUM SUM=0 done
The output of getswap-sorted.sh
would be something like this:
PID=1559 - Swap used: 16472 - (x-terminal-emul ) PID=21980 - Swap used: 16648 - (kwalletd5 ) PID=25548 - Swap used: 16704 - (konversation ) PID=631 - Swap used: 19336 - (kded5 ) PID=23817 - Swap used: 50048 - (pidgin ) PID=23923 - Swap used: 180312 - (thunderbird )
This helps me see which application/process number uses swap and to what degree. It's sorted by the amount of swap taken and the PID helps when I just want to kill a process from the command line (some are small and obsolete anyway).
My script, however, grew bigger over time. I added more things to it, eventually binding it to a special (fifth) mouse key, using xbindkeys
-- an immensely valuable and powerful program I've used since around 2004. Extra mouse buttons always seemed worthless (anything more than three), but that's just because there was no program I needed to open or action I needed to invoke often enough. Over time I found that keeping a new terminal one click away (fourth button) and another special terminal also a click away improved my workflow/productivity. I just needed to invest some time in tailoring it. I ended up opening, temporarily, a terminal window with important information displayed, such as weather, disk space (I'm always near the limits), swap usage (I have only 2GB of RAM), uptime, real-time football scores etc. Change of wallpapers was lumped in too, for good measure...
For football tables/scores use one of the following 1) livescore-cli
2) soccer-cli and 3)
football-cli
.
Sadly, the above CLI football scores' tools got 'stolen' by Microsoft and need to isolate themselves GitHub, in due cource/time. I use the first of the three as it suits my needs best and does not require an API key.
The output looks like this:
... Fetching information from www.livescore.com ... Displaying Table for Barclay's Premier League ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Barclay's Premier League TABLE ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ LP Team Name GP W D L GF GA GD Pts -------------------------------------------------------------------------------------------------- 1 Liverpool 24 19 4 1 55 14 41 61 2 Tottenham Hotspur 25 19 0 6 51 24 27 57 3 Manchester City 24 18 2 4 63 19 44 56 4 Chelsea 25 15 5 5 45 23 22 50 5 Arsenal 24 14 5 5 50 33 17 47 6 Manchester United 24 13 6 5 48 35 13 45 7 Wolverhampton Wanderers 25 11 5 9 33 32 1 38 8 Watford 25 9 7 9 33 34 -1 34 9 Everton 25 9 6 10 36 36 0 33 10 AFC Bournemouth 25 10 3 12 37 44 -7 33 11 Leicester City 24 9 5 10 30 30 0 32 12 West Ham United 24 9 4 11 30 37 -7 31 13 Brighton & Hove Albion 25 7 6 12 27 36 -9 27 14 Crystal Palace 25 7 5 13 26 33 -7 26 15 Newcastle United 25 6 6 13 21 33 -12 24 16 Southampton 25 5 9 11 27 42 -15 24 17 Burnley 25 6 6 13 26 46 -20 24 18 Cardiff City 25 6 4 15 22 46 -24 22 19 Fulham 25 4 5 16 25 55 -30 17 20 Huddersfield Town 25 2 5 18 13 46 -33 11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ LP = League Position GP = Games Played W = Wins D = Draws L = Lose GF = Goals For GA = Goal Against GD = Goal Differences -------------------------------------------------------------------------------------------------- Champions League Champions League qualification Europa League Europa League qualification Relegation ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Real-time scores (when matches are on):
... Fetching information from www.livescore.com ... Displaying Scores for Barclay's Premier League ---------------------------------------------------------------------------- Barclay's Premier League SCORES ---------------------------------------------------------------------------- January 29 FT Arsenal 2 - 1 Cardiff City January 29 FT Fulham 4 - 2 Brighton & Hove Albion January 29 FT Huddersfield Town 0 - 1 Everton January 29 FT Wolverhampton Wanderers 3 - 0 West Ham United January 29 FT Manchester United 2 - 2 Burnley January 29 FT Newcastle United 2 - 1 Manchester City January 30 FT AFC Bournemouth 4 - 0 Chelsea January 30 FT Southampton 1 - 1 Crystal Palace January 30 FT Liverpool 1 - 1 Leicester City January 30 FT Tottenham Hotspur 2 - 1 Watford February 2 FT Tottenham Hotspur 1 - 0 Newcastle United February 2 FT Brighton & Hove Albion 0 - 0 Watford February 2 FT Burnley 1 - 1 Southampton February 2 FT Chelsea 5 - 0 Huddersfield Town February 2 FT Crystal Palace 2 - 0 Fulham February 2 FT Everton 1 - 3 Wolverhampton Wanderers February 2 FT Cardiff City 2 - 0 AFC Bournemouth February 3 15:05 Leicester City ? - ? Manchester United February 3 17:30 Manchester City ? - ? Arsenal February 4 21:00 West Ham United ? - ? Liverpool ---------------------------------------------------------------------------- ---------------------------------------
Now putting it all together:
feh --bg-fill --randomize /media/roy/c3fd5b6e-794f-4f24-b3e7-b4ead3722f11/home/roy/Main/Graphics/Wallpapers/Single\ Head/natgeo/* & livescore -t bpl ./getswap.sh | sort -n -k 5 curl -4 http://wttr.in/Manchester swapon --summary | grep sda2 df | grep sda1 uptime sleep 10 livescore -s bpl sleep 40
The first line is feh
choosing a wallpaper at random from a collection of award-winning National Geographic photographs. The options and the underlying parameters are self-explanatory.
The football league's table is then shown.
Next, after about 10 seconds of processing, a list of processes will show up based on swap usage (as described above)
The weather at home (Manchester) will then be shown, with colour. Right now I get:
Weather report: Manchester \ / Sunny .-. -5--2 °C ― ( ) ― ↑ 9 km/h `-’ 10 km / \ 0.0 mm ┌─────────────┐ ┌──────────────────────────────┬───────────────────────┤ Sun 03 Feb ├───────────────────────┬──────────────────────────────┐ │ Morning │ Noon └──────┬──────┘ Evening │ Night │ ├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤ │ \ / Partly cloudy │ .-. Light drizzle │ _`/"".-. Light rain sho…│ Mist │ │ _ /"".-. -4-0 °C │ ( ). -2-3 °C │ ,\_( ). 1-3 °C │ _ - _ - _ - 0-3 °C │ │ \_( ). ↑ 12-20 km/h │ (___(__) ↑ 17-26 km/h │ /(___(__) ↗ 7-14 km/h │ _ - _ - _ ↑ 9-17 km/h │ │ /(___(__) 20 km │ ‘ ‘ ‘ ‘ 20 km │ ‘ ‘ ‘ ‘ 16 km │ _ - _ - _ - 13 km │ │ 0.0 mm | 0% │ ‘ ‘ ‘ ‘ 0.4 mm | 83% │ ‘ ‘ ‘ ‘ 0.4 mm | 65% │ 0.0 mm | 0% │ └──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘ ┌─────────────┐ ┌──────────────────────────────┬───────────────────────┤ Mon 04 Feb ├───────────────────────┬──────────────────────────────┐ │ Morning │ Noon └──────┬──────┘ Evening │ Night │ ├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤ │ .-. Light drizzle │ _`/"".-. Patchy rain po…│ Cloudy │ Cloudy │ │ ( ). 2-6 °C │ ,\_( ). 3-7 °C │ .--. 1-4 °C │ .--. -2 °C │ │ (___(__) → 16-26 km/h │ /(___(__) → 20-27 km/h │ .-( ). → 13-23 km/h │ .-( ). ↗ 9-16 km/h │ │ ‘ ‘ ‘ ‘ 14 km │ ‘ ‘ ‘ ‘ 18 km │ (___.__)__) 20 km │ (___.__)__) 20 km │ │ ‘ ‘ ‘ ‘ 0.3 mm | 88% │ ‘ ‘ ‘ ‘ 0.3 mm | 88% │ 0.0 mm | 0% │ 0.0 mm | 0% │ └──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘ ┌─────────────┐ ┌──────────────────────────────┬───────────────────────┤ Tue 05 Feb ├───────────────────────┬──────────────────────────────┐ │ Morning │ Noon └──────┬──────┘ Evening │ Night │ ├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤ │ \ / Partly cloudy │ Overcast │ Overcast │ .-. Light drizzle │ │ _ /"".-. -1-3 °C │ .--. 2-6 °C │ .--. 6 °C │ ( ). 1 °C │ │ \_( ). ↖ 19-31 km/h │ .-( ). ↑ 23-33 km/h │ .-( ). ↑ 24-40 km/h │ (___(__) ↑ 24-40 km/h │ │ /(___(__) 20 km │ (___.__)__) 19 km │ (___.__)__) 8 km │ ‘ ‘ ‘ ‘ 9 km │ │ 0.0 mm | 0% │ 0.0 mm | 0% │ 0.0 mm | 0% │ ‘ ‘ ‘ ‘ 0.3 mm | 0% │ └──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
After this I am shown general memory usage and disk usage (for a particular partition) along with uptime thusly:
/dev/sda2 partition 2097148 381128 -1 /dev/sda1 84035088 77299588 2443660 97% / 08:03:28 up 116 days, 12:36, 7 users, load average: 1.70, 1.40, 1.26
It will close on its own after I see what needs seeing, owing to the sleep
command. It saves me the clicking (required to then close the window); it just fades away or 'expires', so to speak (until the next time the mouse button gets pressed). █
- Roy Schestowitz's blog
- Login or register to post comments
Printer-friendly version
- 116023 reads
PDF version
How to rename files in bulk
Submitted by chickenkinwing on Thursday 14th of August 2014 02:10:55 AM Filed under
Consider this common scenario. A directory contains multiple files that are named using a common convention: for example, image-001.png, image-002.png, image-003.png, etc. You want to rename the files to, say, upload-001.png, upload-002.png, upload-003.png, etc.
The coders among us can write a bash script to automate the process. For expedience, this post shows how to use the built-in rename command to achieve the same goal.
- chickenkinwing's blog
- Login or register to post comments
Printer-friendly version
- Read more
- 32146 reads
PDF version
Fixing OpenSuse’s Dog Awful default fonts…
Submitted by fieldyweb on Sunday 7th of July 2013 11:27:56 AM Filed under
Lets not beat around the bush here, the default font rendering in OpenSuse and the default font do not an OS fit for reading make.. this can be fixed however..
Love or hate Ubuntu, out of the box it has one of the best font rendering setups of any distro and considering how much time we spend on our PC’s setting your fonts up correctly is one less headach, literally.
I’m not sure how much of these instructions I got right, however after a reboot the screen text does at least look better..
- fieldyweb's blog
- Login or register to post comments
Printer-friendly version
- 35150 reads
PDF version
Stopping Screen Flickering on Ivy Bridge Laptops using Linux
Submitted by fieldyweb on Sunday 7th of July 2013 10:46:28 AM Filed under
This is a solution to a problem which has been dogging me on every version of Linux I install on the Acer Aspire S3. I'm hoping it will help someone.
Forgot your Ubuntu Password? All is not lost.
Submitted by fieldyweb on Wednesday 9th of January 2013 09:43:51 PM Filed under
It’s always a pain when you forget your password, and i’ve often done it on an Ubuntu install. All however is not lost as a stock Ubuntu install its quite easy to reset your password
- fieldyweb's blog
- Login or register to post comments
Printer-friendly version
- Read more
- 31281 reads
PDF version
Creating an AD Server for Free using Ubuntu and Samba
Submitted by fieldyweb on Saturday 29th of September 2012 12:23:04 PM Filed under
While being a huge fan of the GNU/Linux OS I do also live in the real world which means using Active Directory Domain Controllers and Windows networks. this week however I’ve had to build for a project a stand alone AD network. This got me thinking to a project I built for a school 6 uears ago which I did the same thing with Samba on Fedora.
- fieldyweb's blog
- Login or register to post comments
Printer-friendly version
- Read more
- 24723 reads
PDF version
Remote Application launching using X11 and SSH.. Oldie but a goodie..
Submitted by fieldyweb on Sunday 8th of July 2012 04:47:13 PM Filed under
Using WordPress as my central blog platform I’m very happy with it, not much to complain about, some good features, it’s very social and some nice themes. However it’s got me thinking not so much my content i’m now having a “problem” to manage it’s dealing with the replies
- fieldyweb's blog
- Login or register to post comments
Printer-friendly version
- 22421 reads
PDF version

More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
digiKam 7.7.0 is released
After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release.
| Dilution and Misuse of the "Linux" Brand
|
Samsung, Red Hat to Work on Linux Drivers for Future Tech
The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world.
Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility.
| today's howtos
|
Recent comments
47 weeks 6 days ago
47 weeks 6 days ago
47 weeks 6 days ago
47 weeks 6 days ago
47 weeks 6 days ago
48 weeks 2 hours ago
48 weeks 2 hours ago
48 weeks 14 hours ago
48 weeks 14 hours ago
48 weeks 14 hours ago