How do you secure Arch?
This page is really to help you defining what would be of concern for you. There are too many use cases and security measures will differ greatly. It is not a step by step guide.
At the very minimum, since your firewall is already setup, just make sure to keep your firmware up to date with fwupd if your machine supports it and follow the basic good practice below:
- regularly update your packages
- do not install intrusted packages
- use strong and unique passwords
- run your app tests (if any) within a sandbox
If you need AppArmor as you mentioned. You should really invest efforts into it. ArchLinux is by nature a demanding distro for its setup. That being said once installed and activated (i.e. litterally 2 commands to run) you should be good to go unless you want to setup additional profiles.
Once you figured out how to meet your own security needs, you can start the same lengthy process to address your privacy needs ;)
This is a vast question. Security is an extremely deep topic.
Did you take a look at the wiki? It may be a good starting point.
I don't understand very well the purpose of the bed lock: it basically avoid the "calibration screws" to accidentally "unscrew" while the printer is working?
You are correct. The screws will move a little bit when you print which will result in your bed being unleveled after few prints and you'll have to recalibrate your printer. This hack will eliminate that so you will have to level your bed less frequently (because as others said, leveling your bed will be needed for other reasons).
I will not reiterate the great things others have said but I've used old windows to create an enclosure for my printer and it definitely helps with the prints. Also since you're a new user and have an Ender 3, I would recommend you to take a look at thingiverse.com and printables.com - if not already done - for great tweaks to protect your printer but also to find great things to print.
For your printer, you may be interested in cable guides, filament guide, spool roller, fan duct, bed lock (they will keep your bed in place so you will not have to deal with bed tramming anymore before your bed leveling sessions)...
Finally, although a little bit off topic, if you get bored to walk to your printer to watch the prints and would like to add some level of safety in case anything goes wrong I would highly recommend considering octoprint.
Right, I didn't know updating firmware from the fwupd service was came pre-installed in Pop_OS.
So you only have one more task on your list: enjoying your new laptop! :)
Enjoy this little guy and Linux! You won't regret your choice.
As I mentioned in the other thread, I'd advise to keep your firmware up to date with fwupd. Litterally one command line and your system will automatically update all firmware for you (including the bios). This is too often overlooked while very important and this tool makes the process so simple (no search, no manual download, no complex commands).
Wish someone would come with something like tut for mastodon.
Thanks for sharing your experience. Always interesting to hear how things are (not) working for others. The only negative side of Linux - which is at the same time a good thing in other aspects - is the behavior difference across distros. Arch is working smoothly on the XPS 13 and the Razer Book 13 which is a very similar machine.
I have no doubt Tuxedo is great. My friend was just not lucky with his laptop. Like any brands there're various positive and negative stories about their machines. Just here we have different experiences with Dell and Tuxedo. That's just frustrating when you're trying to collect info to help you decide on a buy. Ending up with issues while you did your best to prevent them is really a killer to the excitement you should have with your new laptop.
What was your issue with the webcam? It may depend on the distro but mine works well even though I almost always use an external camera instead because most webcam quality sucks on any laptop and OS anyway.
Supporting Linux/open-source companies is certainly a plus. Not that there machines will work better but it makes more sense if you really want to adhere to the global philosophy of open-source. For the record I still didn't go that route because either I couldn't find the right machine or the price was significantly higher for similar products and I didn't take the "risk" to spend more without enough certainty on the build quality. Experience varies and I'm sad to say that I convinced a friend to switch to Linux and he immediately jump on a Tuxedo machine but unfortunately it had a lot of issues out of the box. One remains but I will not blame the company for this one (compatibility with a hiDPI external monitor).
XPS13 has very highly positive reviews from several sources. I've had the same dilemma as you 3 years ago and went with the XPS13 9310 and I'm extremely happy with it. So much that I bought an on sale Razer Book 13 for my wife since it's almost an XPS 13 with a different name.
Note that I don't have the "developer" version of the XPS but it runs with no issues at all. I can install Linux myself, don't need someone to do that for me and I'm not using Ubuntu anyway. Also, the delivery delay were insane when I bought it and I was extremely lucky to find a "regular" version in one of my local stores.
I've tried a lot of laptops over 30 years and no brand was convincing enough to get me returning to them every time. I just go where I can find the hardware I need enclosed in a well-enough robust case and I'm done. All the parts are sold by the same manufacturers anyway. The difference between brands is just which parts are assembled together and how well it's done.
As a bonus, it's also nice that the firmware of the XPS 13 (including the bios) can be updated with fwupd.
If you're using only one monitor, simply duplicate and scale your laptop screen instead of using the extended approach.
To give you a rough idea, this will look to something like this:
xrandr --output eDP1 --mode 1366x768 --scale 1x1 --output HDMI1 --same-as eDP1 --mode 1920x1080 --scale 0.711x0.711
Use xrandr to find the monitors names and resolution. The scale option is simply the ratio between your 2 resolutions.
The behavior you are requesting of bspwm is counter-intuitive to this rule you specifically wrote. Nonetheless, if VS Code popup windows have a different instance name, you could have a script running in the background which checks instance name of any new window and execute the command bspc desktop -f last
when a VS Code popup appears.
If the instance name is the same for VS Code main app and its popup windows, you may listen to the state of VS Code windows (using bspc subscribe; see the manpage) and execute the previous command on VS Code floating windows (because popups will be floating).
For example, apply this to all VS Code windows:
while bspc subscribe -c 1 node_focus node_state > /dev/null; do bspc query -N -n "focused.floating" | while read -r wid; do bspc desktop -n $wid -f last done
For your second question, if I understand correctly you're trying to have a given workspace moving to your external monitor when available and returning to your primary monitor if no other monitor is connected. You can look at the archwiki to learn how to setup bspwm for multi monitors.
Using the same if conditions as explained in this wiki you could also have for example a rule bspc rule -a Code follow=on desktop='^4'
when only one monitor is connected, and bspc rule -a Code follow=on desktop='^7'
when an external monitor is connected (and workspace 7 will be defined to be shown on your external monitor).
Any headphones should work (if your hardware supports it if using bluetooth). I've connected at least 4 different brands from no name to Aftershokz with no issues. Even tried airpods for a friend.
Terminal is faster when you're used to it and sometimes offer more customization options to some apps that has both a GUI and TUI/CLI version.
I use the terminal (st with zsh and tmux) for:
- file management (advcpmv, fd, trash-cli, fzf ...)
- emails (neomutt)
- text editing/coding (neovim)
- project management (taskjuggler)
- image viewing/organization (ucolla,ge)
- online video browsing (ytfzf)
- calendar (khal)
- ssh
- vpn
- news aggregator (newsboat)
- web, bookmarks manager (buku)
- passwords manager (pass)
- dotfiles manager (stow)
- not in the terminal but I also have a lot of scripts used in rofi to control my audio input/outputs, launch a web search, access my bookmarks, autocomplete username and password fields
I'm sure I'm missing some obvious tools I use daily. It's hard remember everything when it becomes so natural.
I have shared my experience with some of these tools here.
Thanks for the information. I'm always happy to hear from others because that's how I make progress. Also with my workflow in constant evolution it's good to know neovim's limitations so I can be prepared. Being curious by nature I will try other apps with no doubts anyway. I've tried vi, neovim, emacs, but only heard of VS so who knows...
It's always difficult to find a good starting point but remember that you're not married to your apps so you can easily switch from one to another and maybe come back later. Over the years, I've seen most of Linux users going that route because 1) it's fun and you learn a little bit from each experience, 2) Linux users are generally curious, 3) some apps may be more suitable to your workflow at a given time but your workflow may change over time, 4) Linux offers us so many options so it's like unleashing kids in a toys store, you want to try everything :)
Do you have any experience with neovim? I'm certainly not a Python programmer but I'm doing simple things for fun and so far neovim served me very well. If I eventually go deeper in Python I would be interested to know the limitations of neovim beforehand.
I've often heard Emacs users pose the argument that Emacs as an Elisp interpreter does just one thing. It's just that this single thing allows the myriad of functionality it offers. So in that sense comparing it to a terminal/console seems more apt than comparing it to a text editor. I wonder what you think of that argument.
I only used emacs for a year so I may be wrong but speaking only about how I used it and my current workflow I don't see a difference. Looking at the usage (and not the code), my very first impression of emacs was that it's acting as a terminal multiplexer which I was used to and so I liked this aspect. Anytime you need to do something that goes beyond the tasks of an IDE (calendar, email...) you switch window/panel (I've always been confused with the specific emacs terminology). That's exactly what I'm doing with Tmux where I run neovim and call other apps with a single keybinding. Then I can freely switch from one to another, close one, recall it in the state I've closed it...
Again, this is related to the philosophies of emacs and neovim (i.e. do-it-all or do one thing). While neovim is "only" an IDE, emacs goes beyond, and for me this is not a negative criticism of either app. You build a tool with the coding language you need to implement some functionalities. In that sense, to compare apple to apple, emacs has to be compared to neovim coupled to a terminal multiplexer.
Hehe, that's cool! Currently I'm really happy with Thunderbird so I don't expect to move away anytime soon, but I'll keep it in mind.
I used Thunderbird as well and did the switch mainly to allow me to achieve the workflow described above. I do most of my tasks in the terminal. Neomutt would certainly be one additional layer of complexity in your transition to an IDE, unless you chose to use emacs for your emails. Actually configuring emacs as an email client or going with neomutt is pretty similar. But at the end - and this is an example of the higher level of granularity I mentioned earlier - neomutt is more customizable.
Talking about the level of customization of the IDE functionality only, the plugins I use offer more configuration options in neovim as well.
Orgmode is also one (the?) big star player in emacs and neovim is trying to attract some users by developing a similar thing here or there but this is not something that would benefit to my workflow. This is maybe one of the reason why people choose emacs vs neovim and why I could quit emacs easily. Going back to the coding language, you can see that the use of lua opens new doors to the original vim. What I appreciate though is that you don't have to implement any features if you don't use them in neovim so I can keep my system limited to my needs. This is also seen as a bad thing by some when you start because emacs is capable of quite a lot with a fresh installation while neovim can barely open itself ;)
Overall we're all sharing personal experience so no generalization should be extrapolated from single visions and I'm aware of my own bias and preference for singl- task, lightweight, fast tool.
Dive in beyond the basic "hjkl:q" though.
This is a video I can't recommend enough: https://www.youtube.com/watch?v=d8XtNXutVto It's long (>1h) but it's very well made.
It's a long tutor go through with some bonus advanced tweak, and the explanations clearly helps remembering everything easily. If I knew it when I've started that would have saved me so much time and helped me from getting into bad habits I then had to fight against.
If you don't use untrusted applications, you don't need firejail.
Similarly if you don't need know what Apparmor is used for, just don't use it. It's not mandatory and you will take the risky move by not configuring it correctly. Never follow any step by step process based on a shiny title if you don't fully understand what you're doing and why you'd need to go that route in the first place.
Arch is pretty stable and secure with the minimum configuration, especially for "regular" users (no negative meaning here, I'm one of them).