![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://lemmy.ml/pictrs/image/q98XK4sKtw.png)
First thing I do on a new laptop is remapping a key I won’t be using much to Insert, which I use all the time :)
System/web/Linux developer
First thing I do on a new laptop is remapping a key I won’t be using much to Insert, which I use all the time :)
What, no websocket-based realtime statistics for number of total, daily and hourly mistypings?
Last 25 years I have been using a couple of different tiling window managers. My main workstations usually have four monitors, accessed by AltGr+number.
I heavily base my workflow on virtual desktops, accessed by Ctrl+number.
Each virtual desktop have a specific type of programs on it:
So with this I can access nearly every program with AltGr+number, Ctrl+number which is quite quick. As long as I remember the monitor I placed it on, I always know which virtual desktop.
I use chained keyboard shortcuts for window manager shortcuts, here: https://files.ahall.se/images/i3-keybindings.svg (old one, this has grown a bit…)
The chaining allows me to easier remember shortcuts with mnemonics, and they are fast enough, especially considering the amount of shortcuts I can scale it to.
There are some exceptions for the most used focus- and window moving operations, as well as for managing a clipboard buffer system. There are too many times when one goes back and forth to copy something, paste it somewhere else and going back for the previous one. So I can copy something, press Ctrl+Shift+3 to put in buffer 3. After a few other copy/pastes, I bring it into clipboard again with Ctrl+Alt+3. This also allows me to for example reload a page I’m working on and login with user/pass easily accessible in buffer 1 and 2, or login to four different network devices again and again without going to a text file and copying one of four passwords each and every time.
I wrote a special session manager via socket for i3 to be able to press Ctrl+number and go to a certain predefined desktop on the current monitor I’m at.
I was made aware of Lemmy through links on reddit, with the whole API horror show.
Also most happy about it, and although I’m still not that active, I’m participating a bit more now. It definitively feels better to contribute to a group effort like Lemmy than to a large corporation that makes me the product.
I’m using ed for small edits when I know exactly that only a certain line needs to be deleted, or a word changed.
I’m horrfied every day at work that copy/paste still is an issue. All my coworkers and customers are still struggling with copying some data, switching to another program, pasting it, switching back, copying some other data, and so on, especially when needing two or three data frequently.
In Windows, a (bad) solution is using win+tab, which literally no one knows about, much less uses.
In Linux (and should be in Windows too), it is trivial to implement buffers (say 0-9) to store and retrieve clipboard data for subseconds access.
Javascript/Preact/Lesscss on frontend with a backend written i Go, using Postgres for data needs. Sometimes with websockets in between if needed.
Phones has been fast enough for me without upgrading to new hardware the last few years.
And with a Fairphone, it is actually feasible to repair and change battery once in a while :)
Somewhere along the lines of 10-15 years?
Author turned TCP/IP off on the server ☺
I have taken up the habit of being at work one-two hours before anyone else.
I get undisturbed, effective work done, and I leave earlier. More work done, more own time with family each day.
I’m still reachable through phone, add can fix most catastrophic problems from home, but that is so seldom occuring that it is OK, and collegues don’t complain about me not being in office after 15:00.
You are completely right about SwitchOS, and it is even more exciting that some models sells in two versions, with the only difference being called CSS* for SwitchOS, or CRS* for RouterOS. And the SwitchOS-enabled model is much cheaper, so customers ordering for themselves almost always pick the wrong one (that is, SwitchOS, which we can’t manage properly in our automations and other software solutions).
My collegues wouldn’t appreciate my shell config in the root account, especially the vi bindings ;)
As long as /bin/sh
isn’t pointing to zsh, you haven’t messed anything up. A lot of public scripts wouldn’t expect to be run under zsh.
If you write your own scripts, I’d say to use zsh, but start it with /bin/zsh
(or whatever resolves to zsh) to be explicit about the fact that it is designed for zsh and nothing else. Most scripts written aren’t going to be distributed to hundred of thousands of systems, but at most used in a handful of systems. No point in not enjoying some things zsh does better in scripts.
A lot of systems have other dependencies as well, and as long as a system which has scripts in it is specifing zsh along with other dependencies, I wouldn’t see the problem. zsh doesn’t take up much space or introduce other problems just by being installed.
As for the root shell, you can put Defaults env_keep += HOME
in your sudo configuration. That will have sudo -s
run your usual zsh with its usual configuration for interactive, daily use. Be aware of any config that shouldn’t be run as root.
sudo -i
will still run the shell root is assigned in /etc/passwd, and everything run as root would function ar expected.
Can only agree on Mikrotik routers. All are using RouterOS, which works the same on all their devices, from routers to switches and access points.
They are relatively cheap for the capabilites you’re getting. They have their own scripting language, two APIs (their new one is REST-based).
GUI (winbox is recommended, and plays nice with wine. Wouldn’t recommend web interface, just cumbersome) and CLI exists.
They have a lot of builtin functionality, like DHCP server, DNS server with static configuration, and even file sharing. Some models are powerful enough to run Docker images on (yes, that’s builtin…).
We’re running a couple of hundred and don’t have much problem with them.
Depending on what one is doing, placing pv
in between (usually with -s to specify size of data if known in advance) gives a progress bar, with speed and size of data passing through.
Say you have an SQL dump of 1048576 bytes:
cat dump.sql | pv -s 1048576 | mysql somedb
and now you know how far it is instead of just waiting :)
We’re using Ansible for a lot of stuff, with Semaphore as a frontend.
Semaphore has rudimentary support for CI/CD. We don’t need all the bells and whistles of something like Jenkins, and Semaphore is saving us from having yet another software to know and and maintain.
st from suckless all the way. Used it a couple of years now in conjunction with i3. I’m spawning a lot of terminals, doing a few commands and closing them often, so starting quick is a must.
Wrote a small patch that allows me to copy current directory from a terminal instance to primary selection with a keybinding. That allows me to quickly navigate to whatever directory that would be in another terminal or application.
If anyone is using specifically n8n and would like a small backup/change log, I could provide the workflow and the frontend code. A small change of n8n webhook URL is probably only what’s needed to get it running.
The Kame ipsec project (https://www.kame.net) has a turtle image which is animated if visited with an IPv6 address.