我美丽的Linux开发环境工作站ansible playbooks

2025-05-24

我美丽的Linux开发环境

工作站 Ansible 剧本

最初发表于deepu.tech

这篇文章有新版本,我在其中介绍了我当前的设置。点击此处查看

奇怪的是,我在会议演讲后经常被问到的一个问题不是关于我演示的内容,而是关于我的 Linux 桌面环境。人们对那个漂亮的发行版更感兴趣,而不是我刚刚做的精彩演示😂

我并不是在抱怨,我太喜欢我的台式电脑了。我太喜欢它了,以至于我甚至害怕在需要买新电脑的时候再去买。我害怕把事情搞砸(我以前也遇到过很多次这种情况,我想 Linux 用户应该也和我感同身受)。

因此,我决定为任何有兴趣使用 GNU/Linux 作为主要开发操作系统的人捕捉我的发行版的最重要方面。

这不仅仅是我的工作笔记本电脑;它是我用于以下所有操作的主要机器。

  • Java、JS、TS、Go、Python 和 Web 开发
  • JHipster 开发
  • 在本地运行多个 Web 应用程序
  • 运行 Docker 容器
  • 用于 Windows 测试和其他 VM 内容的 VirtualBox
  • Kubernetes、Terraform、CloudFormation 开发和部署
  • 使用所需的 CLI 工具进行 Azure、AWS 和 GCP 部署
  • 大量使用浏览器
  • 电子邮件、聊天和视频会议
  • Plex媒体服务器
  • 博客
  • Youtube 和社交媒体

机器配置

对于任何开发环境来说,机器的配置也至关重要。我的笔记本电脑是戴尔 Precision 5530 移动工作站。我的旧戴尔 5510 也使用了同样的配置,配置与 5530 非常相似。我仍然把它作为备用笔记本电脑,虽然已经用了两年了,但它的性能仍然可以与当今大多数高端笔记本电脑相媲美。

我使用了戴尔的自定义配置选项,以获得当时最佳的配置。虽然价格不菲,但我的公司XebiaLabs提供了相当可观的预算,我认为物有所值。在我看来,这是最适合开发人员的笔记本电脑之一。以下是我现在拥有的配置。

处理器:Intel® Core™ i9-8950HK CPU @ 2.90GHz × 12

内存:32GB,DDR4-2666MHz SDRAM,2 个 DIMMS,非 ECC

硬盘:M.2 1TB NVMe PCIe SED 40 级 SSD

显卡:NVIDIA Quadro P2000,配备 4 GB GDDR5 内存和 Intel® UHD Graphics 630(Coffeelake 3x8 GT2)

无线:英特尔 Wifi Link 9260 2x2 802.11AC + BT 4.2 vPro 无线网卡

键盘:英文 QWERTY US,背光

显示屏:15.6 英寸 FHD 1920x1080 防眩光 LED 背光非触摸 IPS UltraSharp™

电池:6 芯(97Wh)锂离子电池,带 ExpressCharge™

操作系统和桌面环境

当然,最重要的是操作系统。我目前运行的是Fedora 30 ,桌面环境是GNOME 3.32.2,我对它非常满意。我发现 Fedora 比其他发行版更适合开发环境,因为它的发布周期短,而且相当稳定,所以你可以随时获得最新、最稳定的软件。

如果没有好看的主题,桌面还有什么用呢?GNOME 的主题很棒,我选择了Arc-Flatabulous主题,从此就再也没有后悔过。图标方面,我使用Paper,因为我喜欢它的 Material Icon 主题。

当然,如果没有一些优秀的 GNOME 插件,它就不完整。以下是我使用的插件。

开发工具

现在,这些大多是客观的选择,只要你对所选工具感到满意,其实并不重要。以下是我为一些重要的开发类别选择的工具。我并没有包括 Vim、Git、NodeJS、Docker、Kubernetes 等显而易见的工具。

