标签: gnome

什么是开发gnome面板小程序的最新方法(使用python)

今天我已经切换到GNOME(来自XFCE),发现一些很酷的东西丢失了,我想(尝试)自己做.我试图找到有关如何开发Gnome applet(你在面板中放置的项目)的信息,最有可能是在Python中,但这并不是一个很难的限制.

我发现文章'用Python编写Gnome applets',但它看起来很旧(2004).这里提到的第一件事是bonobo(无论是什么),但是Bonobo上的Gnome页面不鼓励它.

Gnome网站有一个关于applet开发的页面,但是这个页面甚至更旧(2003)和不完整(很多fixme write).

那么目前的方法是什么?我不想学习过时的东西.

python pygtk gnome

7
推荐指数
1
解决办法
1092
查看次数

Qt应用程序需要KDE吗?

是否所有Qt应用程序都需要安装KDE?如果Qt运行时与GNOME一起安装就足够了吗?我可以让Qt应用程序看起来像GNOME下的GTK应用程序吗?有谁能请我指点一些文章,详细说明Qt,GTK,KDE,GNOME,X之间的关系?

linux qt kde gnome xserver

7
推荐指数
4
解决办法
5212
查看次数

如何从Ruby访问GNOME密钥环?

我需要从Ruby编程语言中访问GNOME密钥环.但是,我找不到任何宝石的红宝石库.具体来说,我正在尝试获取桌面触控的Oauth键.

如何实现这一目标?

ruby gnome

7
推荐指数
1
解决办法
485
查看次数

Hashbang为Gnome .desktop文件

我希望能够#!在我的.desktop文件顶部添加注释,以便如果它具有执行权限并执行,它将实际运行.但是,我不知道.desktop文件的解释器是什么,所以我不知道/usr/bin/在hashbang中写入哪个文件.有任何想法吗?


编辑:

到目前为止,我已经制作了一个小的bash脚本,execdesktop可以执行桌面文件:

`sed -nr 's/Exec=(.*)$/\\1/p' $1`
Run Code Online (Sandbox Code Playgroud)

如果我然后将以下内容添加到我的.desktop文件中:

#!/usr/bin/execdesktop
Run Code Online (Sandbox Code Playgroud)

然后运行正常.这种方法有效,但我不想使用它,因为它需要安装execdesktop.

linux bash scripting gnome

7
推荐指数
3
解决办法
3498
查看次数

如何阻止linux程序进行打印筛选?

我需要阻止我的用户打印筛选我的程序显示的数据.现在我的想法是使它成为一个全屏程序,可能会调用任何其他Linux快捷方式或应用程序被阻止,并且打印屏幕键被阻止.这种方法是否正确?我该如何完成这项工作?

更新:我的用户仅限于不运行虚拟机,他们没有摄像头.他们也在使用GNOME桌面环境.

更新:系统是我的.我刚刚授予他们临时访问权限,因此系统或其操作系统不会被篡改.他们无法插入任何USB设备,而且用户大多都不知道linux.

linux x11 security screenshot gnome

7
推荐指数
2
解决办法
1007
查看次数

如何在Gjs代码中设置包含路径?

因为我可以看到,GJS imports,只加载/usr/share/gjs-1.0/usr/lib/gjs-1.0默认.我想模块化一个应用程序,就像我们可以用节点做的那样,但我必须找到相对于脚本文件的模块.

我找到了两种添加包含路径的方法:

  1. gjs --include-path=my-modules my-script.js
  2. GJS_PATH=my-modules gjs my-script.js

...但两者都与当前目录相关,而不是文件(不经意地),并且需要在命令行上声明它们,这使得这不必要地复杂.

如何在Gjs代码中设置包含路径?(所以我可以使这个相对于文件)

或者......还有另一种从任何地方导入文件的方法,比如在python中?

(请,你不需要提出使用shell脚本启动解决--include-pathGJS_PATH问题,这是显而易见的,但不那么强大.如果我们没有更好的解决办法,我们与生存.)

javascript import gnome path gjs

7
推荐指数
2
解决办法
2275
查看次数

如何获取nautilus用于给定文件的缩略图?

Nautilus向我显示一个文件的缩略图,如果它是一个图像,它会显示一个预览,如果它是一个视频,它将显示视频中的一个帧,如果它是一个文档,它将显示我的应用程序图标.

我如何访问图像?

我看到它们被缓存,~/.thumbnail/但它们都被赋予了独特的名称.

c linux gnome thumbnails

7
推荐指数
1
解决办法
1625
查看次数

GValue,GTypeValueTable,GTypeInfo和GParamSpec的目的

GObject库真的很有文件记录.很难确定创建实体的目的.也就是说,我不明白的角色GValue,GTypeValueTable,GTypeInfo,GParamSpecTypeData.

简而言之,类型注册的过程如下.每种类型由TypeNode结构表示.有两种TypeNode结构static_fundamental_type_nodes array存储:用于存储TypeNodes静态基本类型和static_type_nodes_ht用于静态非基本类型的哈希表.在基本类型的情况下,每个GType只是TypeNode非基本类型或TypeNodein的索引的对应的存储器地址static_fundamental_type_nodes.动态类型会发生什么 - 我不知道,如果可以,请解释我.相应的代码驻留在gtype_init函数中,负责类型系统的初始化:http://git.gnome.org/browse/glib/tree/gobject/gtype.c#n4323 .

在此输入图像描述

GValue,GParamSpec并且GObjectGTypes自己,所以它们被注册为类型.

GValue 用于通过它注册新类型值,但如何?

GParameters并且GParamSpec似乎需要注册GObject类型(不确定).究竟是怎么做到的?每个人的角色是什么?

最重要的:是什么的角色GTypeValueTable,GTypeInfoTypeDataTypeData被引用TypeNode并包含GTypeValueTable子结构BoxedData,ClassData,IFaceData,InstanceData(为什么Instance,我们不是注册类型?).而且,它们似乎互相复制,导致它们全部包含对base_init/finalize的引用,class_init/finalize具有引用GTypeValueTable.

所以,GObject papas,如果你正在读这篇文章,请自己解释一下!描述您使用的那些结构的目的.

gtk gnome gobject glib

7
推荐指数
1
解决办法
2114
查看次数

Lang.Class在Javascript中

我正在尝试使用GJS(Gnome Javascript)开发Gnome Shell扩展,但是,我遇到了Lang库(我认为它是一个库,如果不正确的话).但我在网上找不到任何有关它的资源.

在代码中它看起来像这样:

const Lang = imports.lang;

const ObjectA = new Lang.Class({ ... });
Run Code Online (Sandbox Code Playgroud)

我在哪里可以找到有关它的文档?它是一个Gnome lib吗?一个Mozilla lib?

javascript gnome gnome-shell-extensions

7
推荐指数
1
解决办法
1762
查看次数

如何在nomachine远程桌面上运行xmonad?

我正在尝试配置NoMachine远程桌面来运行xmonad.我一直遇到的一件事是默认的xmonad 安装说明需要注销并重新登录.在NoMachine等远程桌面应用程序中,无法以用户身份注销 - 只能断开与会话的连接.

我可以选择创建新的Gnome,KDM或XDM桌面,也可以选择自定义会话,例如运行默认的X客户端脚本或启动时的自定义命令.

有没有人有最好的配置经验?

haskell gnome remote-desktop xmonad nomachine

7
推荐指数
1
解决办法
292
查看次数