AlmaLinux更换鼠标样式为Windows样式

news2024/11/27 20:39:29

文章目录

  • 前言
  • 先看看条件与依赖
  • 第一步:测试最终效果
  • 第二步:使用CursorXP修改鼠标样式
    • CurosrXP安装
    • CursorXP使用
  • 第三步:Linux端环境搭建与命令执行
    • Ubuntu
    • Fedora
    • 其他系统均失败
  • 第四步:应用主题

前言

只不过是突发奇想,想着Windows能够使用动态指针,是不是Linux也有呢?于是尝试了一下。当然,这也是一次试试就逝世。

感谢各位开源社区大佬的辛苦付出,尤其感谢CSDN用户~yuyu的文章将Windows上的鼠标指针主题移植到Linux上、StackOverflow上对于libMagickCore-7.Q16HDRI.so.6的讨论

顺便一提,我已经使用云服务构建了一个基本的在线服务,虽然很简陋,但是可以用。点击这里访问。

先看看条件与依赖

其实在将Windows上的鼠标指针主题移植到Linux上一文中已经告诉了基本的方案。为了方便读者们不用再去翻来翻去的对照学习,这里就先回顾一下大佬们说了什么。

配置方案无非就是分几步走:

  • 先下载自己中意的指针包
  • Windows端下载CursorXP
  • 利用CursorXP设置鼠标
  • Linux端配置perl环境,
  • linux端执行转换命令
  • 在应用鼠标主题的系统中下载gnome-tweak
  • 将转换结果放入指定的文件夹
  • gnome-tweak上选择主题

听起来很简单对吧?但为了这简单的几个步骤,我的春节 7 7 7天休假,有满满 4 4 4天在配这鬼玩意。

首先粗略看一下这些个步骤,需要我们不止有一个系统,无论是虚拟机还是双系统。

然后呢,系统也是有要求的,比如需要gnome桌面。倒也不是KDE没有牌面,只是单纯的转换命令只能转为gnome能识别的x11-cursor格式。这也说明,KDE用来做美化的确实不如gnome多。(悲)

其他的环境倒是没什么可说的。就近的几个Linux发行版都会集成,所以也不用担心要不要miniconda或者anaconda之类的。反倒是安装之后,系统可能会查歪了你正在用的perl,导致安装的东西也不知道在哪。

第一步:测试最终效果

你可能很惊讶,什么都没开始做就已经能测试效果了。

首先感谢~yuyu,她为我们开放了破解版的CursorXP以及各种需要的文件,下载链接在这里:

链接:https://pan.baidu.com/s/1mXcBK_a2U2taOUSaJoeIGQ

提取码:2b1p

我们可以首先下载其中可以使用的初音壁纸Miku.tar.gz。先保存到~/Downloads/文件夹下,然后解压:

$ sudo tar -zxvf ~/Downloads/Miku.tar.gz -C /usr/share/icons

当然,哪怕没有gnome-tweak,现在也可以通过一些设置方法查看效果了。

不过为了保险起见,我们还是先下载一下:

$ sudo yum install gnome-tweak -y

打开gnome-tweak主界面,选择侧边栏的Appearance一栏中找到Cursor,对应的下拉框选项中就会有Miku的选项,就像这样:

查看效果

这些自定义的主题选中即生效,非常方便,如下图所示。

查看效果

实在不知道怎么截图的时候把鼠标也给截进去,所以就这样了

那既然知道会有什么效果,也知道最终的文件大概是什么结构,那我们是否成功也就多了一个判断条件。接下来我们就正式开始吧。

第二步:使用CursorXP修改鼠标样式

这一步确实是一个非常考验耐心的一步。你的每一个鼠标都需要一个个对照着进行设置,直到所有的都设置完。

CurosrXP安装

CursorXP这个软件收费是很合理的,因为功能很强大。但至于付不付钱,各位就自行判断了。本着学习的目的,相关的内容是不能在明面上传播的。所以,请允许我这么介绍:

还是上面的百度网盘链接,我们下载CursorXP压缩包,下好后解压会发现有好几个文件。其中,最重要的实际上就只有两个:setup.exekeygen.exe

双击setup.exe就能够开始安装CursorXP软件,这个没什么好说的。就只是接受许可条款后会立即跳转到输入序列号的页面。这个时候,另一个软件就是为了解除一些麻烦而设计的。双击后,复制其中的某个超长随机字符串,就能够粘贴过来,最终成功安装。

CursorXP使用

