LWN:Fedora 40 的 KDE Plasma X11 支持!

linux图形界面基本知识(X、X11、Xfree86、Xorg、GNOME、KDE之间的关系) LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNOME等之间是什么关系。常常混淆概念,本文以比较易于理解的方式来解释X,X11,XFREE,WM,KDE,GNOME等之间的关系。 一、linux本身没有图形界面,linux现在的图形界面的实现只是linux下的应用程序实现的。 图形界面并不是linux的一部分,linux只是一个... 阅读详情

关注了就能看到更多这么棒的文章哦~

KDE Plasma X11 support gets a reprieve for Fedora 40

By Joe Brockmeier
February 14, 2024
Gemini translation
https://lwn.net/Articles/961899/

Fedora 项目正在致力于发布 Fedora Linux 40,(与每次发布一样)这意味着对该项目的工作方式及其存储库中包含的软件进行更改。Fedora 40 的大多数变更集都没有争议,但有一项变更引起了不小的轰动。 KDE 特别兴趣小组 (SIG) 的 提案 采用 KDE Plasma 6,仅支持 Wayland 会话,它将此解释为禁止任何针对 Plasma 的 X11 软件包。其他人则认为 SIG 这样做越权了,并试图阻止用户和贡献者维护他们需要的软件。

在 2023 年计划 Fedora 40 时,SIG 成员已 建议在 Wayland 下采用 KDE Plasma 6 作为该版本中 KDE 唯一受支持的版本,同时完全取消对 X11 Plasma 会话的支持。该提案被 Fedora 贡献者 Kevin Kofler 反对,但仍作为 Fedora 40 的一项变更接受。当变更被提出时,Kofler 表示他将提交软件包来支持 Plasma 的 X11 会话。 1 月下旬,Kofler 要求审核并包含两个将为 Fedora 40 提供支持的软件包。

在讨论变更提案时,KDE SIG 成员 Timothée Ravier 表示 SIG “当然不会阻止你”提交软件包,但不会维护它们。然而,在 Kofler 提交软件包后,SIG 确实尝试阻止它们被包含,他们向 Fedora 工程指导委员会 (FESCo) 提起诉讼,声称这些软件包将撤消已批准的变更。 FESCo 对这些软件包实施了“初步禁令”,直到它可以考虑这个问题。正如人们想象的那样,根据 Fedora 指南 封锁本来是“合法”的软件包的想法引起了关于许多事情的冗长讨论,包括 Wayland 的缺点,是否在任何情况下都适合阻止志愿者包含其他可接受的软件包,以及如何让用户摆脱 Plasma 的 X11。

FESCo 成员之一 Stephen Gallagher 为使用“禁令”一词道歉,因为这个词比必要的更强烈。他说,1 月 29 日的 FESCo 会议缺乏投票排除软件包请求的法定人数,这个想法只是为了避免在 FESCo 投票封锁软件包时浪费任何人的时间。在同一条消息中,Gallagher 建议允许将这些软件包包含在主存储库中的提案,但“它们可能不会默认包含在任何发布阻止交付物(ISO、映像等)中”。

在 2 月 12 日举行的例行会议上,FESCo 批准 了 Gallagher 提出的经修改的版本,5 票赞成,1 票反对:

重新引入对 X11 支持的 KDE 软件包允许存在于 Fedora 主存储库中,但是它们可能不会默认包含在任何可能会阻止 release 的交付物(ISO、映像等)中。 KDE SIG 应该在进行重大更改之前发布通知,但无需负责确保这些软件包的适配。从 F38 和 F39 升级将自动迁移到 Wayland。

此外,Gallagher 补充澄清,FESCo 并未在提案中提供详细的技术要求,但“我们希望各方在做出技术决策时遵循这项决议的精神”。人们可能会认为事情会就此结束,但一名 Fedora 用户(不是 KDE SIG 成员)在 请求 Fedora 委员会推翻 FESCo 的决定,并阻止 Kofler 的软件包进入 Fedora 官方存储库。

通往 Wayland 的漫漫长路

