Ubuntu 18.04 check for update無效 [論壇 - Ubuntu 養蟲箱 - bug share]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊



Ubuntu 18.04 check for update無效
會員一級
註冊日期:
2018/7/17 16:31
所屬群組:
已註冊使用者
等級: 1
HP : 0 / 2
MP : 1 / 38
EXP: 10
離線
透過Settings->Details->About頁面的Check for updates按鈕執行更新
都顯示Software is up to date;但透過Terminal執行sudo apt update卻顯示有項目需要更新?映像中之前的版本就已經變這樣了。這樣的反應正常嗎?

2018/7/17 16:48
應用擴展 工具箱
回覆: Ubuntu 18.04 check for update無效
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29259
EXP: 6
離線
Jacky123 寫到:
透過Settings->Details->About頁面的Check for updates按鈕執行更新
都顯示Software is up to date;但透過Terminal執行sudo apt update卻顯示有項目需要更新?映像中之前的版本就已經變這樣了。這樣的反應正常嗎?


請參考之前這篇討論「update指令跟軟體更新不一樣??

請區別下面三個指令的不同處


$ sudo apt-get update




$ sudo apt-get upgrade




$ sudo apt-get dist-upgrade



===========================================================

$ man apt-get

$ man apt

===========================================================

關於「sudo apt-get update」,您可以觀察「/var/lib/apt/lists/」這個資料夾。

一些套件操作的討論案例,之前紀錄在「[索引] 套件操作實務」,

例如這篇「#2 回覆: apt 出現許多錯誤訊息

===========================================================

以上提供參考


2018/7/17 18:13
應用擴展 工具箱
回覆: Ubuntu 18.04 check for update無效
會員一級
註冊日期:
2018/7/17 16:31
所屬群組:
已註冊使用者
等級: 1
HP : 0 / 2
MP : 1 / 38
EXP: 10
離線
您誤解我的意思了,我的意思是說透過系統介面去check update與透過指令去check update結果不一致。

2018/7/18 11:11
應用擴展 工具箱
回覆: Ubuntu 18.04 check for update無效
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29259
EXP: 6
離線
Jacky123 寫到:
您誤解我的意思了,我的意思是說透過系統介面去check update與透過指令去check update結果不一致。


收到,剛剛實際測試了一下,

在「圖形介面程式 (gnome-software --mode=updates)」,
和「指令 (sudo apt-get dist-upgrade)」顯示的結果確實沒有一致

也就是您在「#1」提到的,

Jacky123 寫到:
透過Settings->Details->About頁面的Check for updates按鈕執行更新
都顯示Software is up to date;但透過Terminal執行sudo apt update卻顯示有項目需要更新?映像中之前的版本就已經變這樣了。這樣的反應正常嗎?



我主要使用的是「sudo apt-get dist-upgrade」來更新套件。

所以我目前的思路,針對上面的議題,可以去探索「圖形介面程式 (gnome-software --mode=updates)」內部的檢查的邏輯。

以下先簡單的紀錄探索流程。

以下測試,是在「Ubuntu 18.04」環境測試。

================================================================================

關於「Settings->Details->About頁面」,就是執行下面指令


$ gnome-control-center info-overview



================================================================================

上面這個指令,可以透過下面步驟找到


$ dpkg -L gnome-control-center | grep desktop | grep info



顯示


/usr/share/applications/gnome-info-overview-panel.desktop



可以找到「/usr/share/applications/gnome-info-overview-panel.desktop」這個檔案

執行下面指令


$ grep '^Exec=' /usr/share/applications/gnome-info-overview-panel.desktop



顯示


Exec=gnome-control-center info-overview



可以搭配閱讀「$ man gnome-control-center

================================================================================

關於「Settings->Details->About頁面的Check for updates按鈕執行更新」,

當按下「Check for updates」那個按鈕,就是執行下面指令


$ gnome-software --mode=updates



也就是執行「gnome-software」後,會切換到第三個頁簽「Updates」

================================================================================

上面指令,可以透過下面步驟找到

探索「Source Package: gnome-control-center

執行


$ apt-get source gnome-control-center



會下載下面三個檔案

* gnome-control-center_3.28.2-0ubuntu0.18.04.1.debian.tar.xz
* gnome-control-center_3.28.2-0ubuntu0.18.04.1.dsc
* gnome-control-center_3.28.2.orig.tar.xz

並且解開到「gnome-control-center-3.28.2」這個資料夾

