目录
目录README.md

项目简介:

开放麒麟(openKylin)社区的愿景是:在开源、自愿、平等和协作的基础上,由各种企业、非营利性组织、社团组织、高等院校、科研机构和个人开发者共同组成的一个开源社区。通过实行透明而公开的治理,来夯实开源协作开发,成为一个面向全球的开源社区。优麒麟(Ubuntu Kylin)作为共创麒麟社区的贡献者之一参与社区共建。

题目汇总:

桌面环境

  1. ktouch头部标题栏图标显示优化 (难度:★) 项目:ubuntukylin-theme 描述:优化ktouch头部标题栏图标显示 运行环境:优麒麟22.04 导师:段凯文 duankaiwen@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ubuntukylin-theme/issues/58516

  2. 蓝牙设备连接信息提示时间控制 (难度:★★) 项目:ukui-bluetooth 描述:除手机和PC类型需要延时提示成功信息外,其他类型的设备无需延迟提示信息 导师:邓托 dengtuo@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-bluetooth/issues/58518

  3. 锁屏界面添加系统通知消息提示 (难度:★★) 项目:ukui-screensaver 描述:锁屏状态下,在界面展示通知中心的消息数目及消息内容 导师:杨敏 yangmin@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-screensaver/issues/58519

  4. 创建”语言管理“插件 (难度:★★★) 项目:ukui-control-center 描述:在控制面板的【时间语言】组中创建一个名为”语言管理”的插件 ● 插件无需显示在首页; ● 该插件用于展示、安装系统所支持的所有语言; ● 可以移除系统中已安装的语言(简体中文和English除外) 导师:冯超 fengchao@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-control-center/issues/58528

  5. QT基础控件样式调试工具 (难度:★★★) 项目:qt5-ukui-platformtheme 描述:能够开发出一个包含了所有QT基础控件,并且包含了QT基础控件的所有状态的样式的工具,方便看到目前系统主题中的控件样式效果,可以扩展功能实现控件样式的自定义调整。 技术要求 ● 熟悉QT C++编程。 ● 熟悉QT基础控件的实现方式与绘制流程。 ● 熟悉QT QPA PlatformTheme机制。 产出要求 ● 至少需要包括以下QT基础控件:QPushButton,QToolButton,QCheckBox,QLineedit,QSpinBox,QListWidget,QProgressBar,QRadioButton,QScrollBar,QCombobox,QSlider,QTableWidget,QTabWidget,QTreeWidget,QMenu ● 需要包含控件的各个状态的显示,例如:所有控件的enable与disable状态,按钮的平摊与凸起状态,滑动条与滚动条的横状与树状,QTableWidget的有无边框,QListWidget的有无斑马线等等,对于某个控件,尽量包括控件的所有特征状态,把所有状态的样式都显示出来。 ● 可以扩展功能,实现控件的自定义样式调整,供设计师进行参考。 注意事项 ● 工具可以参考oxygen-demo5实现方式。 导师:席博文 xibowen@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/qt5-ukui-platformtheme/issues/58527

  6. Linux自定义快捷键 (难度:★★★) 项目:ukui-settingds-daemon 描述:UKUI桌面环境离不开系统级快捷键,本项目计划实现开一款快捷键管理模块,检测当前所有系统快捷键(kglobalaccel与x接口),并可增加自定义快捷键快速打开应用,且可提示与已注册快捷键冲突。 技术要求 ● 能够基于Qt实现简单的UI界面。 ● 了解kglobalaccel的使用。 ● 了解linux的显示框架。 ● 了解xgrabkey的使用。 产出要求 ● 实现简单的UI界面,通过UI界面可以展示系统所有快捷键。 ● 实现简单的UI界面,可设置快捷键。 导师:孙大高,sundagao@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-settings-daemon/issues/58529

  7. 文件批量重命名插件 (难度:★★★) 项目:peony-extensions 描述:UKUI桌面环境的很多组件都支持插件扩展,比如文件管理器就可以通过插件不断扩展对文件的操作。本项目计划开发一款针对文件进行批量重命名的工具,以便捷文件的批量管理。 技术要求 ● 熟悉Linux环境C++多线程编程。 ● 能够基于Qt实现简单的UI界面。 产出要求 ● 选中的批量文件,右键批量重命名后,弹出一个框,展示所有选中文件,可以对每个文件进行重命名操作,全部操作完毕确认,可以批量应用重命名,取消则退出操作。 ● 提供快捷方式单步操作回退、退出重命名状态或者取消所有操作 ● 快速进行相关操作无性能问题 导师:何美宏 hemeihong@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/peony-extensions/issues/58530

  8. 桌面扩展悬浮工具 (难度:★★★) 项目:新项目 描述:模拟iphone悬浮按钮,实现桌面扩展的悬浮工具,可以在桌面上任意位置悬浮,并可以提供边缘停靠功能,可以点击悬浮按钮显示菜单界面,选择具体的快捷功能。 技术要求 ● 熟悉Qt开发框架 ● 熟悉Qt的动画效果 ● 熟悉DBus通信 产出要求 ● 悬浮按钮的显示需要不受窗口管理,并保持在桌面顶部,按钮界面不操作时可保持半透明优化视觉体验,尽可能的不影响用户观看其他内容 ● 按钮的拖动与点击效果,需要考虑鼠标和触摸都可使用 ● 停靠动作尽量要有动画效果 ● 菜单界面的功能需要设计好结构方便添加和修改功能选项 注意事项 ● 需要新建项目 ● 菜单功能仅实现唤起虚拟键盘即可,虚拟键盘使用Onboard键盘,需提前安装 导师:王桂喜,wangguixi@kylinos.cn

  9. 空闲监控功能优化 (难度:★★★) 项目:ukui-session-manager 描述:空闲监控功能是一个监控当前系统是否有用户正在使用、操作的功能,若超过设定的时间内无用户操作,则判定系统进入空闲状态,执行系统设定的功能,如锁屏,睡眠,关闭显示器等。 目前的空闲监控功能对系统是否正在被用户操作的判断只有鼠标和键盘操作,只有鼠标和键盘有操作,才会被判定为正在被使用状态。 现在考虑对外接设备的拔插:u盘,显示器,鼠标,键盘,网线,电源(仅考虑笔记本),手机等对电脑的拔插也判定系统处于使用状态,中断对空闲的状态。 技术要求 ● 熟悉xlib库的使用。 ● 熟悉X的底层事件。 产出要求 ● 外接设备的拔插也会中断空闲状态 ● 不会造成大量的性能开支 注意事项 ● 可以参考libkf5idletime5对鼠标键盘监控 导师:刘亮 liuliang@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-session-manager/issues/58531

  10. 多任务视图显示优化 (难度:★★★) 项目:ukui-window-switch 描述:按下win+tab打开多任务视图界面,多任务视图内的小窗口可以拖动至其他工作区,但如果拖动窗口不进入其他工作区时松开鼠标,窗口会立刻在原地消失,出现在拖动前的位置;工作区的数量目前最多为6个,不足以满足使用需求。连接外接显示器,拓展模式下,按下alt+tab打开快速切换界面,部分背景显示在外显上。以上问题直观的影响了用户的使用体验,本项目意在解决这些问题,提高用户的使用体验。 技术要求 ● 熟悉Qt开发框架 ● 熟悉Qt的动画效果 产出要求 ● 多任务视图窗口拖动松开时,增加窗口移动回原处并恢复正常大小的动画效果 ● 多任务视图工作区最大数量为20个 ● 窗口切换背景只显示在一个屏幕上 注意事项 ● 可能会涉及到修改应用源码的问题,可自己提供几个用来测试的demo即可 导师:焦点,jiaodian@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-window-switch/issues/58532

  11. UKUI桌面环境插件管理器 (难度:★★★★) 项目:新项目 描述:UKUI桌面环境的很多组件都支持插件扩展,目前各个组件的插件均为单独管理。本项目计划开发一款针对桌面组件插件的统一管理工具,提供插件的浏览,安装,更新以及卸载功能,使用户可以通过插件管理器方便的进行桌面扩展。 技术要求 ● 熟悉Linux环境C++多线程编程。 ● 能够基于Qt实现简单的UI界面。 产出要求 ● 实现基于指定地址或软件源的插件浏览,安装,更新和卸载功能。 ● 实现简单的UI界面,所有插件管理操作均可以通过UI界面实现。 注意事项 ● 插件下载地址可能来自系统软件源或者其他地址(如gitee),可以添加地址配置功能。 ● 需要创建新项目 导师:张鹏飞 zhangpengfei@kylinos.cn

  12. UKUI全局搜索语音智能化 (难度:★★★★) 项目:ukui-search 描述:UKUI桌面环境下的全局搜索组件目前可实现文件、文件夹、文件、文本内容、设置项等多种类型搜索,不过搜索内容的输入及操作目前仅支持键鼠,功能较为单一。因此本项目计划开发一款集成语音搜索功能和搜索结果操作功能的智能化语音系统,使用户通过语音即可完成搜索及搜索结果的相应操作。 技术要求 ● 熟悉深度学习框架如Pytorch、Tensorflow、Paddle等及其开发流程。 ● 熟悉Linux环境C++编程。 ● 能够基于Qt实现简单的UI界面。 产出要求 ● 实现搜索语音转文字、语义分析及界面操作等功能。 ● 实现简单的UI界面。 注意事项 ● 功能模型内存资源占用小,准确率高。 导师:纪笑旭 jixiaoxu@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-search/issues/58533

  13. 功耗分析工具 (难度:★★★★) 项目: ukui-power-manager 描述: 能源问题的大背景下,计算机功耗问题也越来越受到关注。UKUI桌面环境下缺少一款能够分析系统进程功耗的工具,该工具能够统计出系统进程能耗的基本信息,并且列举出能耗较高的几个进程,有利于用户或开发者更好地对计算机功耗进行分析和管控。 技术要求 ● 能够基于Qt实现简单的UI界面,了解信号槽 ● 了解html、json等基本文件格式 ● 了解.desktop文件 产出要求 ● 实现简单的UI界面,通过UI界面展示能耗较高的前10个进程 ● 实现简单的UI界面,能够提示当前短时间内功耗较高的进程 导师:何朴尧 hepuyao@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-power-manager/issues/58524

  14. Linux输入设备管理器 (难度:★★★★★) 项目:ukui-settings-daemon 描述:UKUI桌面环境管理用户输入输出设备(键盘、鼠标、触摸板)的部分参数,本项目计划发开一款linux输入设备的管理软件,管理输入设备的全部参数。 技术要求 ● 熟悉Linux环境C++多线程编程。 ● 能够基于Qt实现简单的UI界面。 ● 了解xlib库的使用。 ● 了解linux的显示框架。 产出要求 ● 实现简单的UI界面,通过UI界面可以展示所有输入设备(键盘、鼠标、触摸板)的参数。 ● 通过操作相关功能,可设置所有设备的参数。 导师: 孙军浩,sunjunhao@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/ukui-settings-daemon/issues/58523

  15. 应用启动优化 (难度:★★★★★) 项目:kylin-app-manager 描述:不考虑硬件的影响,应用的启动速度直接影响到了用户的直观体验。本项目意在预先加载Qt应用程序所需要的动态库,来加快基于Qt开发的应用程序的启动速度。 技术要求 ● 熟悉Qt开发框架 ● 熟悉动态库的使用和原理 产出要求 ● 同一硬件平台上通过该组件启动应用的时间较之前快1倍以上 注意事项 ● 可能会涉及到修改应用源码的问题,可自己提供几个用来测试的demo即可 导师:郭鹏飞,guopengfei@kylinos.cn