多年来,Fedora 一直致力于迁移到 Wayland。 Wayland 于 2016 年 11 月在 Fedora 25 中成为 Fedora Workstation 的默认选项,对于需要(或想要)用 X11 的用户,可以回退到 X11 会话。尽管在近八年前做出了这一改动,但该项目尚未完全删除 X11 会话选项。相反,该计划似乎是在等待上游 GNOME 删除支持,然后为 Fedora Workstation 删除它。然而,作为他对“禁令”的解释的一部分,Gallagher 断言 Fedora “首先且最重要的是 Wayland 支持”,X11 支持只是“一种迁移支持工具,而不是一等公民”。

这句话让一些人感到惊讶。 Richard W.M. Jones 写道成为 Wayland First “对我来说是很有新闻价值的”,他指出了 Fedora Xfce 等其他也需要 X11 的版本。 Jones 补充说,“即使在所有这些年之后,Wayland 实际上并没有取代 X11 的所有基本功能,这就是为什么我需要使用它”。

有人可能会争辩,正如一些人所说的,对于 X11 软件包有愿意的维护者——那么为什么不让它们做自己的事情呢? Gallagher 写道,这种想法是误导性的。“迁移到 Wayland 是因为 X11 本身 的上游在很大程度上是无人维护的状态。这些软件包并没有维护 X11,而是正在向其添加新依赖项。”

如果 X11 “在很大程度上无人维护”,为什么这么多用户渴望坚持使用它?一些用户之所以坚持 X11,是因为 NVIDIA GPU 只能使用专有驱动程序,而不是 Nouveau 开源驱动程序,不能与 Wayland 良好地配合。 2 月 9 日,KDE SIG 主管兼 FESCo 成员 Neal Gompa 写道,许多最新的 NVIDIA GPU “从今晚开始,有望立即获得更好的效果”,但“这无助于拥有旧 GPU 的人们。”

其他用户也不愿意放弃他们在 Wayland 上不具备的功能。Steven A. Falco 引用了他提交的两个错误报告,内容是关于使用 Wayland 的 Plasma 无法遵守窗口定位,以及 在会话之间无法保存窗口。Falco 说,他理解这些项目是由志愿者推动的,他不能指望他们解决缺失的功能,但他仍然需要这些功能。“我很高兴有志同道合的人想要维护 X11。请允许他们这样做。”

迫使用户转向 Wayland

无论人们是否同意 Fedora 是“Wayland First”,该项目都试图鼓励用户在其主要的 Workstation(基于 GNOME)版本中使用 Wayland,而不是强制他们这样做。然而,KDE SIG 正在尝试在 Fedora 40 中强制中断对 X11 的支持,尽管 Plasma 6 上游将具有 X11 支持且 Fedora 社区中有愿意打包的成员。预计在 Plasma 6 的某个生命周期中,上游会删除 X11 会话支持,但没有设定日期。SIG 的变更提案承认,现在不是放弃 X11 的好时机,但辩称删除 X11 会话“大大减轻我们的支持负担,让我们能够专注于 KDE Plasma 栈的质量,并继续我们的面向功能的目标”。该提案还声称“我们觉得用户会更愿意在主要版本升级而不是以后的某个小版本中进行更改”。对 KDE SIG 提案的反应及其尝试阻止 Kofler 的软件包被纳入表明,许多用户并不仅仅因为这是一个主要版本升级而更愿意接受这一更改。

Gompa 认为允许这些软件包进入 Fedora 40 主存储库,而不是进入 Copr 存储库,“会打破我们努力的主要目标:让 KDE Plasma Wayland 成为最佳且最完整的体验”。Gompa 写道,“一场巨大的功能开发浪潮恰恰是因为变更提案中的讨论反馈”。提供“Plasma X11 的依赖”意味着“根本没有足够的动力找到解决方案来解决仍然缺少的功能/能力”。Steve Cossette 权衡利弊后 认为强制使用 Wayland 非常有效,可以让用户遇到障碍并提交错误报告,以便修复问题。“你会惊讶于我在过去几个月里看到有多少问题得到解决”。

另一方面,SIG 并不希望看到有关 X11 软件包的错误报告。允许 Kofler 的软件包的一种担忧是它们最终将为 SIG 带来更多的工作,因为用户会报告他们使用的软件包中的错误,无论它们是否来自 SIG。 Gompa 还认为,软件包被包含进来会给 SIG 向 KDE Plasma 发布更新带来复杂性,因为需要“按照我们通常的节奏”,并且更希望 X11 软件包存在于 Copr 中。

Zbigniew Jędrzejewski-Szmek 回复说 Gompa 所写的内容是正确的,但如果其他贡献者希望采用另一种方法,“我们不应该 *强制 使旧软件过时,尤其是如果它仍有用户的话”。 Jędrzejewski-Szmek 写道,“X11 的情况很复杂:许多人报告说它仍然对他们更有用(无论出于什么原因)”。因此,他写道,KDE SIG 在不等待 X11 的情况下继续前进是可以的,但“说 ‘我们在 Fedora 中禁止拥有 KDE-X11 软件包’是不合适的”。

随着时间的推移

正如在 会议记录中所看到的,Gallagher 指出,与任何妥协一样,“没有人能得到他们想要的一切”。 SIG 无法排除对 X11 的支持,但它将能够自动将用户迁移到 Wayland。虽然这并不能完全击败在 Fedora 中包含支持 X11 的软件包的目的,但希望在 X11 会话中使用 KDE Plasma 的用户不会在安装或升级 Fedora 40 时获得完全无缝的体验。他们也不必查看 Copr 存储库来启用支持。

最终,不禁止包含软件包的意愿似乎占了上风。 FESCo 允许 Kofler 在 Fedora 40 中重新引入 KDE X11 支持,Gompa 说 KDE SIG 没有质疑或参与推翻 FESCo 的努力。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~

3a8c17a7571dd9a315a4e24bc8cd660e.jpeg

DeepBSA实战指南:从安装到基因组分析的全流程解析 本文详细解析了DeepBSA工具从安装到基因组分析的全流程,特别介绍了其简化生物信息学分析的'一键式'操作和独家深度学习算法。通过实战案例展示了DeepBSA在信噪比处理和QTL定位上的优势,并提供了Linux和Windows系统的安装避坑指南、数据预处理技巧以及算法选择建议,帮助用户高效完成基因组分析。 阅读详情

相关推荐

ROS-订阅与处理激光雷达scan话题

激光雷达通常有四个性能衡量指标:测距分辨率、扫描频率(有时也用扫描周期)、角度分辨率及可视范围。测距分辨率衡量在一个给定的距离下测距的精确程度,通常与距离真实值相差在5-20mm;扫描频率衡量激光雷达完成一次完整扫描的快慢,通常在10Hz及以上;角度分辨率直接决定激光雷达一次完整扫描能返回多少个样本点;可视范围指激光雷达完整扫描的广角,可视范围之外即为盲区。

weixin_42438635的博客 4477

fedora 不启动X11界面;跨平台开发环境的搭建

[且作笔记,日后备查] 在virtualbox中安装fedora12,由于仅作编译, 通过ssh从主机中直接登录,就没必要开图形界面来浪费资源了。 于是修改配置,默认不启动图形界面: #vi /etc/inittab 在一行文本id: 5: initdefault: 改为id: 3: initdefault: #reboot 搞定。 另外,关于的我开发...

CX1859的博客 345

出个AI8051U的PWM例程 | 3相互补SPWM变频驱动,PWMA-3个相位差120度的PWM互补输出

通道2输出: P2.2, PWMA2P输出, P2.3, PWMA2N输出, PWMA2相对PWMA1滞后120度相位.通道3输出: P2.4, PWMA3P输出, P2.5, PWMA3N输出, PWMA3相对PWMA1滞后240度相位.先别修改程序, 直接下载"Objects"里的"pwm.hex"测试, 下载时选择主频24MHz.主频32.768MHz, PWM周期1422, 刷新频率23040Hz,死区0.5us,通道1输出: P2.0, PWMA1P输出, P2.1, PWMA1N输出。

USB_CAN_8051的博客 690

安装好fedora_kde系统后的操作

本文用的是 fedora 40 kde plasma 6。因为有很多的软件都同时提供了 deb 包 和 rpm 包,所以 fedora 上的一些软件的安装,可以参考我的另一篇文章《安装好ubuntu系统后的操作》。但是还是有一些软件,在 fedora 中安装时,与 ubuntu 有差异,如下文。

ShiJunzhiCome的博客 3696