Shell:对于开发者来说,Shell 至关重要。我使用ZSH以及超棒的Oh My ZSH作为我的 Shell。当然,如果没有一些优秀的插件和主题,我的 Shell 就不完整。我使用powerlevel9k主题并进行了一些自定义。我还为 Oh My ZSH 使用zsh-autosuggestions、git、docker、docker-compose、autojump、zsh-syntax-highlighting、dnf 和 npm 插件。这是我.zshrc所有自定义的主题。更新:这篇文章中的一条评论建议使用powerlevel10k作为替代主题,我尝试了一下,结果发现它比 快得多powerlevel9k。所以我想我会用它powerlevel10k作为我的 Shell 主题。

终端:如果没有好的终端,再好的 shell 又有什么用呢?幸运的是,我们有Tilix,它是市面上最好的终端应用之一。它拥有工作区、标签页、分屏窗口、Quake 模式等等。

集成开发环境(IDE)IntelliJ IDEA Ultimate - 我用它来进行 Java 和其他 JVM 语言开发

代码编辑器Visual Studio Code - 我的首选编辑器。我非常喜欢它。我使用 VSCode 进行 Web 开发、Go、Python、JS 开发、DevOps 以及除 JVM 语言之外的所有开发。如果没有一些优秀的插件,VSCode 的设置就永远不会完整。以下是我正在使用的插件。您可以运行脚本来安装它们。

我使用的其他值得注意的开发工具是用于 Git repo 管理的GitKraken 、用于代码比较的Beyond Compare 、用于 NodeJS 版本管理的VirtualBoxNVM和用于 JDK 版本管理的SDKMan 。

生产力工具

生产力工具也非常重要,以下是我的选择。

浏览器:Google Chrome 是我的主要浏览器。我有时也会使用 Firefox 和 Opera。我非常喜欢 Opera 的用户体验,很想把它作为我的主要浏览器,但我怀念在 Chrome 中与我的 Google 帐户同步的所有功能。

电子邮件:我使用Mailspring作为我的电子邮件客户端。它是一款相当不错的邮件客户端,主题精美,用户界面简洁。

办公套件:我主要使用 Google Docs 和 Microsoft Office 在线版,但当我必须在桌面上处理某些工作时,我会使用LibreOffice,这是一款优秀的办公套件,甚至可以处理 Microsoft Office 和 Keynote 格式。

沟通:当然我使用Slack,对于视频会议我使用BlueJeans

屏幕截图:我使用这个名为Peek的漂亮工具进行屏幕录制,使用Shutter进行截图。

结论

我还使用许多其他小巧实用的实用程序;大多数都是命令行实用程序。其中有一些值得一提的,比如Timeshift,它非常适合备份你的机器。

当然,Linux 世界并非完美无缺,但每个操作系统都一样。在切换到 Linux 之前,我曾长期使用 Windows。所以,就像所有 Linux 用户一样,我偶尔也会把事情搞砸(能力越大,责任越大,Peter)。Linux 世界有很多怪癖,但没有什么让我太困扰。以下是我过去遇到的一些最烦人的问题,目前我还没有遇到任何明显的问题。

  • 切换应用程序时滚动位置跳跃 - 升级到 Fedora 30 后修复
  • 休眠功能损坏 - 升级至 Fedora 30 后修复
  • 插入耳机时音频输出选择损坏 - Fedora 28 之后已修复

希望本文对您有所帮助。如果您有任何疑问,或者觉得我遗漏了什么,请留言。

如果您喜欢这篇文章,请点赞或留言。

您可以在TwitterLinkedIn上关注我。

文章来源:https://dev.to/deepu105/my-beautiful-linux-development-environment-2afc
PREV
我对 Rust 的第一印象 我喜欢 Rust 的哪些方面 我不喜欢 Rust 的哪些方面 挑剔之处 结论
NEXT
面向 JavaScript 开发人员的 Golang - 第 1 部分 比较相似的事情 结论 参考文献: