GVKun编程网logo

如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?(linux做窗口)

2

在本文中,我们将带你了解如何为使用X11的linux创建一个像浮动窗口一样的系统托盘?在这篇文章中,我们将为您详细介绍如何为使用X11的linux创建一个像浮动窗口一样的系统托盘?的方方面面,并解答l

在本文中,我们将带你了解如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?在这篇文章中,我们将为您详细介绍如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?的方方面面,并解答linux做窗口常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的Chrome/Chromium 的 Ozone X11 代码全面启用,旧版 X11 代码将删除、Google Drive API Python - 如何为使用 api 下载的文件设置目的地、Linux - SSH + X11 forwarding + X-Deep/32、Linux X11 java 图形验证码部分服务器显示 X11 的 DISPLAY 参数问题

本文目录一览:

如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?(linux做窗口)

如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?(linux做窗口)

如何解决如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?

我想在 Windows 平台上创建一个这样的小窗口,但我想在 linux 上这样做,最好使用 python。

在 Windows 中显示下方窗口就像一个系统托盘,它始终位于顶部并且可以通过拖动来移动。

那么我如何在 linux 中实现这一点?

enter image description here

Chrome/Chromium 的 Ozone X11 代码全面启用,旧版 X11 代码将删除

Chrome/Chromium 的 Ozone X11 代码全面启用,旧版 X11 代码将删除

Igalia 开发者 Maksim Sisov 于日前在社交平台上对外宣布称, Chrome/Chromium 网络浏览器现在已经完全启用了对 Ozone/X11 平台的支持,包括有 Beta 版和 Stable 版渠道。并表示,在现在这种大好的支持形势下,他们还将致力于废除非 Ozone/X11 的路径,同时在不久的将来删除传统的 X11 路径。

我们很高兴地宣布,Ozone/X11 已经在 STABLE 和 BETA 通道上 100% 启用。我们已经在努力废除非 Ozone/X11,并将开始删除旧的传统 X11 路径。

正如 Phoronix 所述,相当长的一段时间以来,开发人员都在通过 Chrome 的 Ozone 平台抽象代码,努力地从同一个构建中提供良好的 Wayland 和 X11 支持。此前,在 X11/X.Org 上使用 Ozone 还是一个实验性的选择;今年夏天,则终于成功地通过了一个极早期试验(origin trial)。

接下来,随着这个 Ozone/X11 使用的里程碑的完成和默认情况的推进,Igalia 和其他相关的开发者还将致力于运送 Ozone/Wayland 后端。在那之后,相同的Chrome/Chromium 浏览器构建在 X11 和 Wayland 上应该都可以运行良好。

实际上,长路漫漫,有关 Chrome Ozone 工作的讨论已经持续了有近十年之久。感兴趣的用户可以通过 googlesource.com 了解更多关于 Ozone platform layer 的细节。

Google Drive API Python - 如何为使用 api 下载的文件设置目的地

Google Drive API Python - 如何为使用 api 下载的文件设置目的地

下载的数据仍然存储在 RAM 中。这会将数据复制到您的 python 文件所在的文件夹。

while done is False:
    [....]

# This is where it downloads the file
fh.seek(0)
with open('your_filename.pdf','wb') as f:
    shutil.copyfileobj(fh,f,length=131072)

如果您遇到问题,我找到了这个答案 here。

Linux - SSH + X11 forwarding + X-Deep/32

Linux - SSH + X11 forwarding + X-Deep/32

Linux - SSH + X11 forwarding + X-Deep/32

由  sunchiahome 在 週一, 06/22/2009 - 11:09 發表

通常我在管理 Linux 時都會使用到 SSH 直接透過桌機去連接,如果真的非得用到 x-window 時我會使用 VNC(Virtual Network Computing) 來當作遠端的連線,但老實說 VNC(Virtual Network Computing)並不是很安全.

前幾天看到一個同事採用的是 SSH + X11 forwarding 再加上 x-win32 ,就可以在 windows 的桌機使用 Linux 的 X-window 而且是透過 SSH 的方式連接安全上也不會有太大的問題.但是我上了 x-win32  http://www.starnet.com/ 他並不是免費的.恩!!!雖然可以試用但是有每次連線 30 分鐘的限制.所以我又再找了另外一套  X-Deep/32  http://www.caslab.queensu.ca/LabHelp/XServer/


Linux:

不過如果你的桌機是 Linux 可以很簡單的實現 SSH + X11 forwarding 並不需要其他的程式,方式如下:

[root@local  ~] # ssh -X remote

-X(大寫,Enables X11 forwarding),接下來我們會進入遠端,並將遠端執行的程式在目前螢幕顯示出來。

[root@remote ~] # xterm &

你可以看到遠端所執行的程式,在 local 端顯示出來。
 
轉送 X session 預設登入 SSH 時,就可以將 X-Window 執行的畫面傳回本地端.如果不行檢查一下你的 Remote 端 /etc/ssh/sshd_config 中 X11Forwarding 是否設為 yes (OpenSSH 2.X版預設值為 no)
 