保姆级教程:用Vue3+Element Plus快速搭建Flowable流程定义管理后台界面

本文提供了一份详细的Vue3+Element Plus教程,指导开发者快速搭建Flowable流程定义管理后台界面。从项目初始化、核心页面设计到响应式数据处理,全面覆盖前端开发关键步骤,帮助提升企业级应用开发效率。

weixin_42662293的博客 478

YOLO-World:从入门到实战的多模态目标检测全指南

想象一下,你给模型一张“公园”的图片,再输入文字“红色的郁金香”,它能直接在图中框出所有红色郁金香的位置——这就是多模态目标检测:结合图像视觉信息和文本语义信息,同时完成“是什么”(分类)和“在哪里”(定位)的任务。传统目标检测(如YOLOv5、YOLOv8)只能识别预定义的类别(比如训练时学过“猫”“狗”),但多模态目标检测摆脱了“类别预定义”的限制,只要文本能描述,它就能检测,这就是“开放词汇检测(Open-Vocabulary Detection)”的魅力。

know_F0727的博客 204

manjaro kde 21.2.5使用x11桌面可以正常使用搜狗输入法

manjaro kde 21.2.5使用x11桌面可以正常使用搜狗输入法 使用wayland桌面不能正常使用搜狗输入法

学亮编程手记 1198

车载ECU底软测试:方法与技术的深度解析

底软是运行在 ECU 硬件平台上的基础软件,它为上层应用程序提供了硬件驱动、操作系统服务、通信协议栈等功能。底软的主要功能包括:硬件驱动:负责与 ECU 的各种硬件外设进行通信和控制,如 GPIO、UART、SPI、CAN 等。操作系统服务:提供任务调度、内存管理、中断处理等功能,确保系统的实时性和稳定性。通信协议栈:实现 ECU 与其他 ECU 或外部设备之间的通信,如 CAN、LIN、FlexRay 等。诊断服务:负责对 ECU 的故障进行诊断和处理,并将故障信息存储在故障码存储器中。

天赐好车的博客 1423

Fedora 10中X11与虚拟终端之间的切换

‍X11--Xwindows,即Linux的GUI界面,tty(1-6)为默认的6个虚拟终端,又称‘虚拟控制台console’,即文字界面。一、启动后进入图形或文本 如果希望在计算机启动后,首先进入文本模式,需要修改文件"/etc/inittab"的内容如下:id:3:initdefault: 如果希望在计算机启动后,首先进入图形模式,需要修改文件"/etc/inittab"的内容如下:i

zlcrypto的专栏 853

我正用AI Agent重构传统GIS 核心功能,说大白话做空间分析

GeoAI-UP项目通过AI Agent技术实现自然语言驱动的空间分析,核心创新包括: 意图识别层:通过LLM理解用户需求,自动拆解为可执行目标 智能任务规划:动态生成分析流程,处理复杂依赖关系 统一算子架构:采用标准化接口封装200+空间分析功能 可视化工作流。

专注GIS软件开发。 496

Ubuntu搭建Pytorch环境(Anaconda、Cuda、cuDNN、Pytorch、Python、Pycharm、Jupyter)

Ubuntu搭建Pytorch环境(Anconda、Cuda、Pytorch、Python、Pycharm、Jupyter)

funfan的博客 1万+

探索Termux-X11-Plasma-Installer:在Android设备上构建桌面环境的新旅程

探索Termux-X11-Plasma-Installer:在Android设备上构建桌面环境的新旅程 去发现同类优质开源项目:https://gitcode.com/ Termux-X11-Plasma-Installer是一个创新的开源项目,它允许你在Android设备上安装并运行KDE Plasma工作台和X11窗口系统。这个项目的链接是:。 项目简介 这个项目基于Termux,一个强大的A...

gitblog_00004的博客 1228

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

在Fedora上安装NVIDIA驱动详细教程及解析

Fedora上在有安全启动的情况下安装NVIDIA驱动

April_Zhao的博客 2万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Fedora 的 X11-forwarding

安装了一个 Fedora 24 Server,默认没法通过 MoboXterm 做 X11转发。 查了一下,需要安装 xauth 装好后重连就好了。

blkf的专栏 994

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Fedora安装NVIDIA(英伟达)官方显卡驱动

Fedora安装NVIDIA官方显卡驱动 NVIDIA官方驱动下载 首先访问NVIDIA官方网站,找到需要安装驱动电脑所对应型号的NVIDIA驱动下载. 会得到一个.run的运行文件 安装过程 #mermaid-svg-Eg2llKSDT4If0QU2 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Eg2llKSDT4If0QU2 .error-icon{fill:#55

weixin_41489136的博客 5218

Fedora40桌面优化、软件安装

Desktop sudo dnf install hydrapaper #双屏壁纸 sudo dnf install gnome-extensions-app #扩展 sudo dnf install gnome-shell-extension-dash-to-dock #扩展-程序坞 sudo dnf install gnome-shell-extension-topicons-plus #扩展-隐藏顶部 Chrome dnf config-manager --set-enabled google

Kadima_cc的博客 1万+

fedora安装nvidia显卡驱动

fedora39安装nvida显卡驱动

weixin_43888694的博客 2202

linux fedora 40 kde版安装kvm命令整理

【代码】linux fedora 40 kde版安装kvm命令整理。

学亮编程手记 554

Arch Linux With KDE6(x11)安装小记

​ 我们的第一步就是禁用refleactor服务(它会自己更新。

charlie114514191的博客 4352

如何在Fedora Linux上安装KDE plasma Desktop。

在本教程中,我们看到了如何在Fedora Linux上安装KDE Plasma桌面环境GUI。KDE 是一个快速响应的桌面环境,它加载了许多自己的应用程序,例如 Dolphin 文件管理器,使您的系统管理变得更加容易。Fedora Linux 和 KDE Plasma 是一个很棒的组合,你一定会喜欢 - 我个人更喜欢它,而不是 Fedora Linux 上的默认 GNOME 环境。在本教程中,我们将逐步完成在Fedora Linux系统上安装KDE Plasma GUI桌面环境的说明。

allway2的博客 4401

Fedora下安装Nvidia驱动

1. 到 Nvidia官网 上下载驱动。得到一个以 run 结尾的安装文件,赋予它可执行权限。chmod +x NVIDIA-Linux-x86*.run2. 重新启动,由于显卡驱动的安装无法 X 服务运行时进行,所以需要进入运行级别 3 。在品牌 Logo 出现后按 ESC 键进入 GRUB 界面,在选择内核,按 e 键进行编辑,在 kernel 行未添加 3 这个参数。比如我的 kernel 行就是从kernel /*********KEYBOARDTYPE=pc KEYTA

SoloSun的专栏 1568

ArchLinux的用户配置和KDE安装

创建用户、配置sudo、安装Plasma桌面环境

qingtian805的博客 1万+

linux x11r6,fedora X11R6问题 cannot find -lX11

引用:pgf90 -o rams-6.0-opt rammain.o -v -Wl,-static -Wl,-zmuldefs rams-6.0-opt.a \./utils/libutils-2.4-opt.a -L/usr/local/ncarg/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib -lX11 -lpthread -ldl -l...

weixin_36448199的博客 380

Loongson3B1500_Fedora28-5系统下在线安装Code::blocks17.12

龙芯Fedora28-5系统下安装Code::blocks 17.121,主机简介2,CODE::BLOCKS安装1,查看源上的软件包,2. 查看软件包详细3. 安装code::blocks 17.124. 打开并使用code::blocks 1,主机简介 cpu类型:loongson3B 1500 主板型号:Lemote A1310 主机系统:Fedora28-5 系统来源:航天龙梦 系统镜像:...

linkasm/v80的专栏 716

linux图形界面编程基本知识(X11, xorg, gdm/gnome)

original url: https://blogs.gnome.org/raywang/2007/10/11/linux%E5%9B%BE%E5%BD%A2%E7%95%8C%E9%9D%A2%E7%BC%96%E7%A8%8B%E5%9F%BA%E6%9C%AC%E7%9F%A5%E8%AF%86/ 以前看过这篇文章,不过当时没有博客,现在又一次看到了,记下来: http:

junmuzi的专栏 1万+
上一篇: LWN:又一次从runc 容器中逃脱!
下一篇: LWN:BPF 里新的共享内存方案!
LinuxNews搬运工
博客等级 码龄7年 438粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值