RISC-V

  1. 优麒麟RISC-V系统启动优化 (难度:★★★★) 项目:优麒麟RISC-V系统 描述:本项目需要了解Linux内核各部分功能,适度做内核裁剪来优化启动时间。 技术要求 ● 熟悉Linux内核源码,了解内核各部分功能以及内核编译方法。 ● 熟悉qemu及交叉编译工具链的使用,了解系统镜像的制作方法。 产出要求 ● 内核部分启动时间优化5%以上。 ● 输出内核各部分功能调研文档。 注意事项 ● 使用qemu或远程提供RISC-V架构的hifive-unmatched开发板。 导师:丁晨光 dingchenguang@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/riscv/issues/58521

  2. RISC-V开发板睡眠功能适配 (难度:★★★★★) 项目:优麒麟RISC-V系统 描述:众所周知,系统睡眠功能对于系统具有重要意义,本课题旨在了解linux内核电源管理系统,并完善内核中对于riscv架构睡眠流程的代码逻辑,实现系统睡眠功能。 技术要求 ● 熟悉Linux操作系统内核。 ● 熟悉linux内核电源管理系统。 ● 了解设备驱动开发的流程及设备驱动模型。 ● 熟悉Linux环境C编程。 ● 了解linux系统睡眠流程。 ● 了解hifive unmatched相关硬件知识。 产出要求 ● 通过系统界面操作或系统命令,能够实现系统睡眠。 ● 输出相应说明文档,阐述实现逻辑。 注意事项 软件运行环境为Ubuntu Kylin 20.04 pro (RISC-V) 硬件环境:使用qemu或远程提供RISC-V架构的hifive-unmatched开发板。 导师: 李卓珩,lizhuoheng@kylinos.cn 链接:https://www.gitlink.org.cn/cckylin/riscv/issues/58522