虽然说我可能在安装方面说的有点难懂,但破解过AdobeAutoDesk等软件的人应该明白我想说什么。所以,接下来就开始使用吧。

为了方便(其实也是出于个人喜好),我这里也就使用B站UP主一葉A4提供的拉菲鼠标主题

P.S.:拉菲鼠标主题链接点击后直接跳转到百度网盘页面,点击提取即可看到内容。如果想看预览,则需要参考UP主的这部介绍视频

然后,就打开我们刚刚安装好的CursorXP进行设置:

CursorXP设置鼠标样式

需要注意的是,第 7 7 7步设置热点主要是为了让鼠标的哪个点能够用于触发动作。观察拉菲这套鼠标主题可以发现,部分元素有着相当明显的热点定位。比如鼠标指针明显是对应右上角的小图标,而不是大大的拉菲。如果热点设置错误的话,很有可能会出现一些相当不友好的体验。

除此之外,也可能是破解版的原因,第 7 7 7步设置热点的过程中往往并不能直接生效,需要另外再次设置才能生效。所以第 7 7 7步可能需要执行两次才能实现。另外,使用起来也并不是很顺畅,还有很多难以言说的奇怪bug,比如应用后不生效、重启后所有修改丢失等等问题。所以需要在第 8 8 8步执行后顺着红色箭头观察预览图中的热点(也就是十字叉的位置)是否与你所希望的位置相符。如果不符就需要反复调整。

经过以上步骤,我们就拿到了laffey.CurXPTheme文件了。当然,这个文件名是自定义的,并不是自适应的。

第三步:Linux端环境搭建与命令执行

这个步骤经历了太多磨难,所以也很难说到底是哪个步骤出了问题。所以,为了解除疑虑,我们直接采用最保守的方法:反复测试。也就是说,无论什么情况,按照下面说的这个步骤,大致上是不会有误的。

Ubuntu

测试过程中采用阿里云ECS服务器,选用Ubuntu 20.04 20.04 20.04版本,并且是重新安装的、什么多余的包都没有的系统。

其中命令包含:

$ apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y
$ apt-get install libconfig-inifiles-perl perlmagick imagemagick x11-apps unzip -y
$ chmod u+x 104659-sd2xc-2.5.pl
$ ./104659-sd2xc-2.5.pl --install laffey.CurXPTheme

是的没错我为了这 4 4 4行命令花了 4 4 4天。

其他的命令就单纯是用scp移动文件了。

这几行代码甚至都没有解析的余地。硬是要解析的话,第一行就是新系统需要update一下才能开始安装,然后就是根据文件104659-sd2xc-2.5.pl中所展示的说明补包,再赋予可执行权限,最后执行。

执行过程中,laffey.CurXPTheme参数就是我们在第一步中利用CursorXP另存为的鼠标指针主题,执行之后将生成laffey.tar.gz压缩包,里面是x11-cursor文件,包含一个存放资源文件的cursor文件夹与一个声明鼠标指针主题的声明文件index.theme。而--install参数则是将laffey.tar.gz解压到~/.icons/文件夹下,从而使得鼠标指针主题能够直接生效。

那么,我这 4 4 4天都在干什么呢?没错,我最开始的时候没有Ubuntu