Windows:
但是通常我的遠端桌面是 Windows 所以有其他的解決方案嗎??有的 SSH + X11 forwarding + X-Deep/32 先下載所需的工具,1.x-Deep/32 , 2.SSH這兩隻工具安裝上並沒有什麼難度只要不斷的按下一步即可.
1.x-Deep/32
x-Deep/32 的下載點 http://www.caslab.queensu.ca/LabHelp/XServer/

安裝完成 x-Deep/32 還需要經過設定才可以使用,一開始你會看到 x-Deep/32 要求我們選擇你的哪些網路裝置可以使用這個服務.你會看到的裝置可能會跟我差很多,但是通常我們在一開始可以先選擇讓所有的網路裝置都可以使用 "IP:[ ANY ] accept requests on any local interface"
一開始你可能會找不到設定 X-Deep 32 的設定程式,它一開始就會縮小到 taskbar 的選項裡面,如果沒看到可以點選 "顯示隱藏的圖示"就會找到可以設定 x-Deep32 的位置.
展開 x-Deep32 後選擇 Edit -> X-Server Options
Window Modes:
選擇 "Window Modes" tab,將 "Multiple Window Mode" 的模式選成 "Multiple MS Window Mode" 並且不要勾選 "Display Root Window" 這一選項.
XDMP:
切換到 "XDMCP" 將 "X-Deep/32 Local XDM Chooser" 的勾選選項移除掉.
這樣我們就可以將 Linux 的 X-Window Client 所顯示的畫面顯示到 x-Deep32 的 X-window Server 上面.按下  "OK."  X-Deep/32 將會重新啟動 server.  接下來到 SSH 去連接 Linux.
 

2.SSH

這一隻 SSH 連接程式是我比較常用的 PuTTY (the Telnet and SSH client itself) 下載點:  http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
 
在 putty 選項 Under Connection -> SSH -> Tunnels 可以看到這邊的主角 X11 forwarding. 請動 "Enable X11 forwarding" 這一選項並將 "X display location" 設並為 localhost:0 你一定會很好奇為什麼是 localhost:0 請參考:SSH Secure tunnel  http://benjr.tw/?q=node/105
 
在 Putty 的 session 選擇你要連接的 Host name ,SSH 預設 port 為 22.載入之後你所有執行的 X-window 程式都會被導入到目前你的 windows 系統上.
 
但是老實說用了一會就開始後悔了,雖然一般的小程式的顯示都可以轉到 windows 上但是大多的,比如(#system-config-display) 都是秀出錯誤訊息,
 
The program ''xconf.py'' received an X Window System error.
This probably reflects a bug in the program.
The error was ''BadMatch (invalid parameter attributes)''.
  (Details: serial 638 error_code 8 request_code 72 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
 

加上它的傳輸反應並不是很快速,像我將 Linux 上的 firefox 畫面轉到 Windows 下來用大多的時間都在等待畫面的傳送,所以如果沒有安全上的考慮還是 VNC(Virtual Network Computing) 的解決方式會是比較合適的方案.


【评注】

上面在在有些情况下是不管用的,比如不能开启matlab,因低版本的兼容性不行,而高版本的X-Deep/32 也是收费的。

另一个常用的x11 server :X-win32 在使用centos6.3加matlab2011b时,hist(H,1000)会报错:openGL is installed incorrectly。

而Xming则是一个很好的开源的X11实现,持续更新中,非常不错,matlab一切正常。

有时SSH 登陆后执行xhost + 会报错:

PuTTY X11 proxy: wrong authentication protocol attemptedxhost:  unable to open display "localhost:10.0"


此时, 可参考:http://zweije.home.xs4all.nl/xa uth-6.html

键入命令:xauth list 

结果例如:

hostname/unix:12  MIT-MAGIC-COOKIE-1  5195ba0c5b462ba00c0bda2d96c0b8ea

那么应该使用以下显示变量:export DISPLAY=localhost:12.0

其他常用的命令:

xauth -v (查看用于xauth的文件,默认是 /home/nspcluster/.Xauthority

xauth -b quit (重新生成.Xauthority

关于ssh的简单介绍:http://benjr.tw/node/105

Linux X11 java 图形验证码部分服务器显示 X11 的 DISPLAY 参数问题

Linux X11 java 图形验证码部分服务器显示 X11 的 DISPLAY 参数问题

java.lang.InternalError: Can''t connect to X11 window server using ''localhost:0.0'' as the value of the DISPLAY variable

启动脚本中,增加参数 -Djava.awt.headless=true 后问题解决

今天关于如何为使用 X11 的 linux 创建一个像浮动窗口一样的系统托盘?linux做窗口的介绍到此结束,谢谢您的阅读,有关Chrome/Chromium 的 Ozone X11 代码全面启用,旧版 X11 代码将删除、Google Drive API Python - 如何为使用 api 下载的文件设置目的地、Linux - SSH + X11 forwarding + X-Deep/32、Linux X11 java 图形验证码部分服务器显示 X11 的 DISPLAY 参数问题等更多相关知识的信息可以在本站进行查询。

本文标签: