For what? There is no arguing that Microsoft has a firm grip on infrastructures inside many corporations, at least when it comes to IDPs and other cloud infrastructures. One of the systems they use is “Privileged Identity Management.” I will not attempt to describe it here. Just know that many admins need to use it very, very often to work. The UI/UX on the Entra/Azure portal is, however, very infuriating in many ways. If you know, you know.| macOS & (open-source) Software
The problem Clearing the screen on the terminal is quite finicky. The behaviour on some emulators (Ghostty, Kitty & co.) is massively different than say on iTerm2 or the macOS built-in Terminal.app. You see, I tend to use the command clear, which is aliased to c in my case. Now, I like to keep the scrollback buffer intact. Using clear, the scrollback is only preserved so far by iTerm2 and the Terminal.app. In all the other emulators that I’ve tried so far, the scrollback gets cut off – fr...| macOS & (open-source) Software
My Issue In an older post I wrote down my solution for saving multiple attachements at once without a completion from Mu4e. The reason being that my the bulk of use cases are to save all attachments at once. In the rare cases I want to select an attachments out of many I can still use mu4e-view-mime-part-action. Now I have encountered a few breaking updates of Mu4e and for a while I have been dealing with another one. Granted, You are not supposed to use private function in an Emacs package/l...| macOS & (open-source) Software
Intro In the name of bringing the kitchen sink inside of Emacs, I manage my mails here as well. Mu4e is my choice of a mail client. As a quite opinionated fellow when it comes to my tools, I tend to change stuff a lot. This includes extending functions and commands that are delivered with Mu4e by default. Or even creating new ones. Barring changes in Mu4e or related updates, these functions should remain relevant. However some where created a good while ago. Which in turn might result in “o...| macOS & (open-source) Software
Hello there! Today, I want to delve into my custom Org Agenda settings, shedding light on how my workflow compares to the default configurations. Why Customize Org Agenda? The default Org Agenda in Emacs is powerful, but with a few tweaks, it can be tailored to fit your personal workflow like a glove. Here’s a peek into my settings and why they make a difference. Cleaner and Clearer Layout First up, I’ve removed tags from the agenda view:| macowners.club
Intro I spend quite a lot of time of my day in Emacs, which includes reading articles, watching videos, listening to podcast and more from all sort of sources. These things get aggregated into Elfeed. I have got a particular way of navigating and consuming the content, which is why I had to use some custom functions. Some are stolen and bent to my liking, some are straight forward and some are just plain ugly. All do the job however. The functions timu-elfeed-load-db-and-open I always wand to...| macOS & (open-source) Software
Intro The ssh agent on macOS can add your private key and the passphrase of this to the keychain (“Keychain Access.app”). This is nifty because you unlock the access with your normal login into the macOS user. Meaning you can use your key without typing in the passphrase for every session. Keep in mind that you gain some comfort/convenience at the cost of some security. How-To Tell SSH to use the keychain Add the following to the ~/.ssh/config file: Host *UseKeychain yesAddKeysToAgent yes...| macOS & (open-source) Software
Spring cleaning Let me start by saying this. Over the time I have accumulated some cruft (in this case function) that needed to be gone. Partly because some of the functionalities are built in and partly because my solutions were honestly nonsensical. Now I have cleaned up the modules at issue today and we can go on talking about the remaining functions that are still of use to me. The remaining stuff Windows splitting This are my versions of commands to split windows. The built in versions (...| macOS & (open-source) Software
The intro Every Emacs user that I know changes the hell out of the look and feel of their UI. I am no different here. The following is a list of the function, that use in my module timu-ui.el. Of course feel free to browse my .emacs.d for context ;). The functions timu-ui-with-face A very simple function to propertize a string with face property lists similar to set-face-attribute. (defun timu-ui-with-face (str &rest face-plist)"Propertize STR with FACE-PLIST."(propertize str 'face face-plist...| macOS & (open-source) Software
File Management There should now be a trend in this series for custom functions (see the last posts for baseline & modules functions). I like things to work my way. This is of course a reasonably easy thing to do using Emacs. With it being extensible and stuff… It is no different with file management using Dired. Dired custom functions timu-dired-up-directory Dired by defaults keeps the old Dired buffer when navigating on the file systems. This causes Emacs to “collect” a bunch of opene...| macOS & (open-source) Software
The reason There are a few things that depend on the context in Mu4e, some of which are mentioned in the documentation… It can be useful to switch between different sets of settings in Mu4e; a typical example is the case where you have different e-mail accounts for private and work email, each with their own values for folders, e-mail addresses, mailservers and so on. Personally I need to be in the right context since I use multiple accounts in my setup. For instance: The right sender needs...| macOS & (open-source) Software
Modules The module timu-bits.el in my Emacs configuration is the first to loaded after the init file. Why? It handles packages and the proper loading of all other modules. Commands and functions timu-bits-install-packages I quite like the way Emacs Prelude handles automatic package installation. This means of course stealing some code here. What I did not like was the fact that this is split into several functions. I reworked this into one single function. This checks whether the packages in ...| macOS & (open-source) Software
What for? An extensible, customizable, free/libre text editor […] What that means for most users – me included – is that you can make Emacs yours. And part of this is adding custom functions. This might be because there is a functionality missing or just because the builtin way of doing stuff doesn’t compute the same way my head does. You will be hard pressed to find an Emacs init.el without custom functions. And this is no different with mine. XKCD - Workflow In this and a few follow...| macOS & (open-source) Software
Yet another Emacs theme? We are talking about GNU Emacs here. GNU software are “Supported by the Free Software Foundation” and the FSF is a proponent of free software. Since one of the corner stones of free software is contribution I didn’t want to just consume Emacs. Now I am no wizard in writing Emacs Lisp. Far from it. However I wanted to create a few packages that might be of use to me and to some other people – how ever little the number is. Creating a theme seems a good startin...| macOS & (open-source) Software
Why? Look… If you haven’t been living under a rock, you’ve probably noticed that ChatGPT is a hot topic on the internet. Rightfully so, if you ask me. This thing is amazing. I got no words. I am not going to explain it because I do not feel like I am the right person to do so. Just visit openai.com and see for yourself. However here are a few words from the devs: ChatGPT is fine-tuned from a model in the GPT-3.5 series, which finished training in early 2022. Since I am no wiz kid, when ...| macOS & (open-source) Software
Intro All – probably more – settings for the Dock found in the System Settings.app in macOS can be adjusted using the command line. This is particularly helpful for automation of course. IMHO the following selection of commands is more than enough for most settings one needs. Commands Note:Run killall Dock after any of the commands for the changes to take effect. Dock’s Position # Possible options 'bottom', 'left' or 'right'defaults write com.apple.dock orientation bottom Dock size # In...| macOS & (open-source) Software
The “Why” One still need to create a bootable USB drive from an ISO from time to time. Mostly to install an OS from the drive. Now there are quite a few GUI Apps (e.g. Etcher) to facilitate that. However I see no need to install an application, that I might only need every other moon. The solution is to use macOS built-in tools. In this case a few command line utilities. The “Who” find the USB device diskutil list The output on my machine is (I removed some devices to shorten the code...| macOS & (open-source) Software
Intro This one will show you (and future me) how to change the name of my Mac quickly on the Terminal. We user the command line utility that comes built-in macOS scutil. scutil – Manage system configuration parameters The How-To The relevant portion of man scutil says: --get pref Retrieves the specified preference. The current value will be reported on standard output. Supported preferences include: ComputerName The user-friendly name for the system. LocalHostName The local (Bonjour) host n...| macOS & (open-source) Software
Update 2024-03-10: With the update of Mu4e to 1.12.0 some functions/variables have been deprecated and/or changed. The fix to accommodate those changes can be seen in the following commit: https://gitlab.com/aimebertrand/dotemacs/-/commit/e11b484a9fad11baaaa629857e7ccafd5c8b31f0 Issue By default, when replying or forwarding an email, the signature is put at the end of the email body. This means that it is even below the cited text of the original email. This is a weird behavior since I want t...| macOS & (open-source) Software
Intro This is the first of – hopefully – many posts with brief/short How-Tos and more. Today we are talking about a few methods on how to hide ans reveal files in macOS Finder.app. Show hidden files in the finder Keyboard shortcut The easiest way of showing hidden files/folders in is with a keyboard shortcut. With the Finder focused hit: cmd + shift + . This toggles the visibility of hidden files. Command line The second method – rather more useful in automation and scripting – is on ...| macOS & (open-source) Software
EDIT - 2022-06-25: I got some notes on Reddit by the ox-hugo dev (u/kaushalmodi) regarding some information in this post. I would be remiss of course if i didn’t mention theme here. See the thread on Reddit. Objective Quite simple really. I want to write my blog and publish it without leaving Emacs. This post is my documentation – for me and whoever might be interested – of how I go about achieving this. Read on! Hugo Hugo is one of the most popular open-source static site generators. W...| macOS & (open-source) Software
Intro Capture lets you quickly store notes with little interruption of your work flow. Org’s method for capturing new items is heavily inspired by John Wiegley’s excellent Remember package. The Org Manual – 10.1 Capture Need I use Emacs for recording almost anything notes, stream of conscience, interesting tidbits from the internet, documentations, To-Dos & more. Which in turn means that I sometimes want to quickly jot down any of the above and then go on with my day. As we all know fre...| macOS & (open-source) Software
Reason Let’s be honest as Emacs users. Sometimes a fully fledged browser experience or display of content is called for and – dare I say – superior. Be it for either displaying dynamic content, (moving) images, well designed websites and the sort. For that reason we sometimes need to go to a browser. This however means a possibly unwanted context switch and worse of all leaving Emacs. In comes the Xwidgets framework. This allows appropriate packages to implement WebKit Widgets. Meaning ...| macOS & (open-source) Software
I want to create a context menu item in Finder.app to open selected items with Emacs. So why not document it for others to see. Might be instructive for some as well. Open the Automator.app. Create a new document of the type Quick Action. On the right side of the window select files or folders and Finder.app. On the left side select Run Shell Script action and drag it onto the canvas to build the workflow. In the Run Shell Script step change the Pass input to as arguments. With the following ...| macOS & (open-source) Software
But why though? macOS has arguably the best looking, most succinct and most user friendly GUI in all the OS commonly used on personal computers. With this comes a bunch of fantastic GUI based tools for everything – including a lot for emailing. The following list is but a selection of some. Mail.app Spark Microsoft Outlook Canary Mail App Airmail 5 Just with this selection, I am quite sure a lot of people would find their match. Personally I happily used the default macOS Mail.app. It did e...| macOS & (open-source) Software
Tools In contrast to the use cases mentioned in the official documentation my private use of Docker is much more mundane. I mostly need it to extend my tooling. There is not much missing on my macOS machines to accommodate all of my needs. But in some rare cases I need to have access to some GNU/Linux exclusive software. On those occasional instances I have grown to rely on docker. Fire up a docker container with the appropriate image. Install the needed software in case they are not built in...| macOS & (open-source) Software
UPDATE - 13. Feb. 2024: From What’s new for enterprise in macOS Sonoma: Touch ID can be allowed for sudo with a configuration that persists across software updates using /etc/pam.d/sudo_local. See /etc/pam.d/sudo_local.template for details. This means the following steps will give you the result: sudo cp /etc/pam.d/sudo_local.template /etc/pam.d/sudo_local Remove the comment # from the 3. line. This should be the result: # sudo_local: local config file which survives system update and ...| macOS & (open-source) Software
Why would I do that? I use macOS – as evident by my domain. I started using it for university some 20 years ago and never looked back. This is also the case in my work life. As consequence of this I am quite committed to the macOS keybindings. So starting using Emacs about 2 years ago it was quite clear to me that… One, I can’t handle the default keybindings and especially key chords And two, I don’t want to retrain my muscle memory Well since Emacs is incredibly bendy, this was not a...| macOS & (open-source) Software
Why this Listen… There is no lack of confusion about the proper way of setting variables in ones Emacs config. There are far more ways to set these than the two mentioned in the title, which does not make matters easier. set setq set-default customize-set-value customize-set-variable And probably more that I do not know about The question becomes: What is the best practice here? Most people – including me – use setq to set values and are done with it. This mostly does the trick and in m...| macOS & (open-source) Software
Motivation For this one I got inspired by someone else. A little while ago I saw a YouTube stream by System Crafters called Do we really need use-package in Emacs?. Since starting out with Emacs roughly 2 years ago, I have been using use-package. Probably because most of the resources that helped me to learn used it. I never questioned it. To be quite frank, I never had a reason to do. For me it does what it promises. The use-package macro allows you to isolate package configuration in your ....| macOS & (open-source) Software
Motivation I love macOS. My job revolves around it, I write about it on this site and I have been using it for about 20 years with no major complaint. Hell, this domain starts with the word “mac”. However some of the behaviours in the UI that I have been used to over the years are not set by defaults. It would drive me mental not having these. As most of my post, this is for my own documentation, but in the spirit of sharing I hope that this might help someone out there. First things firs...| macOS & (open-source) Software
Motivation I like Ivy. I like it a lot. Together with Counsel it makes a fantastic completion framework for Emacs. However there is something driving me up the wall. Searching the active buffer with Swiper is quite slow. Meaning that the Minibuffer sometimes needs more than a second to appear. Which actually feels like 3 seconds. Now this could have been solved by doing some research to fix it. But it would have not be fun, would it? To be completely honest there are two more reasons for swit...| macOS & (open-source) Software
Reason The Adobe Creative Cloud has a set of fantastic tools and is probably the go to for most professional creative lots out there. However they are mind-bogglingly expensive for normal people who just want to edit their digital creations. Plus the subscription model is still an immense caveat for most people including me. In comes the Affinity suite. The Applications It is a set of three applications for creatives. According to the vendor, Serif: Award-winning creative graphics software No...| macOS & (open-source) Software
Spotlight is a fantastic idea/concept first introduced with Mac OS X Tiger. With the first release it was mildly revolutionary and immensely useful. But as time passed the Macs and macOS got faster, much faster. Unfortunately Spotlight did not keep up. It seems that Apple in the end treated it like a red headed stepchild. Enter the success of third party tools like LaunchBar, Quicksilver, Raycast and of course the app of today’s post, Alfred. Not only did they get better treatment and devel...| macOS & (open-source) Software
UPDATE - 16. Jan. 2023: Recently I came across a behaviour in Mu4e that did not do what was expected. It turns out Mu4e was not selecting the proper from-address when composing emails, which I did not notice for a long time. The short of it is that the function used to send emails did not take into account the message-send-mail-hook, which is responsible to select the proper from-address. To fix this adjust the following lines in the mu4e-sending section: ;; send function: -(setq send-mail-fu...| macOS & (open-source) Software
Why? I am greatly fond of Emacs as a tool, as evident by this post or this ones. In fact it is my favorite application/utility on any computer – by far. Because of this I want to contribute to the available packages. Now I am no wiz when it comes to programming, but I am tying to learn. So where to start? Make a packageIn my case it is a theme. Themes are easy to create. Plus I used quite a bit of boilerplate from other packages (built-in themes, doom themes, etc). Most of the work was brin...| macOS & (open-source) Software
What? Hammerspoon about Hammerspoon: This is a tool for powerful automation of OS X. At its core, Hammerspoon is just a bridge between the operating system and a Lua scripting engine. What gives Hammerspoon its power is a set of extensions that expose specific pieces of system functionality, to the user. Why? Well that part was easy, but why do I need Hammerspoon? There is Applescript, Automator and even the whole power of a proper shell, the BSD General Commands and the sort built-in, right....| macOS & (open-source) Software
What is fzf Again starting with quotes by the developer, Junegunn Choi. fzf is a general-purpose command-line fuzzy finder. It’s an interactive Unix filter for command-line that can be used with any list; files, command history, processes, hostnames, bookmarks, git commits, etc. However with this one, I will take a shot at explaining some aspects together with some examples. fzf takes in a list of stuff through the stdin, gives you an interface to fuzzy match (a) line(s) and spits out the r...| macOS & (open-source) Software
Warning This will be long and probably for some stretches fairly incoherent. But if you are anything like me it will be fun – probably. If not, do not despair, read on and at the end you will find links to resources by people more versed. Start How does one start using Vim. Isn’t it that cli program, that one gets stuck in trying to edit a cronjob? The editor that those annoying elitists in comments and forums keep talking about. Yes that is how I used to think. I simply couldn’t see th...| macOS & (open-source) Software
Warning This is gonna be a long one! Totally worth it though. Meeting Emacs My first contact was when I was looking for an editor/IDE like most people learning to code. Now before everyone screams, that Emacs is not an editor or an IDE for that matter… I know that. You don’t believe me? Read on! For some reason that I do not really recall my decision fell on Emacs. So started the internet rabbit hole of finding out more about it. The more I looked into it the more I got convinced to have ...| macOS & (open-source) Software
Why I am on macOS all day everyday. I like the OS, my job revolves around Apple products and the quality control of the hardware and software is off the charts. Plus with macOS it is easier for me to run the other 2 of the big three OS on the same machine. You don’t believe me? Try and run a macOS VM on Windows or Linux. Still I am a big fan of open-source software. So much so, that most of my favorite tools on my MacBook are open-source. And I want to share some of them with the intention ...| macOS & (open-source) Software
A little while ago I discovered the concept of List Comprehension. Once I understood it, I was quite eager to implement it in my first script for this series of posts about learning python. Motivation A nagging feeling tells me that the scripts is a bit – or maybe a lot – to long for its purpose. So, how hard can it be to use “List Comprehension” to mitigate the issue. Spoiler alert. It is not that hard. First code snippet First snippet to “fix”: year_list =list(range(1900,2100))y...| macOS & (open-source) Software
In my last post (Learning Python #1) I was talking about implementing functions and classes into my script for practise purposes. Well this is it… Functions The only place I found a reasonable use of a function was to get values for the attributes in my only custom class in this script. The script has a source directory hard coded and the files in the directory get sorted. They get filtered and get passed to the script in a list (lines 22 to 27). I then need to get the creation year and mon...| macOS & (open-source) Software
Little history/background Almost 2 years ago I decided to learn to code and my language of choice would be Python. I worked as an Administrator and thought to myself that a multi purpose language would do the trick. The next thing would be to choose a proper editor/IDE. So the search started and lasted till now. In that time I learned to use vim properly and I view myself as quite proficient in it now. From there I discovered Emacs and learned to love it. I use it in combination with evil-mod...| macOS & (open-source) Software
Objective Today for a short and simple one. I like Safari as a browser. I like using default macOS applications as much as possible. Safari is built-in into macOS and I have been using it for decades without missing any functionality. Granted, I am not web developer, I don’t need much plugins or extensions. One thing annoys me though. By defaults the menu for emptying the cache is not active. At some point in the OSX/macOS Upgrades it got hidden from the default menu. Emptying the browser c...| macOS & (open-source) Software
What I want to “fix” I recently switched from helm to ivy as my completion framework. I am quite frankly pretty happy and now understand, why a bunch of people take this step as well. The switch was reasonably painless and since the Emacs community seams to favor ivy, one gets more help in most forums and help sites. At least that was my experience. That is not to say, that I did find the solution to all of my issues though. I had to figure out the problem at hand by myself and I am happy...| macOS & (open-source) Software
EDIT - 2021-08-16: See the Edits section further down. Issue I want to fix The default way of saving my attachments is to hit a keybinding for mu4e-view-attachment-action. I then get asked to select between save or save multi. After the selection, the chosen completion framework takes over and I can then save my attachments(s) in the directory dictated by the variable mu4e-attachment-dir. I cannot change the directory in which to save the attachments. This grinds my gear to no end. Why you as...| macOS & (open-source) Software
Problem to solve As described by the developer. Emacs-slack is setup with a slack Auth token. There are of course a few ways of securing the token for it not to be accidentally either pushed to a public git repo or getting in the hands of somebody else in another way. Well I use macOS and so far I have been very happy doing it. Same with the builtin keychains system that it uses. With all the iCloud syncing and other convenience solutions, I use it to store most of my passwords and credential...| macOS & (open-source) Software
About I am DevOps Engineer based in Hamburg and trying to keep up. Might be a curse or a blessing but it turns out that IT is my hobby as well. Making this site to: Cope with the aforementioned fact. Share my love for macOS and (open-source) software. Claim my corner of the Internet. Few other reasons…| macowners.club
Why? Today was one of the days I decided to upgrade all my installed Emacs packages via list-packages. The upgrade to Org-roam v2 should have not surprised me – it is and has been widely talked about in the community the developer – but it did ¯\_(ツ)_/¯. This meant of course the adjustment of my configuration to meet the requirements of the new version. Having followed the upfront chatter about the “breaking upgrade” I was afraid to have some work cut out for me.| macowners.club