執行下面指令


$ grep 'updates' gnome-control-center-3.28.2/panels/info/cc-info-overview-panel.c -n



顯示


71:  GtkWidget      *updates_button;
812:on_updates_button_clicked (GtkWidget           *widget,
823:      argv[1] = g_strdup_printf ("--mode=updates");
886:  gtk_widget_class_bind_template_child_private (widget_class, CcInfoOverviewPanel, updates_button);
906:    g_signal_connect (priv->updates_button, "clicked", G_CALLBACK (on_updates_button_clicked), self);
908:    gtk_widget_destroy (priv->updates_button);




執行


$ grep 'mode=updates' gnome-control-center-3.28.2/panels/info/cc-info-overview-panel.c -n -A 6 -B 3



顯示


820-  if (does_gnome_software_exist ())
821-    {
822-      argv[0] = g_build_filename (BINDIR, "gnome-software", NULL);
823:      argv[1] = g_strdup_printf ("--mode=updates");
824-    }
825-  else
826-    {
827-      argv[0] = g_build_filename (BINDIR, "gpk-update-viewer", NULL);
828-    }
829-  ret = g_spawn_async (NULL, argv, NULL, 0, NULL, NULL, NULL, &error);



所以就可以找到「gnome-software --mode=updates」這個指令下法。

可以執行「$ man gnome-software」閱讀相關說明

另外也可以執行


$ gnome-software --help



或是執行


$ gnome-software -h



顯示


13:51:34:0155 As  run GsMain
Usage:
  gnome-software [OPTION…]

Help Options:
  -h, --help                    Show help options
  --help-all                    Show all help options
  --help-gapplication           Show GApplication options
  --help-gtk                    Show GTK+ Options

Application Options:
  --mode=MODE                   Start up mode: either ‘updates’, ‘updated’, ‘installed’ or ‘overview’
  --search=SEARCH               Search for applications
  --details=ID                  Show application details (using application ID)
  --details-pkg=PKGNAME         Show application details (using package name)
  --install=ID                  Install the application (using application ID)
  --local-filename=FILENAME     Open a local package file
  --interaction                 The kind of interaction expected for this action: either ‘none’, ‘notify’, or ‘full’
  --verbose                     Show verbose debugging information
  --profile                     Show profiling information for the service
  --quit                        Quit the running instance
  --prefer-local                Prefer local file sources to AppStream
  --version                     Show version number
  --display=DISPLAY             X display to use



================================================================================

接著要來探索「Source Package: gnome-software

執行下面指令


$ apt-get source gnome-software



會下載下面三個檔案

* gnome-software_3.28.1-0ubuntu4.18.04.1.debian.tar.xz
* gnome-software_3.28.1-0ubuntu4.18.04.1.dsc
* gnome-software_3.28.1.orig.tar.xz

並且解開到「gnome-software-3.28.1」這個資料夾

尚未開始探索,

================================================================================

以上暫記,

有額外的發現再來補充,

先告退


2018/7/18 13:51
應用擴展 工具箱
回覆: Ubuntu 18.04 check for update無效
會員一級
註冊日期:
2018/7/17 16:31
所屬群組:
已註冊使用者
等級: 1
HP : 0 / 2
MP : 1 / 38
EXP: 10
離線
感謝您詳盡的回覆,因為對提報bug這部分不太了解可以請您代為提報這個問題嗎?
感謝。

2018/7/19 1:50
應用擴展 工具箱
回覆: Ubuntu 18.04 check for update無效
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 37
HP : 0 / 901
MP : 671 / 29259
EXP: 6
離線
我個人猜測有可能「gnome-software」原本設計上,檢查軟體更新的邏輯,
跟我們原本預期的「sudo apt-get dist-upgrade」不見得是一致的。
所以這樣不一致的情況,不見得會是原本設想的就是「Bug」。

============================================================

Jacky123 寫到:
感謝您詳盡的回覆,因為對提報bug這部分不太了解可以請您代為提報這個問題嗎?
感謝。


關於如何提報bug這部分,我也不了解

我目前沒有意願花心思做這件事,所以要跟您說聲抱歉了。

Orz...

============================================================

我目前的意願,只有花我自己能允許的時間,在這論壇參與一些討論,如此而已

以上釐清





============================================================

## 額外參考

* 討論這篇「邁向永續的臺灣桌面應用自由軟體在地發展」

2018/7/19 6:13
應用擴展 工具箱


 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.