AI功能

请利用KylinOS系统所带的AI开发框架(CCAI Service Framework)来实现以下的AI功能。 CCAI Kylin repo download link: TBD by Kylin CCAI opensource repo link: https://github.com/intel/cloud-client-ai-service-framework CCAI documentation link: https://intel.github.io/cloud-client-ai-service-framework/ 导师:zhenyu.liang@intel.com

  1. 证件图片分类(难度★★★) 项目:photo-id-classification 描述:能够在图片库中识别以下标准证件或卡片中的至少两种:身份证、银行卡、毕业证、驾驶证、结婚证。 技术要求: ● C/C++或者python语言 ● Intel CCAI API ● 神经网络图片分类模型设计与训练 产出要求: ● 从图片库中将同类证件照片分别按目录存放

  2. 语音操作控制(难度★★★★) 项目:voice-control 描述:能够对输入的语音进行热词识别,来实现对应的功能,比如打开邮件程序、播放视频等。 技术要求: ● C/C++或者python语言 ● Intel CCAI API ● 神经网络图语音识别模型的使用 产出要求: ● 根据语音触发事件 ● 可以对热词进行增加、删除

  3. 车辆统计(难度★★★★) 项目:vehicle-statistics 描述:对一段视频流中出现车辆进行统计 技术要求: ● C/C++或者python语言 ● Intel CCAI API ● 视频流处理 产出要求: ● 统计出现车辆的数量 ● 统计车辆的速度

  4. 视频会议虚拟场景(难度★★★★★) 项目: conference-virtual-scene 描述:能够对视频会议流中的前景和背景智能处理。 技术要求: ● C/C++或者python语言 ● Intel CCAI API ● 视频流处理 产出要求: ● 对视频背景进行虚化或者替换 ● 对视频中的人物脸部进行虚拟角色化(利用卡通或者图片替换人物脸部)

开放性题目

  1. 针对优麒麟系统进行测试,发现bug,修复bug并成功合并patch,以数量和重要性等级作为评判标准;
  2. 针对优麒麟系统进行体验,提出新功能蓝图,审核通过后进行开发,审核通过后进入优麒麟默认镜像或软件仓库,以功能难度、实用性等作为评判标准。

优麒麟下载地址:https://www.ubuntukylin.com/downloads/osdownload-cn.html

关于
73.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号