哼,哼,哼,啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊(

那么其他系统呢?当然,文件104659-sd2xc-2.5.pl也给出了说明:Fedora也能用。那就来试试。

Fedora

$ yum install ImageMagick ImageMagick-perl perl-Config-IniFiles xcursorgen unzip -y
$ chmod u+x 104659-sd2xc-2.5.pl
$ ./104659-sd2xc-2.5.pl --install laffey.CurXPTheme

由于yum并不像apt需要update,这个命令也就更短了。

其他系统均失败

很不幸,除了这两个以外,任何系统都不行。主要是包太难配了。

目前测试了AlmaLinuxRockyLinux,虽然都同为yum源,但是有些包就是缺。于是考虑从源码角度执行。下面是大致过程:

$ sudo yum install perl-CPAN # cpan下载包
$ cpan # 用于换源
cpan[1]> o conf urllist pop # 删除原有源
cpan[2]> o conf commit # 保存删除
cpan[3]> o conf urllist push http://mirrors.ustc.edu.cn/CPAN/ # 新增中科大源
cpan[4]> o conf commit # 保存新增
$ perl -MCPAN -e "install Image::Magick" # 安装
log[perl]> # include <MagickCore/MagickCore.h> -> No Such File(日志显示:没有这个头文件)
$ sudo yum install ImageMagick-perl -y # 补包
$ sudo rpm -ivh https://repo.alimalinux.org/almalinux9/synergy/x86_64/os/Packages/xcursorgen-1.0.7-6.el9.x86_64.rpm # 再补包
$ ./104659-sd2xc-2.5.pl --install laffey.CurXPTheme # 执行
log[./]> 0 # 日志显示转成功的文件数量,为0表示什么都没转
$ tar -zxvf laffey.tar.gz && ls laffey/cursor # 解压并查看资源文件
log[tar]> '' # 什么都没有
$ sudo dnf install ImageMagick ImageMagick-perl perl-Config-IniFiles xcursorgen unzip -y # 又补包
log[dnf]> xcursorgen not found # 没有这个东西,尝试了dnf search,也没有
$ ./104659-sd2xc-2.5.pl --install laffey.CurXPTheme # 执行
log[./]> Exception 420: no decode delegate for this image format `PNG` # 直接报错
$ sudo yum install libjpeg libjpeg-devel libpng libpng-devel libtiff libtiff-devel libungif libungif-devel -y # 又双叒叕补包
$ ./104659-sd2xc-2.5.pl --install laffey.CurXPTheme # 执行
log[./]> Exception 420: no decode delegate for this image format `PNG` # 没效果

所以,也就到此为止了。目前只有UbuntuFedora两个系统是可以使用的。

第四步:应用主题

当然,我当前安装的AlmaLinux已经运行了有些日子了,不可能说换就换。所以,这上面的操作都是直接用ECS完成的。所以,从ECS上下载下来:

$ scp root@www.sakebow.cn:/data/www/images/laffey.tar.gz ~/Downloads/

然后运用:

$ sudo tar -zxvf ~/Downloads/laffey.tar.gz -C /usr/share/icons/

接下来就可以使用gnome-tweak应用这个主题了!

设置成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1450723.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

相机图像质量研究(17)常见问题总结:CMOS期间对成像的影响--靶面尺寸

系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结&#xff1a;光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结&#xff1a;光学结构对成…

如何使用python在三天内制作出一个赛车游戏

制作一个赛车游戏是一个复杂的过程&#xff0c;涉及多个方面&#xff0c;如游戏设计、图形渲染、物理引擎、用户输入处理等。在三天内完成这个任务可能非常具有挑战性&#xff0c;特别是如果你是初学者。但如果你有基本的Python编程知识和一些游戏开发经验&#xff0c;以下是一…

假期day12

任务调度算法&#xff1a; 1.抢占式调度&#xff1a;高优先级的任务优先执行&#xff0c;并且可以打断低优先级的任务执行。 2.时间片轮转&#xff1a;相同优先级的任务&#xff0c;拥有相同的时间片&#xff08;1ms&#xff09;&#xff0c;当时间片被耗尽&#xff0c;就退出…

Github项目推荐-Tiny-Rdm

项目地址 GitHub - tiny-craft/tiny-rdm: A Modern Redis GUI Client 项目简述 一个开源的Redis管理工具&#xff0c;有漂亮的界面和丰富的功能。使用的编程语言如下 项目截图

C语言第二十五弹---字符函数和字符串函数(上)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 目录 1、字符分类函数 2、字符转换函数 3、strlen的使用和模拟实现 4、strcpy 的模拟实现 5、strcat 的模拟实现 6、strcmp 的模拟实现 7、strncpy 函数的使用 总结…

【Pygame手册02/20】pygame模块display控制窗口和屏幕

目录 一、说明二、pygame.display接口函数2.1 函数表格2.2 pygame.display的功能 三、详细的函数调用3.1 pygame.display.init()3.2 pygame.display.quit()3.3 pygame.display.get_init()3.4 pygame.display.set_mode()3.5 pygame.display.get_surface()3.6 pygame.display.fl…

qml之Control类型布局讲解,padding属性和Inset属性细讲

1、Control布局图 2、如何理解&#xff1f; *padding和*Inset参数如何理解呢&#xff1f; //main.qml import QtQuick 2.0 import QtQuick.Controls 2.12 import QtQuick.Layouts 1.12 import QtQuick.Controls 1.4 import QtQml 2.12ApplicationWindow {id: windowvisible: …

ChatGPT绘图指南:DALL.E3玩法大全(二)

在前一篇文章中&#xff0c;我们介绍了什么是 DALL.E3 模型&#xff0c; DALL.E3 有什么优势&#xff0c;使用DALL.E3 的两种方法&#xff0c;以及DALL.E3 绘图的基本规则&#xff0c; 感兴趣的朋友请前往查看: ChatGPT绘图指南&#xff1a;DALL.E3玩法大全(一). 接下来&#…

插值(一)——多项式插值(C++)

插值 插值的作用是可以将原本比较难计算的函数转换为误差在一定范围内的多项式&#xff0c;比如在单片机中直接计算 x 、 log ⁡ 2 x \sqrt{x}、\log_2x x ​、log2​x之类的函数是比较麻烦的&#xff0c;但是使用插值的方法就可以将其转换为误差可控的只有乘法和加减法的多项…

EF Core 模型优先——根据类对象创建数据表

需要的nuget包&#xff1a; Microsoft.EntityframeworkCore.SqlServer &#xff08;根据自己的数据库类型选择对应的nuget包&#xff09; Microsoft.EntityframeworkCore.Tools Microsoft.VisualStudio.Web.CodeGeneration.Design 说明&#xff1a; &#xff08;1&#xf…

【C++】C++11上

C11上 1.C11简介2.统一的列表初始化2.1 {} 初始化2.2 initializer_list 3.变量类型推导3.1auto3.2decltype3.3nullptr 4.范围for循环5.final与override6.智能指针7. STL中一些变化8.右值引用和移动语义8.1左值引用和右值引用8.2左值引用与右值引用比较8.3右值引用使用场景和意义…

机器学习中的10种非线性降维技术对比总结

降维意味着我们在不丢失太多信息的情况下减少数据集中的特征数量&#xff0c;降维算法属于无监督学习的范畴&#xff0c;用未标记的数据训练算法。 尽管降维方法种类繁多&#xff0c;但它们都可以归为两大类:线性和非线性。 线性方法将数据从高维空间线性投影到低维空间(因此…

排序算法---计数排序

原创不易&#xff0c;转载请注明出处。欢迎点赞收藏~ 计数排序&#xff08;Counting Sort&#xff09;是一种线性时间复杂度的排序算法&#xff0c;其核心思想是通过统计待排序元素的个数来确定元素的相对位置&#xff0c;从而实现排序。 具体的计数排序算法步骤如下&#xff…

【Go语言】Go项目工程管理

GO 项目工程管理&#xff08;Go Modules&#xff09; Go 1.11 版本开始&#xff0c;官方提供了 Go Modules 进行项目管理&#xff0c;Go 1.13开始&#xff0c;Go项目默认使用 Go Modules 进行项目管理。 使用 Go Modules的好处是不再需要依赖 GOPATH&#xff0c;可以在任意位…

[leetcode刷题] 组合

对于递归回溯我觉得是需要多写多分析&#xff0c;递归三部曲&#xff1a;1.返回值和参数&#xff1b;2.终止条件&#xff1b;3.单层递归逻辑 1.通常情况下返回值都是void&#xff0c;参数的话根据实际需求设计&#xff0c;如果设置了全局变量那输入参数就可以少写几个&#xf…

Elasticsearch:特定领域的生成式 AI - 预训练、微调和 RAG

作者&#xff1a;来自 Elastic Steve Dodson 有多种策略可以将特定领域的知识添加到大型语言模型 (LLM) 中&#xff0c;并且作为积极研究领域的一部分&#xff0c;正在研究更多方法。 对特定领域数据集进行预训练和微调等方法使 LLMs 能够推理并生成特定领域语言。 然而&#…

009集——磁盘详解——电脑数据如何存储在磁盘

很多人也知道数据能够保存是由于设备中有一个叫做「硬盘」的组件存在&#xff0c;但也有很多人不知道硬盘是怎样储存这些数据的。这里给大家讲讲其中的原理。 首先我们要明白的是&#xff0c;计算机中只有0和1&#xff0c;那么我们存入硬盘的数据&#xff0c;实际上也就是一堆0…

猫头虎分享已解决Bug ‍ || Go Error: no Go files in /path/to/directory

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

JVM(5)面试篇

1 什么是JVM&#xff1f; 关联课程内容 基础篇-初识JVM基础篇-Java虚拟机的组成 回答路径 JVM的定义作用功能组成 1、定义&#xff1a; JVM 指的是Java虚拟机&#xff08; Java Virtual Machine &#xff09;。JVM 本质上是一个运行在计算机上的程序&#xff0c;他的职责是…

猫头虎分享已解决Bug ‍ || Python Error: IndentationError: expected an indented block

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …