Features 15.2
openSUSE 15.2 – Leap
以下页面将详细介绍此 openSUSE 版本的更新内容。信息太多?请查看功能亮点。
Linux 内核
Leap 15.2 将使用 5.3.18 Linux Kernel。这是对 Leap 15.1 中使用的 4.12 Linux Kernel 的更新。Leap 中的内核与 SUSE Linux Enterprise 15 Service Pack 2 中使用的内核相同。SUSE 维护此内核版本。此 Linux 5.3 内核引入了对 AMD Navi GPU 的支持以及新的 IPv4 地址。此更新的内核对 RISC-V 代码进行了改进,并且与 Intel Xeon 服务器中使用的 Intel Speed Select 兼容。
硬件支持
Leap 15.2 支持 x86_64、ARM (aarch64, armv7) 和 PowerPC (ppc64le),并且可以针对物理、虚拟、宿主、客户机和云场景进行部署。
GNU 编译器集合
GNU 编译器集合 9、GCC 8 (Leap 15.1) 和 GCC 7 (Leap 15.0) 可用。
注意事项
On Arm targets (arm*-*-*), a bug in the implementation of the procedure call standard (AAPCS) in the GCC 6, 7 and 8 releases has been fixed: a structure containing a bit-field based on a 64-bit integral type and where no other element in a structure required 64-bit alignment could be passed incorrectly to functions. This is an ABI change. If the option -Wpsabi is enabled (on by default) the compiler will emit a diagnostic note for code that might be affected.
Support for a number of older systems and recently unmaintained or untested target ports of GCC has been declared obsolete in GCC 9. Unless there is activity to revive them, the next release of GCC will have their sources permanently removed.
The following ports for individual systems on particular architectures have been obsoleted:
Solaris 10 (*-*-solaris2.10). Details can be found in the announcement.
Cell Broadband Engine SPU (spu*-*-*). Details can be found in the announcement.
A change to the C++ std::rotate algorithm in GCC 9.1.0 can cause ABI incompatibilities with object files compiled with other versions of GCC. If the std::rotate algorithm is called with an empty range then it might cause a divide-by-zero error (as a SIGFPE signal) and crash. The change has been reverted for GCC 9.2.0 and future releases. For more details see Bug 90920. The problem can be avoided by recompiling any objects that might call std::rotate with an empty range, so that the GCC 9.1.0 definition of std::rotate is not used.
The automatic template instantiation at link time (-frepo) has been deprecated and will be removed in a future release.
The --with-default-libstdcxx-abi=gcc4-compatible configure option is broken in the 9.1 and 9.2 releases, producing a shared library with missing symbols (see Bug 90361). As a workaround, configure without that option and build GCC as normal, then edit the installed <bits/c++config.h> headers to define the _GLIBCXX_USE_CXX11_ABI macro to 0.
常规改进
GCC 9 提供了常规改进。引入了以下内置函数。
__builtin_expect_with_probability to provide branch prediction probability hints to the optimizer. __builtin_has_attribute determines whether a function, type, or variable has been declared with some attribute. __builtin_speculation_safe_value can be used to help mitigate against unsafe speculative execution.
新的语言改进包括:C、C++ 和 Fortran 中的 OpenACC 支持将继续维护和改进。实现了大部分 OpenACC 2.5 规范。有关更多信息,请参阅 OpenACC wiki 页面上的实现状态部分。
C 系列
Version 5.0 of the OpenMP specification is now partially supported in the C and C++ compilers. For details which features of OpenMP 5.0 are and which are not supported in the GCC 9 release see this mail.
New extensions:
__builtin_convertvector built-in for vector conversions has been added.
New warnings:
-Waddress-of-packed-member, enabled by default, warns about an unaligned pointer value from the address of a packed member of a struct or union.
Enhancements to existing warnings:
-Warray-bounds detects more instances of out-of-bounds indices.
-Wattribute-alias also detects attribute mismatches between alias declarations and their targets, in addition to mismatches between their types.
-Wformat-overflow and -Wformat-truncation have been extended to all formatted input/output functions (where applicable) and enhanced to detect a subset of instances of reading past the end of unterminated constant character arrays in %s directives.
-Wmissing-attributes detects instances of missing function attributes on declarations of aliases and weak references.
-Wstringop-truncation also detects a subset of instances of reading past the end of unterminated constant character arrays,
If a macro is used with the wrong argument count, the C and C++ front ends now show the definition of that macro via a note.
The spelling corrector now considers transposed letters, and the threshold for similarity has been tightened, to avoid nonsensical suggestions.
C
现在对 -std=c2x 具有实验性支持,以选择对即将发布的 ISO C 标准的 C2X 修订版的支持。该标准仍处于开发初期,GCC 9 中支持的唯一功能是带有单个参数的 _Static_assert(带有两个参数的 _Static_assert 的支持在 C11 和 GCC 4.6 中添加)。还有新的选项 -std=gnu2x,用于带有 GNU 扩展的 C2X,以及 -Wc11-c2x-compat,用于警告在 C2X 中添加的功能的使用情况(如果未使用 -std=c2x 或 -std=gnu2x,则也会通过使用 -Wpedantic 启用这些警告)。
New warnings:
-Wabsolute-value warns for calls to standard functions that compute the absolute value of an argument when a more appropriate standard function is available. For example, calling abs(3.14) triggers the warning because the appropriate function to call to compute the absolute value of a double argument is fabs. The option also triggers warnings when the argument in a call to such a function has an unsigned type. This warning can be suppressed with an explicit type cast and it is also enabled by -Wextra.
C++
New warnings:
-Wdeprecated-copy, implied by -Wextra, warns about the C++11 deprecation of implicitly declared copy constructor and assignment operator if one of them is user-provided. -Wdeprecated-copy-dtor also warns if the destructor is user-provided, as specified in C++11.
-Winit-list-lifetime, on by default, warns about uses of std::initializer_list that are likely to result in a dangling pointer, such as returning or assigning from a temporary list.
-Wredundant-move, implied by -Wextra, warns about redundant calls to std::move.
-Wpessimizing-move, implied by -Wall, warns when a call to std::move prevents copy elision.
-Wclass-conversion, on by default, warns when a conversion function will never be called due to the type it converts to.
The C++ front end has experimental support for some of the upcoming C++2a draft features with the -std=c++2a or -std=gnu++2a flags, including range-based for statements with initializer, default constructible and assignable stateless lambdas, lambdas in unevaluated contexts, language support for empty data members, allowing pack expansion in lambda init-capture, likely and unlikely attributes, class types in non-type template parameters, allowing virtual function calls in constant expressions, explicit(bool), std::is_constant_evaluated, nested inline namespaces, etc. For a full list of new features, see the C++ status page.
Fortran
Asynchronous I/O is now fully supported. The program needs to be linked against the pthreads library to use it, otherwise the I/O is done synchronously. For systems which do not support POSIX condition variables, such as AIX, all I/O is still done synchronously. The BACK argument for MINLOC and MAXLOC has been implemented. The FINDLOC intrinsic function has been implemented. The IS_CONTIGUOUS intrinsic function has been implemented. Direct access to the real and imaginary parts of a complex variable via c%re and c%im has been implemented. Type parameter inquiry via str%len and a%kind has been implemented. C descriptors and the ISO_Fortran_binding.h source file have been implemented. The MAX and MIN intrinsics are no longer guaranteed to return any particular value in case one of the arguments is a NaN. Note that this conforms to the Fortran standard and to what other Fortran compilers do. If there is a need to handle that case in some specific way, one needs to explicitly check for NaN's before calling MAX or MIN, e.g. by using the IEEE_IS_NAN function from the intrinsic module IEEE_ARITHMETIC. A new command-line option -fdec-include, set also by the -fdec option, has been added to increase compatibility with legacy code. With this option, an INCLUDE directive is also parsed as a statement, which allows the directive to be spread across multiple source lines with line continuations. A new BUILTIN directive, has been added. The purpose of the directive is to provide an API between the GCC compiler and the GNU C Library which would define vector implementations of math routines.
网络
Leap 15.2 默认使用 Network Manager 用于笔记本电脑和台式机。
安全
Leap 15.2 已经获得了所有必要的反向移植,并使用 SUSE 使用的相同的企业 Linux 内核。
dehydrated / letsencrypt
Dehydrated 是一个客户端,用于使用 ACME 服务器(当前仅由 Let’s Encrypt 提供)签署证书,它被实现为一个相对简单的 bash 脚本。
它使用 openssl 工具处理与密钥和证书相关的所有内容,因此需要安装该工具。
其他依赖项:cURL、sed、grep、mktemp(几乎所有系统中都有,cURL 是唯一的例外)
当前功能
- 签署域名列表
- 签署 CSR
- 如果证书即将过期或 SAN(子域名)已更改,则进行续订
- 证书撤销
systemd
Leap 15.2 具有 systemd 版本 234。这与 Leap 15.0 和 15.1 中的版本相同。以下信息与 234 版本相关。
已添加对为服务的生命周期动态创建用户的支持。如果指定 DynamicUser=yes,则将在服务的生命周期内从 61184..65519 的范围内分配用户和组 ID。可以使用新的 nss-systemd.so NSS 模块解析它们。必须在 /etc/nsswitch.conf 中启用该模块。以这种方式启动的服务启用了 PrivateTmp= 和 RemoveIPC=,因此服务分配的任何资源都将在服务退出时清理。它们还启用了 ProtectHome=read-only 和 ProtectSystem=strict,因此它们无法对系统进行任何永久修改。
MemoryLimit= 和相关单元设置现在可以选择接受百分比规范。百分比相对于系统中的物理内存量(或者在容器的情况下,分配的内存量)计算。这允许根据系统上可用的 RAM 量按比例缩放服务资源。类似地,systemd-logind 的 RuntimeDirectorySize= 选项现在也可以选择接受百分比值。
同样,TasksMax= 现在也接受百分比值。该值相对于配置的系统上最大进程数计算。使用此功能,每个服务的任务最大值已更改为 15%(考虑到内核的默认 pid_max 设置,实际上这会将 512 增加到 4915)。
SystemCallFilter= 单元文件设置增加了对预定义的命名系统调用过滤器组的支持。例如,SystemCallFilter=@clock 现在是一种有效的方法,可以使所有与时钟更改相关的系统调用对服务不可用。定义了许多类似的预定义组。使用此新概念大大简化了为系统服务编写系统调用过滤器。因此,systemd 自己的所有长期运行的服务现在默认启用基于此的系统调用过滤。
已添加一个新的服务设置 MemoryDenyWriteExecute=,它接受一个布尔值。如果启用,服务可能不再创建同时可写和可执行的内存映射。这增强了服务的安全性,因为在受攻击的服务进程中动态写入然后执行内存变得更加困难。已为 systemd 自己的所有长期运行的服务启用了此选项。
Linux 4.5 中添加的统一 cgroup 层次结构现在受支持。使用内核命令行上的 systemd.unified_cgroup_hierarchy=1 启用。此外,还添加了对统一层次结构中“io”cgroup 控制器的支持,因此“memory”、“pids”和“io”现在是受统一层次结构支持的控制器。
已添加一个新的命令“systemctl revert”,可用于恢复到单元文件的供应商版本,以防通过添加 drop-ins 或覆盖单元文件进行本地更改。
PHP 7
PHP7 是一种服务器端 HTML 嵌入式脚本语言,主要设计用于 Web 开发,但也用作通用编程语言。Leap 15.2 发布了 7.4.6 版本。在此版本中,修复了 bug #79497(stream_socket_client() 在 <1s 超时时有时会引发未知错误)。
Printing System
Leap 15.2 具有与 Leap 15.1 相同的 CUPS 2.2.7。CUPS 是一个模块化打印系统,允许计算机充当打印服务器。运行 CUPS 的计算机是主机,可以从客户端计算机接受打印作业,处理它们,然后将它们发送到适当的打印机。CUPS 使用 Internet Printing Protocol (IPP) 作为管理打印作业和队列的基础。它还提供传统 System V 和 Berkeley 打印系统的命令行界面,并提供对 Berkeley 打印系统 Line Printer Daemon 协议和有限对服务器消息块 (SMB) 协议的支持。CUPS 带有内置的基于 Web 的界面。
容器
Leap 15.2 包含多种容器化技术,例如 Singularity,它为科学计算和高性能计算 (HPC) 世界带来容器和可重复性。Singularity 首先出现在 Leap 42.3 分发版中的 Leap 中,并提供构建最小化容器和将容器作为单个应用程序环境运行的功能。Leap 15.2 中的另一个官方软件包是 libcontainers-common,它允许配置基于 github.com/containers 库的工具共享的文件和手册页,例如 Buildah、CRI-O、Podman 和 Skopeo。
Office and Groupware
Libreoffice
LibreOffice 是一款免费且开源的办公套件,The Document Foundation 的一个项目。LibreOffice 是一款全面的办公软件包,包含文字处理器、电子表格、演示文稿程序等等。
有关 Leap 15.2 中包含的 LibreOffice 版本的新功能的更多信息,请参见 发行说明
Writer
- 添加了在 Writer 中将评论标记为已解决的选项 tdf#119228 (Scott Clarke, Codethink)
- 修复数字和列表的项目符号的布局中缺失的更改跟踪 tdf#42748 (László Németh, NISZ)
- 现在 Writer 文本框中可用 btLr 文本方向 blog 文章 (Miklos Vajna, Collabora)
- 现在可以在 Writer 图像和图表中进行评论 blog 文章 (Miklos Vajna, Collabora)
- 现在可以通过新的环绕选项自动避免重叠的形状 blog 文章 (Miklos Vajna, Collabora)
- 将锚定对象重叠的建议添加到 OASIS ODF 草案核心提交 9e827baed18bbcd410029dbcb81ac5a0da2cc6b4
- 可以设置锚定对象重叠 tdf#124600
- “允许重叠”复选框位于形状的环绕功能的编辑选项中。
- 取消选中“允许重叠”以自动禁用形状的重叠。
- 改进了具有许多书签的文件打开性能核心提交 b5b607cf5afe6ebf5964102770a52965f5b98533 (Michael Stahl, CIB)
- 选择锚定在段落处的绘图对象现在更一致且用户友好核心提交 91b2325808a75174f284c48c8b8afc118fad74e4(Michael Stahl, CIB)
表格
表格处理方面的重要改进 (László Németh, NISZ)
- 快速表格移动和删除:剪切命令剪切所选表格,而不是删除其文本内容 tdf#118311
- 快速表格行/列移动和删除 tdf#127759
Cut command cuts the selected table rows or columns, if they are selected by enhanced table selection (clicking in front of them) After that, paste command inserts the removed table part before the actual row/column
- 新的“粘贴为行上方”和“粘贴为列之前”表格数据粘贴到表格中的“粘贴为”菜单选项 (在表格弹出菜单和 Writer 的“编辑”菜单中)
Paste Special menu option "Paste as Nested Table" tdf#37156
- “粘贴为行上方”和“粘贴为列之前”菜单选项 tdf#64902
- 改进了表格数据拖放鼠标操作
move the selected table instead of duplicate it tdf#84806 move rows and columns (selected by enhanced table selection) and wholly selected tables by inserting new table rows above or columns before instead of overwriting cells of the target table. In the case of moving (not copying, i.e. without using the key Ctrl during drag & drop), the selected rows and columns are removed completely, instead of emptying their cells. tdf#35570
Calc
- 改进了包含超链接的单元格的选择 tdf#126393 (Samuel Mehrbrodt, CIB)
- 在 MM:SS 或 [MM]:SS 或 MM:SS.00 或 [MM]:SS.00 预格式化的单元格中,现在接受两位数组输入,例如 12:34 作为分钟:秒值,而不是通常的小时:分钟:00 值。要强制在这些单元格上使用通常的小时:分钟:秒输入,请输入三位数组,例如 12:34:00。 tdf#76441 (Eike Rathke (Red Hat, Inc.))
- 通过潜在地将多个独立的公式组一起线程化来改进公式组计算在具有大量内核的 CPU 上的可扩展性。核心提交 845e1c (Dennis Francis, Collabora)
- 实现了并行化的超级标量样本排序算法(请在此处阅读论文)以加快排序速度。现在这用于需要进行一些排序的透视表创建中。核心提交 46d0af (Dennis Francis, Collabora)
- 删除了列/行标题的阴影;标题现在以平面方式绘制。 tdf#127508 (Heiko Tietze)
- 删除了 XLSX 文件的密码长度限制 15 个字符 tdf#97086 (Eike Rathke, Red Hat)
性能改进
- 加快打开具有大量评论的 XLSX 文件 tdf#129228 (Noel Grandin, Collabora)
- 加快加载具有大量 COUNTIF() 的 Calc 文档 tdf#128812 (Noel Grandin, Collabora)
- 加快保存具有大量样式的 XLS tdf#126021 (Noel Grandin, Collabora)
- 加快加载带有更改跟踪的 ODS 文件 tdf#125688 (Noel Grandin, Collabora)
- 加快 Calc 中带有大量评论的复制操作 tdf#76324 (Noel Grandin, Collabora)
Impress 和 Draw
- 在 Impress 中添加了“删除超链接”到上下文菜单 tdf#111707 (Samuel Mehrbrodt, CIB)
- 添加了“合并文本”,它将多个选定的文本框组合成一个(主要用于简化从 PDF 导入的碎片化内容)。 tdf#118370 (Justin Luth, SIL)
- 组合来自例如导入的 PDF 文件的文本框
- 交互现在仅在演示模式下执行(单击对象时)。对于编辑模式,添加了上下文菜单“执行交互”。 tdf#125748 (Samuel Mehrbrodt, CIB)
- 图像地图现在尊重需要 Ctrl+单击才能遵循超链接的设置 (Samuel Mehrbrodt, CIB)
- 图像地图中的超链接现在在幻灯片放映中也有效 tdf#74045 (Samuel Mehrbrodt, CIB)
性能改进
- 加快打开某些 PPT 文件 tdf#121740 (Noel Grandin, Collabora)
- 加快:带有动画的列表中键入期间的长时间操作 tdf#129708 (Serge Krot, CIB)
ThunderBird
Mozilla Thunderbird 是一款易于设置和自定义的免费电子邮件应用程序。它加载了许多很棒的功能。Leap 15.2 附带 Thunderbird 68.5.0。Thunderbird 68.5.0 的一些新功能是
- 对 POP3 帐户的 OAuth 2.0 身份验证的支持
- 对客户端身份验证 IMAP/SMTP 服务扩展的支持
修复包括
- 帐户设置期间状态区域变为空白
- 日历:防止日历组件多次加载
- 日历:今天面板在会话之间未保留宽度
浏览器和 Web 搜索
Chromium
Chromium 是一个跨平台开源网络浏览器,它是 Google Chrome 的基础。极简的设计是 Chromium 成为基于 WebKit 引擎的选项卡式 Web shell 的主要目标之一。Chromium 为用户提供最新的 HTML5 和 CSS3 功能。
- 多进程架构 - 每个站点实例或插件都在单独的进程中运行,这对于最终用户意味着更好的安全性和稳定性
- 主题 - 使 Chromium 易于适应您的桌面设计
- 扩展 - 通过 HTML、CSS 和 JavaScript 增强浏览器功能
- 偏好同步 - 在多台机器上保持相同的设置、书签、扩展和主题
- 无痕模式 - 私人浏览可防止访问的网站存储历史记录或 Cookie
- DNS 预取 - 更快的地址到 IP 解析
Firefox
Firefox 由 Mozilla 创建,Mozilla 是一个全球非营利组织,致力于让个人掌控在线世界。Leap 15.2 附带 Firefox 的扩展支持版本 (ESR) 68.5.0。该版本解决了安全漏洞,并于 2020 年 2 月 11 日首次提供给 ESR 频道用户。
桌面环境
Xfce
Xfce 桌面 4.14 是取代 Xfce 4.12 的新稳定版本。
在 4.14 中,主要目标是将所有核心组件移植到 Gtk3(而非 Gtk2)和 GDBus(而非 D-Bus GLib)。大多数组件也获得了 GObject 内省支持。该版本对用户体验进行了润色,并引入了许多新功能、改进和修复。
此版本的主要亮点是
- 窗口管理器收到了一系列更新和功能,包括对 VSync(使用 Present 或 OpenGL 作为后端)的支持,以减少或消除显示闪烁,HiDPI 支持,改进的 GLX 支持,以及 NVIDIA 专有/闭源驱动程序,支持 XInput2,各种合成器改进以及新的默认主题。
- 面板获得了对 RandR 的主显示器功能的支持,改进了任务列表插件中的窗口分组(更好的用户体验、视觉组指示器等),每个面板的“图标大小”设置,一个新的默认时钟格式和时钟格式评估器,以及改进的默认面板布局。
- 桌面现在支持 RandR 的主显示器功能,图标排列的取向选项,一个“下一个背景”上下文菜单选项以推进壁纸,现在它将用户的壁纸选择同步到 AccountsService。
- 创建了一个全新的对话框来管理颜色配置文件。对于大多数用户而言,这意味着开箱即用的颜色管理打印(通过 cupsd)和扫描(通过 saned)支持。对于监视器配置文件,您需要安装额外的服务,例如 xiccd。
- 显示对话框在此周期中受到了很多关注,一个很大的功能:用户现在能够保存和(自动)恢复完整的多显示器配置,这对于经常将笔记本电脑连接到不同的扩展坞或设置的用户尤其有用。此外,很多时间都花在使用户界面更直观上,并添加了一个隐藏选项以支持 RandR 显示缩放(通过 Xfconf 配置)。
- 我们添加了一个选项来在外观对话框中启用 Gtk 窗口缩放,以及一个等宽字体选项。但是,我们放弃了主题预览,因为它们无法使用 Gtk3 产生一致的结果。
- 虽然我们决定从会话管理器中删除启动画面,但我们添加了许多功能和修复。其中一些包括混合睡眠支持,改进了默认会话启动,避免了竞争条件,一个添加和编辑自动启动条目的功能,注销对话框中的切换用户按钮,以及改进的会话选择器和设置对话框(后者带有显示已保存会话的新选项卡)。此外,您现在可以在登录时不仅以“自动启动”样式运行命令,还可以在计算机暂停、注销等时运行命令。最后,Gtk 应用程序现在通过 DBus 进行会话管理,并且屏幕保护程序也通过 DBus 进行通信(例如,被抑制)。
- 像往常一样,Thunar - 我们的文件管理器 - 收到了一系列功能和修复。可见的变化包括完全重做的路径栏,对更大的缩略图的支持,以及对更改文件夹图标的“folder.jpg”文件的支持(例如,用于音乐专辑封面)。高级用户还会注意到改进的键盘导航(缩放、选项卡导航)。Thunar 的卷管理器获得了 Bluray 支持。
- 我们的缩略图服务 tumbler 收到了一系列修复和对 Fujifilm RAF 格式的支持。
- 应用程序查找器现在可以选择作为单个窗口打开,并且现在可以使用键盘进行更轻松的导航。
- 电源管理器收到了一系列错误修复和一些较小的功能,包括对 XF86Battery 按钮的支持以及对新创建的 xfce4-screensaver 的支持。面板插件也进行了一些改进:它现在可以选择显示剩余时间和/或百分比,并且现在依赖 UPower 的标准图标名称,以便开箱即用地与更多图标主题一起工作。随着 LXDE 迁移到 QT 基础,LXDE 面板插件已被删除。
GNOME
GNOME 3.34(代号 Thessaloniki)在 Leap 15.2 中。GNOME 3.34 引入了应用程序概述中的自定义文件夹。只需将一个应用程序图标拖到另一个图标上即可创建文件夹。当所有图标都被拖出时,文件夹会自动删除。应用程序概述中的图标可以组合成文件夹。将一个图标拖到另一个图标上以创建组。从组中删除所有图标会自动删除该组。这使得组织应用程序更加容易,并保持应用程序概述的整洁。
概述视觉风格也得到了改进,包括搜索输入字段、登录密码字段和概述窗口高亮边框。所有这些更改都为 GNOME 桌面提供了改进的整体体验。
此 GNOME 版本还有许多其他较小的改进,例如
- 几个应用程序收到了新图标,包括照片、视频和待办事项。
- 终端现在支持从右到左和双向语言。
- 概述中的一些动画经过了重构,从而加快了图标加载和缓存速度。
- 文件现在警告用户在尝试将文件粘贴到受保护的目录时。
- 辅助功能指针位置已更新,现在可以在 Wayland 会话下工作。启用该功能后,按 Ctrl 将突出显示屏幕上的指针位置。
- 可以通过将 org.gnome.desktop.interface.enable-hot-corners 设置为 false 来禁用活动角。
- 设置具有改进的 Wi-Fi 列表,更易于阅读。搜索部分现在可以通过在列表中拖动它们来重新排序。夜间模式部分已移动到显示面板。
- 软件具有更多精选的应用程序。
- Polari 现在显示一个横幅,通知用户应用程序何时离线。
KDE 和 Qt
Qt 5
Qt 5 已更新到版本 5.12 长期支持 (LTS)。新的稳定开发基础提供了更好的性能、改进的体验和数千个错误修复。Qt 是一个完整的开发框架,其中包含旨在简化桌面、嵌入式和移动平台应用程序和用户界面创建的工具。该版本完全支持 Qt for Python,使所有 Qt API 都可以供 Python 开发人员使用。Qt 5.12 包含 Qt for WebAssembly 的第二个技术预览版。使用 Qt for WebAssembly,您可以将 Qt 应用程序编译为在任何现代 Web 浏览器中运行。即使 Qt for WebAssembly 仍被标记为技术预览版,但它也相当实用。
Plasma
Plasma 5.18 LTS 是 KDE Plasma 团队的第三个长期支持版本。Leap 15.2 包含这个新的 LTS 版本。Plasma 5.18 将由 KDE 贡献者在未来两年内更新和维护(常规版本维护 4 个月)。在 Plasma 5.18 中,您会发现一些新的功能,使通知更清晰、设置更简化,整体外观更具吸引力。Plasma 5.18 更易于使用,更有趣,同时让您在需要工作时更有效率。
如果您正在考虑更新或迁移您的学校、公司或组织到 Plasma,那么这个版本是您的最佳选择,因为您可以获得最稳定的 Plasma 版本 *以及* 所有新功能。
Plasma 5.18 更加用户友好,因为我们添加了更多功能,让您更好地工作、玩耍和表达自己。全新的 Emoji 选择器:它始终只有两个键程之遥。按住 Meta(Windows)键并按句点 (.),它就会弹出。单击最能代表您感受的图标,您可以将表情符号粘贴到您的电子邮件、社交媒体帖子、短信甚至终端中。
为了持续改进整体外观,Plasma 5.18 更好地支持使用客户端装饰的 GTK 应用程序。这些应用程序现在显示正确的阴影和调整大小区域。GTK 应用程序现在也能自动继承 Plasma 的字体、图标、鼠标光标等设置。Plasma 现在启动速度明显更快,启动脚本已从 bash 转换为 C++,并且现在异步运行。公共 WiFi 登录的支持也得到了显著改善。
为了放松您的眼睛,新增了一个系统托盘小部件,可用于切换夜间模式功能。您还可以配置键盘快捷键来打开或关闭夜间模式和请勿打扰模式。
系统设置
Plasma 5.18 的系统设置中有很多新功能。最重要的是可选的用户反馈设置。这些设置默认情况下是禁用的,以保护您的隐私。系统设置虚拟桌面页面已为 Wayland 支持进行了重写,并且新增了一个用于管理和配置 Thunderbolt 设备的面板。
如果您决定与我们分享有关您安装的信息,则没有任何选项允许系统发送任何类型的个人信息。事实上,反馈设置滑块让您可以决定希望与 KDE 开发者分享多少信息。KDE 开发者以后可以使用这些信息来进一步改进 Plasma,并更好地适应您的需求。
此版本中的其他值得注意的更改包括
- Discover 得到了极大的改进。现在也支持 fwupd,允许升级计算机的固件。
- 改进了外部显示器对话框和工作流程
- 改进了媒体播放器小部件。
- Wayland 支持的各个方面都有很多改进。
- 现在 Wayland 上支持分数缩放。
- XdgStable、XdgPopups 和 XdgDecoration 协议现已完全实现。
- Wayland 现在支持虚拟桌面,并且它们比在 X11 上工作得更精细。用户可以将窗口放置在任何虚拟桌面的子集上,而不仅仅是单个或全部虚拟桌面。
- 已添加了对使用 Wayland 与专有 Nvidia 驱动程序初始支持。使用 Nvidia 驱动程序从睡眠中唤醒计算机后,图形也不再失真。
- 新的辅助功能,允许用户在使用 libinput 时使用键盘移动光标
- Plasma 的系统监视器 ksysguard 进行了许多改进。
- Flatpak 门户支持
框架
KDE 框架是 70 多个附加库。 Frameworks 5.68.0 预计用于 Gold Master。较新的 KDE 框架对几个软件包进行了更改,包括 Baloo、Breeze Icons、KAuth、KActivities、KConfig、KIO、Kirigami、KWidgetsAddons、KWayland、Oxygen Icons 等。
应用程序
KDE 应用程序已更新到版本 20.04.2,其中包含许多新功能和可用性改进。该版本包括对音乐播放器 Elisa、文件管理器 Dolphin 的搜索标签以及使用 KDE 的高级视频编辑应用程序 Kdenlive 的更快的编辑的改进。
openSUSE 技术
Snapper
Snapper 是一种用于管理 BTRFS 和 LVM 快照的工具。它可以创建、比较和还原快照,并提供基于时间线的自动快照。由于其新的 机器可读输出,使用它进行脚本编写比以往任何时候都更容易。Snapper 插件也经过了重新设计,不再依赖 Python,使其可以在软件包集非常少的系统中使用。
YaST
安装程序改进
openSUSE 安装程序仍然强大而通用,允许轻松调整系统的每个方面,包括 缓解基于 CPU 的攻击,如 Spectre 或 Meltdown。但功能不应以牺牲易用性为代价,Leap 15.2 的安装过程在这一领域进行了一些改进,例如更用户友好的对话框用于选择系统角色、改进的安装进度信息、更好的与从右到左语言(如阿拉伯语)的兼容性以及许多其他小的增强功能。
与往常一样,Leap 在各种硬件上都提供流畅且统一的体验,从小型单板计算机(如 Raspberry Pi)到强大的大型机系统。但同时又不放弃使这些平台伟大的特性。因此,Leap 15.2 安装程序为 Raspberry Pi 提供了更好的存储设备管理、更准确的检测使用 BitLocker 加密的 MS Windows 分区以及利用 IBM zSeries 大型机的一些全新功能(如安全启动或 I/O 设备的自动配置)的机制。
YaST 改进
YaST 是 Linux 上最完整的配置工具。Leap 15.2 是第一个引入将系统配置在 /usr/etc 和 /etc 目录之间拆分的渐进式更改的 openSUSE 版本。YaST 支持所有受影响模块中的新结构,为系统管理员提供了一个中心点来检查配置,这将帮助他们在过渡期间以及之后。
如果您决定与我们分享有关您安装的信息,YaST 在 Leap 15.2 中的版本改进了与该平台的兼容性,尤其是在执行 YaST Firstboot 以执行所有必要的初始调整时。
此新版本 YaST 的另一个目标是改进网络配置的体验和可能性。YaST 网络模块经过了广泛的重做,现在更加健壮和一致,不仅在表面上,而且在底层,这为未来的增强功能打开了新的可能性。
YaST 分区程序仍然是配置 Linux 中各种存储技术的强大工具,无论是在系统安装期间还是之后。在此版本中,除了几个可用性改进外,它还包含了创建和管理 跨多个设备扩展的 Btrfs 文件系统以及使用更多 高级加密技术的可能性。
但这些并不是唯一得到改进的 YaST 模块。 软件管理器现在更快,NFS 模块更健壮和功能更强大,YaST NTP 客户端现在使用 systemd 定时器来配置定期时钟同步……收到其他小修复和可用性增强的模块列表还包括键盘、引导加载程序、Kdump、安全等。
AutoYaST
AutoYaST 是一种用于使用包含安装和配置数据的 AutoYaST 配置文件进行无人值守的大规模部署 openSUSE Leap 系统的系统。使用 AutoYaST,可以轻松并行安装多个系统。它们需要共享相同的环境和相似(但不一定相同)的硬件。安装由 XML 配置文件(通常命名为 autoinst.xml)定义,该文件称为“AutoYaST 控制文件”。最初可以使用现有的配置资源创建它,并可以轻松地针对任何特定环境进行定制。
AutoYaST 完全集成并提供了各种用于安装和配置系统的选项。与其它自动安装系统相比的主要优势在于能够使用现有模块配置计算机,而避免使用通常在安装结束时执行的自定义脚本。
此版本的所有级别都经过了大量改进,添加了更多配置选项,并且用户配置文件或安装过程中的可能错误现在以更合理和信息丰富的方式处理和报告。
应用程序
多媒体
VLC
VLC 3.0.7 是“Vetinari”的第七次更新
- Windows 上的 HDR 支持改进,包括 HLG 流
- Blu-ray 支持改进,特别是对于菜单
众多安全问题
- 修复了 1 个高危安全问题、21 个中危安全问题和 20 个低危安全问题,范围从整数溢出到缓冲区溢出,以及越界读取和堆栈溢出
* Fix a buffer overflow in the MKV demuxer (CVE-2019-14970) * Fix a read buffer overflow in the avcodec decoder (CVE-2019-13962) * Fix a read buffer overflow in the FAAD decoder * Fix a read buffer overflow in the OGG demuxer (CVE-2019-14437, CVE-2019-14438) * Fix a read buffer overflow in the ASF demuxer (CVE-2019-14776) * Fix a use after free in the MKV demuxer (CVE-2019-14777, CVE-2019-14778) * Fix a use after free in the ASF demuxer (CVE-2019-14533) * Fix a couple of integer underflows in the MP4 demuxer (CVE-2019-13602) * Fix a null dereference in the dvdnav demuxer * Fix a null dereference in the ASF demuxer (CVE-2019-14534) * Fix a null dereference in the AVI demuxer * Fix a division by zero in the CAF demuxer (CVE-2019-14498) * Fix a division by zero in the ASF demuxer (CVE-2019-14535)
GNU Health
GNU Health 是屡获殊荣的健康和医院管理系统,版本为 3.6.4。它具有更新的 GUI,并为 COVID-19 大流行跟踪做好准备,包括更新的 ICD-10 代码和改进的实验室功能。
此外,它可以直接与 Orthanc(免费的 PACS 服务器)接口,该服务器现在也随 openSUSE 一起提供。
OnionShare 2.2 是 Leap 15.2 的官方软件包。OnionShare 允许用户安全且匿名地共享文件。它通过启动一个 Web 服务器来实现,使其可通过 Tor Onion Service 访问,并生成一个难以猜测的 URL 来访问和下载文件。它不需要设置单独的服务器或使用第三方文件共享服务。文件托管在运行程序的机器上。接收用户只需在 Tor 浏览器中打开 URL 即可下载文件。
Syncthing
Syncthing 是一个在多个设备之间同步文件的应用程序。这意味着在一个机器上创建、修改或删除文件会自动复制到其他设备。Leap 15.2 的官方发布版本是 1.3.4 版本。
Sway
openSUSE Leap 15.2 包含平铺 Wayland 组合器 Sway 版本 1.4,它是 X11 的 i3 窗口管理器的即插即用替代品。Sway 允许您逻辑地排列应用程序窗口,而不是空间地排列。默认情况下,窗口排列成网格,从而最大限度地提高屏幕效率,并且仅使用键盘即可快速操作。
还有什么新功能
Orthanc
Orthanc 是一个用于医疗保健和医学研究的 RESTful DICOM 服务器
Orthanc 的目标是提供一个简单但功能强大的独立 DICOM 服务器。Orthanc 可以将任何计算机变成一个 DICOM 存储库(换句话说,一个小型 PACS 系统)。它的架构轻量级,这意味着不需要复杂的数据库管理,也不需要安装第三方依赖项。
Orthanc 的独特之处在于它提供了一个 RESTful API。凭借此主要功能,可以使用任何计算机语言来驱动 Orthanc。存储的医学图像的 DICOM 标签可以下载为 JSON 文件格式。此外,Orthanc 可以从 DICOM 实例实时生成标准的 PNG 图像。
对于 openSUSE,我们将 Orthanc 与各种插件打包在一起。Orthanc 与 GNUHealth 集成
人工智能和机器学习
Tensorflow
一个用于深度学习的框架,可供数据科学家使用,提供数值计算和数据流图。其灵活的架构允许用户在桌面、服务器或移动设备上的一个或多个 CPU 上部署计算,而无需重写代码。
PyTorch
专为服务器和计算资源而设计,这个机器学习库加速了高级用户原型设计项目并将其部署到生产环境的能力。
ONNX
一种构建用于表示机器学习模型的开放格式,为 AI 工具空间提供互操作性。它使 AI 开发人员能够使用各种框架、工具、运行时和编译器来使用模型。
Grafana
Grafana 为分析专家开辟了新的可能性。Grafana 为最终用户提供创建交互式可视化分析的能力。功能丰富的数据建模包:Graphite、Elastic 和 Prometheus 使 openSUSE 用户能够更清晰地构建、计算和解读数据。
Prometheus
Prometheus 是一种优秀的开源监控解决方案,它为用户和研究人员提供了一个事件监控和告警工具,可以记录实时指标。它功能强大,并具有高效的内存和磁盘存储,可以很好地可视化数据。
Pagure Git hosting forge server
在 Leap 15.1 中引入的 Pagure Git 托管锻造服务器软件已更新至 Leap 15.2。与 Leap 15.1 一样,默认提供 openSUSE 风格的主题。
Pagure 提供了一种简单、可定制、轻量级的解决方案来设置您自己的功能齐全的 Git 存储库服务器。它与其他流行的基于 Git 的锻造厂类似,允许开发人员和贡献者共享和协作代码和内容。但是,它还具有其他 Git 锻造厂中没有的一些独特功能,为去中心化、联合软件代码托管和开发奠定了基础。
对于 Leap 15.2,Pagure 已更新至版本 5.10.0。新版本的一些亮点
- 更多管理功能包含在“pagure-admin”CLI 工具中
- 更多范围支持跨项目(实例范围)API 令牌
- 用于访问和操作项目数据的新的 API 端点,旨在支持 CI/CD 工作流程和基础设施
- 查看文件提交历史记录的视图模式
- 改进的项目统计信息图表
- 如果实例管理员启用了,则支持使用 HTTP Basic Auth(使用具有“commit”范围的 API 令牌)通过 HTTP(S) 推送
请阅读“/usr/share/doc/packages/pagure/UPGRADING.rst”以了解如何处理从 5.5 升级到 5.10.0 的详细信息。
DNF 包管理器
DNF 是一种下一代依赖关系解析器和高级包管理工具,其渊源可以追溯到两个项目:YUM(Yellowdog Updater, Modified)和 libsolv。DNF 在几年前从 YUM 分叉出来,以便使用 libsolv 重写它,并大规模重构代码库,以便为扩展 DNF(通过插件和钩子)和在其之上构建应用程序(例如图形前端和系统生命周期自动化框架)提供合理的 API。
DNF 相较于 YUM 提供了以下优势:维护和文档化的 Python API、增强的问题报告、弱依赖的高级跟踪、对丰富依赖的支持,以及在执行操作时更详细的事务信息。
DNF Python API 是稳定且受支持的,而底层的 libdnf 和 hawkey API(C/C++ 和 Python)是不稳定的,并且很可能在未来的版本中发生变化。
使用 Leap 15.2,DNF 已重新定位到版本 4.2.19,它带来了许多修复和改进。
一些亮点
- 默认情况下,在终端支持时输出彩色
- 支持仓库 ID 中的变量
- 支持从多个目录加载变量和仓库定义
此外,现在包含了一个轻量级的 DNF 的 C 实现,称为“Micro DNF”。它旨在用于执行简单的软件包管理操作,当您不需要完整的 DNF 并且想要尽可能小的有用环境时。这对于最小容器和设备的用例很有用。
最后,还有一个实验性的使用 DNF 的 PackageKit 后端可用。
DNF 当前未配置为默认使用 openSUSE 仓库进行软件管理。
Tilix
Tilix 是一个平铺终端模拟器,它使用 VTE GTK+ 3 小部件,具有以下功能
Layout terminals in any fashion by splitting them horizontally or vertically Terminals can be re-arranged using drag and drop both within and between windows Terminals can be detached into a new window via drag and drop Tabs or sidebar list current sessions Input can be synchronized between terminals so commands typed in one terminal are replicated to the others The grouping of terminals can be saved and loaded from disk Terminals support custom titles Color schemes are stored in files and custom color schemes can be created by simply creating a new file Transparent background Background images Quake mode support (i.e. drop-down terminal) Custom hyperlinks Automatic (triggered) profile switches based on hostname and directory Supports notifications when processes are completed out of view. Requires the Fedora notification patches for VTE Experimental trigger support (Requires patched VTE, see wiki) Experimental badge support (Requires patched VTE, see wiki)
