From 3ade071f273aaa973e44bf95d6b1d4913a18f03b Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:39:48 +0200 Subject: Adding upstream version 43.2. Signed-off-by: Daniel Baumann --- data/dbus-interfaces.xml | 59 + data/dbus-interfaces2.xml | 84 ++ data/freedesktop-dbus-interfaces.xml | 43 + .../hicolor/scalable/apps/org.gnome.Nautilus.svg | 253 ++++ .../scalable/apps/org.gnome.NautilusDevel.svg | 1 + .../symbolic/apps/org.gnome.Nautilus-symbolic.svg | 30 + data/lineup-parameters | 210 +++ data/meson.build | 138 ++ data/nautilus-autorun-software.desktop.in | 11 + data/ontology/meson.build | 8 + data/ontology/nautilus.description | 9 + data/ontology/nautilus.ontology | 20 + data/org.freedesktop.FileManager1.service.in | 3 + data/org.gnome.Nautilus.Source.svg | 1595 ++++++++++++++++++++ data/org.gnome.Nautilus.appdata.xml.in.in | 62 + data/org.gnome.Nautilus.desktop.in.in | 20 + data/org.gnome.Nautilus.search-provider.ini.in | 5 + data/org.gnome.Nautilus.service.in | 3 + data/org.gnome.nautilus.gschema.xml | 258 ++++ data/shell-search-provider-dbus-interfaces.xml | 44 + data/tracker/meson.build | 31 + ...nome.Nautilus.Tracker3.Miner.Extract.service.in | 7 + ....gnome.Nautilus.Tracker3.Miner.Files.service.in | 7 + data/tracker/org.gnome.Nautilus.domain.rule.in | 21 + 24 files changed, 2922 insertions(+) create mode 100644 data/dbus-interfaces.xml create mode 100644 data/dbus-interfaces2.xml create mode 100644 data/freedesktop-dbus-interfaces.xml create mode 100644 data/icons/hicolor/scalable/apps/org.gnome.Nautilus.svg create mode 100644 data/icons/hicolor/scalable/apps/org.gnome.NautilusDevel.svg create mode 100644 data/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg create mode 100755 data/lineup-parameters create mode 100644 data/meson.build create mode 100644 data/nautilus-autorun-software.desktop.in create mode 100644 data/ontology/meson.build create mode 100644 data/ontology/nautilus.description create mode 100644 data/ontology/nautilus.ontology create mode 100644 data/org.freedesktop.FileManager1.service.in create mode 100644 data/org.gnome.Nautilus.Source.svg create mode 100644 data/org.gnome.Nautilus.appdata.xml.in.in create mode 100644 data/org.gnome.Nautilus.desktop.in.in create mode 100644 data/org.gnome.Nautilus.search-provider.ini.in create mode 100644 data/org.gnome.Nautilus.service.in create mode 100644 data/org.gnome.nautilus.gschema.xml create mode 100644 data/shell-search-provider-dbus-interfaces.xml create mode 100644 data/tracker/meson.build create mode 100644 data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in create mode 100644 data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in create mode 100644 data/tracker/org.gnome.Nautilus.domain.rule.in (limited to 'data') diff --git a/data/dbus-interfaces.xml b/data/dbus-interfaces.xml new file mode 100644 index 0000000..a388af0 --- /dev/null +++ b/data/dbus-interfaces.xml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/dbus-interfaces2.xml b/data/dbus-interfaces2.xml new file mode 100644 index 0000000..8216be0 --- /dev/null +++ b/data/dbus-interfaces2.xml @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/freedesktop-dbus-interfaces.xml b/data/freedesktop-dbus-interfaces.xml new file mode 100644 index 0000000..d648205 --- /dev/null +++ b/data/freedesktop-dbus-interfaces.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/hicolor/scalable/apps/org.gnome.Nautilus.svg b/data/icons/hicolor/scalable/apps/org.gnome.Nautilus.svg new file mode 100644 index 0000000..dea3e0f --- /dev/null +++ b/data/icons/hicolor/scalable/apps/org.gnome.Nautilus.svg @@ -0,0 +1,253 @@ + + + Adwaita Icon Template + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + GNOME Design Team + + + + + Adwaita Icon Template + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/hicolor/scalable/apps/org.gnome.NautilusDevel.svg b/data/icons/hicolor/scalable/apps/org.gnome.NautilusDevel.svg new file mode 100644 index 0000000..d64ac0f --- /dev/null +++ b/data/icons/hicolor/scalable/apps/org.gnome.NautilusDevel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg b/data/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg new file mode 100644 index 0000000..2281d98 --- /dev/null +++ b/data/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg @@ -0,0 +1,30 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + diff --git a/data/lineup-parameters b/data/lineup-parameters new file mode 100755 index 0000000..aae22de --- /dev/null +++ b/data/lineup-parameters @@ -0,0 +1,210 @@ +#!/usr/bin/env python3 +# +# Copyright © 2019 Michael Catanzaro +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Based on original C lineup-parameters by Sébastien Wilmet +# Rewritten in Python to allow simple execution from source directory. +# +# Usage: lineup-parameters [file] +# If the file is not given, stdin is read. +# The result is printed to stdout. +# +# The restrictions: +# - The function name must be at column 0, followed by a space and an opening +# parenthesis; +# - One parameter per line; +# - A parameter must follow certain rules (see the regex in the code), but it +# doesn't accept all possibilities of the C language. +# - The opening curly brace ("{") of the function must also be at column 0. +# +# If one restriction is missing, the function declaration is not modified. +# +# Example: +# +# gboolean +# frobnitz (Frobnitz *frobnitz, +# gint magic_number, +# GError **error) +# { +# ... +# } +# +# Becomes: +# +# gboolean +# frobnitz (Frobnitz *frobnitz, +# gint magic_number, +# GError **error) +# { +# ... +# } +# +# TODO: support "..." vararg parameter + +import argparse +import re +import sys + +from typing import NamedTuple + +# https://regexr.com/ is your friend. +functionNameRegex = re.compile(r'^(\w+) ?\(') +parameterRegex = re.compile( + r'^\s*(?P(const\s+)?\w+)' + r'\s+(?P\**)' + r'\s*(?P\w+)' + r'\s*(?P,|\))' + r'\s*$') +openingCurlyBraceRegex = re.compile(r'^{\s*$') + + +def matchFunctionName(line): + match = functionNameRegex.match(line) + if match: + functionName = match.group(1) + firstParamPosition = match.end(0) + return (functionName, firstParamPosition) + return (None, 0) + + +class ParameterInfo(NamedTuple): + paramType: str + name: str + numStars: int + isLastParameter: bool + + +def matchParameter(line): + _, firstParamPosition = matchFunctionName(line) + match = parameterRegex.match(line[firstParamPosition:]) + if match is None: + return None + paramType = match.group('type') + assert(paramType is not None) + name = match.group('name') + assert(name is not None) + stars = match.group('stars') + numStars = len(stars) if stars is not None else 0 + end = match.group('end') + isLastParameter = True if end is not None and end == ')' else False + return ParameterInfo(paramType, name, numStars, isLastParameter) + + +def matchOpeningCurlyBrace(line): + return True if openingCurlyBraceRegex.match(line) is not None else False + + +# Length returned is number of lines the declaration takes up +def getFunctionDeclarationLength(remainingLines): + for i in range(len(remainingLines)): + currentLine = remainingLines[i] + parameterInfo = matchParameter(currentLine) + if parameterInfo is None: + return 0 + if parameterInfo.isLastParameter: + if i + 1 == len(remainingLines): + return 0 + nextLine = remainingLines[i + 1] + if not matchOpeningCurlyBrace(nextLine): + return 0 + return i + 1 + return 0 + + +def getParameterInfos(remainingLines, length): + parameterInfos = [] + for i in range(length): + parameterInfos.append(matchParameter(remainingLines[i])) + return parameterInfos + + +def computeSpacing(parameterInfos): + maxTypeLength = 0 + maxStarsLength = 0 + for parameterInfo in parameterInfos: + maxTypeLength = max(maxTypeLength, len(parameterInfo.paramType)) + maxStarsLength = max(maxStarsLength, parameterInfo.numStars) + return (maxTypeLength, maxStarsLength) + + +def printParameter(parameterInfo, maxTypeLength, maxStarsLength, outfile): + outfile.write(f'{parameterInfo.paramType:<{maxTypeLength + 1}}') + paramNamePaddedWithStars = f'{parameterInfo.name:*>{parameterInfo.numStars + len(parameterInfo.name)}}' + outfile.write(f'{paramNamePaddedWithStars:>{maxStarsLength + len(parameterInfo.name)}}') + + +def printFunctionDeclaration(remainingLines, length, useTabs, outfile): + functionName, _ = matchFunctionName(remainingLines[0]) + assert(functionName is not None) + outfile.write(f'{functionName} (') + numSpacesToParenthesis = len(functionName) + 2 + whitespace = '' + if useTabs: + tabs = ''.ljust(numSpacesToParenthesis // 8, '\t') + spaces = ''.ljust(numSpacesToParenthesis % 8) + whitespace = tabs + spaces + else: + whitespace = ''.ljust(numSpacesToParenthesis) + parameterInfos = getParameterInfos(remainingLines, length) + maxTypeLength, maxStarsLength = computeSpacing(parameterInfos) + numParameters = len(parameterInfos) + for i in range(numParameters): + parameterInfo = parameterInfos[i] + if i != 0: + outfile.write(whitespace) + printParameter(parameterInfo, maxTypeLength, maxStarsLength, outfile) + if i + 1 != numParameters: + outfile.write(',\n') + outfile.write(')\n') + + +def parseContents(infile, useTabs, outfile): + lines = infile.readlines() + i = 0 + while i < len(lines): + line = lines[i] + functionName, _ = matchFunctionName(line) + if functionName is None: + outfile.write(line) + i += 1 + continue + remainingLines = lines[i:] + length = getFunctionDeclarationLength(remainingLines) + if length == 0: + outfile.write(line) + i += 1 + continue + printFunctionDeclaration(remainingLines, length, useTabs, outfile) + i += length + + +if __name__ == "__main__": + parser = argparse.ArgumentParser( + description='Line up parameters of C functions') + parser.add_argument('infile', nargs='?', + type=argparse.FileType('r'), + default=sys.stdin, + help='input C source file') + parser.add_argument('-o', metavar='outfile', nargs='?', + type=argparse.FileType('w'), + default=sys.stdout, + help='where to output modified file') + parser.add_argument('--tabs', action='store_true', + help='whether use tab characters in the output') + args = parser.parse_args() + parseContents(args.infile, args.tabs, args.o) + args.infile.close() + args.o.close() diff --git a/data/meson.build b/data/meson.build new file mode 100644 index 0000000..2df5a22 --- /dev/null +++ b/data/meson.build @@ -0,0 +1,138 @@ +icondir = join_paths('icons', 'hicolor', 'scalable', 'apps') +install_data( + join_paths(icondir, 'org.gnome.Nautilus' + profile + '.svg'), + install_dir: join_paths(datadir, icondir), + rename: '@0@.svg'.format(application_id) +) + +icondir = join_paths('icons', 'hicolor', 'symbolic', 'apps') + +install_data( + join_paths(icondir, 'org.gnome.Nautilus-symbolic.svg'), + install_dir: join_paths(datadir, icondir), + rename: '@0@-symbolic.svg'.format(application_id) +) + +po_dir = join_paths(meson.project_source_root(), 'po') + +desktop_conf = configuration_data() + +desktop_conf.set('icon', application_id) + +desktop = i18n.merge_file( + input: configure_file( + input: files('org.gnome.Nautilus.desktop.in.in'), + output: 'org.gnome.Nautilus.desktop.in', + configuration: desktop_conf + ), + output: '@0@.desktop'.format(application_id), + install: true, + install_dir: desktopdir, + po_dir: po_dir, + type: 'desktop' +) + +desktop_autorun_software = i18n.merge_file( + input: 'nautilus-autorun-software.desktop.in', + output: 'nautilus-autorun-software.desktop', + install: true, + install_dir: desktopdir, + po_dir: po_dir, + type: 'desktop' +) + +appdata_conf = configuration_data() + +appdata_conf.set('appid', application_id) + +appdata = i18n.merge_file( + input: configure_file( + input: files('org.gnome.Nautilus.appdata.xml.in.in'), + output: 'org.gnome.Nautilus.appdata.xml.in', + configuration: appdata_conf + ), + output: '@0@.appdata.xml'.format(application_id), + install: true, + install_dir: join_paths(datadir, 'metainfo'), + po_dir: po_dir +) + +service_conf = configuration_data() +service_conf.set('appid', application_id) +service_conf.set('bindir', join_paths(prefix, bindir)) + +configure_file( + input: 'org.gnome.Nautilus.service.in', + output: '@0@.service'.format(application_id), + configuration: service_conf, + install_dir: servicedir +) + +configure_file( + input: 'org.freedesktop.FileManager1.service.in', + output: 'org.freedesktop.FileManager1.service', + configuration: service_conf, + install_dir: servicedir +) + +search_provider_conf = configuration_data() + +search_provider_conf.set('appid', application_id) +search_provider_conf.set('profile', profile) + +configure_file( + configuration: search_provider_conf, + input: files('org.gnome.Nautilus.search-provider.ini.in'), + install_dir: join_paths(datadir, 'gnome-shell', 'search-providers'), + output: '@0@.search-provider.ini'.format(application_id) +) + +gnome.compile_schemas( + build_by_default: true, + depend_files: 'org.gnome.nautilus.gschema.xml' +) + +install_data( + 'org.gnome.nautilus.gschema.xml', + install_dir: join_paths(datadir, 'glib-2.0', 'schemas') +) + +desktop_file_validate = find_program('desktop-file-validate', required: false) +if desktop_file_validate.found() + test( + 'validate-desktop', + desktop_file_validate, + args: [ + desktop.full_path() + ], + depends: [ + desktop, + ] + ) + test( + 'validate-desktop-autorun-software', + desktop_file_validate, + args: [ + desktop_autorun_software.full_path() + ], + depends: [ + desktop_autorun_software, + ] + ) +endif + +appstream_util = find_program('appstream-util', required: false) +if appstream_util.found() + test( + 'validate-appdata', appstream_util, + args: [ + 'validate-relax', '--nonet', appdata.full_path() + ], + depends: [ + appdata, + ] + ) +endif + +subdir('ontology') +subdir('tracker') diff --git a/data/nautilus-autorun-software.desktop.in b/data/nautilus-autorun-software.desktop.in new file mode 100644 index 0000000..a42c94e --- /dev/null +++ b/data/nautilus-autorun-software.desktop.in @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Run Software +TryExec=nautilus-autorun-software +Exec=nautilus-autorun-software %u +# Translators: Do NOT translate or transliterate this text (this is an icon file name)! +Icon=application-x-executable +NoDisplay=true +Terminal=false +StartupNotify=true +Type=Application +MimeType=x-content/unix-software; diff --git a/data/ontology/meson.build b/data/ontology/meson.build new file mode 100644 index 0000000..cb80e86 --- /dev/null +++ b/data/ontology/meson.build @@ -0,0 +1,8 @@ +ontology_data = files( + 'nautilus.description', + 'nautilus.ontology', +) + +install_data(ontology_data, + install_dir: join_paths(datadir, 'nautilus', 'ontology') +) diff --git a/data/ontology/nautilus.description b/data/ontology/nautilus.description new file mode 100644 index 0000000..42f4102 --- /dev/null +++ b/data/ontology/nautilus.description @@ -0,0 +1,9 @@ +@prefix dsc: . + + a dsc:Ontology ; + dsc:title "Nautilus ontology" ; + dsc:description "Tracker database schema for Nautilus private data." ; + + dsc:localPrefix "nautilus" ; + dsc:baseUrl "https://gitlab.gnome.org/GNOME/nautilus#" ; + dsc:relativePath "./nautilus.ontology" ; diff --git a/data/ontology/nautilus.ontology b/data/ontology/nautilus.ontology new file mode 100644 index 0000000..a3706bc --- /dev/null +++ b/data/ontology/nautilus.ontology @@ -0,0 +1,20 @@ +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . +@prefix nrl: . +@prefix nautilus: . + +nautilus: a nrl:Namespace, nrl:Ontology ; + nrl:prefix "nautilus" ; + nrl:lastModified "2020-05-01T10:00:00Z" . + +nautilus:File a rdfs:Class ; + rdfs:comment "Represents a file on disk by its URL. Equivalent to http://tracker.api.gnome.org/ontology/v3/nfo#FileDataObject" ; + rdfs:subClassOf rdfs:Resource ; + nrl:notify true . + +nautilus:starred a rdf:Property ; + rdfs:comment "Marks files that are starred in Nautilus." ; + rdfs:domain nautilus:File ; + rdfs:range xsd:boolean ; + nrl:maxCardinality 1 . diff --git a/data/org.freedesktop.FileManager1.service.in b/data/org.freedesktop.FileManager1.service.in new file mode 100644 index 0000000..6a0bbe0 --- /dev/null +++ b/data/org.freedesktop.FileManager1.service.in @@ -0,0 +1,3 @@ +[D-BUS Service] +Name=org.freedesktop.FileManager1 +Exec=@bindir@/nautilus --gapplication-service diff --git a/data/org.gnome.Nautilus.Source.svg b/data/org.gnome.Nautilus.Source.svg new file mode 100644 index 0000000..eb8ea2a --- /dev/null +++ b/data/org.gnome.Nautilus.Source.svg @@ -0,0 +1,1595 @@ + + + + + Adwaita Icon Template + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + GNOME Design Team + + + + + Adwaita Icon Template + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/org.gnome.Nautilus.appdata.xml.in.in b/data/org.gnome.Nautilus.appdata.xml.in.in new file mode 100644 index 0000000..a8074a4 --- /dev/null +++ b/data/org.gnome.Nautilus.appdata.xml.in.in @@ -0,0 +1,62 @@ + + + @appid@.desktop + CC0-1.0 + Files + Access and organize files + +

+ Files, also known as Nautilus, is the default file manager of the GNOME desktop. + It provides a simple and integrated way of managing your files and browsing your file system. +

+

+ Nautilus supports all the basic functions of a file manager and more. + It can search and manage your files and folders, both locally and on a network, + read and write data to and from removable media, run scripts, and launch applications. + It has three views: Icon Grid, Icon List, and Tree List. + Its functions can be extended with plugins and scripts. +

+
+ + System + + https://gitlab.gnome.org/GNOME/nautilus/issues + https://www.gnome.org/support-gnome/ + https://wiki.gnome.org/action/show/Apps/Nautilus + https://wiki.gnome.org/action/show/Apps/Nautilus + https://wiki.gnome.org/TranslationProject + @appid@.desktop + + + + GNOME + GPL-3.0-or-later + The GNOME Project + + + https://static.gnome.org/appdata/gnome-43/files/files-grid.png + Grid View + + + https://static.gnome.org/appdata/gnome-43/files/files-list.png + List View + + + https://static.gnome.org/appdata/gnome-43/files/files-search.png + Search + + + https://static.gnome.org/appdata/gnome-43/files/files-other-locations.png + Other Locations + + + nautilus-list@gnome.org + nautilus + + HiDpiIcon + ModernToolkit + Notifications + SearchProvider + +
+ diff --git a/data/org.gnome.Nautilus.desktop.in.in b/data/org.gnome.Nautilus.desktop.in.in new file mode 100644 index 0000000..c5ef071 --- /dev/null +++ b/data/org.gnome.Nautilus.desktop.in.in @@ -0,0 +1,20 @@ +[Desktop Entry] +Name=Files +Comment=Access and organize files +# Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +Keywords=folder;manager;explore;disk;filesystem;nautilus; +Exec=nautilus --new-window %U +# Translators: Do NOT translate or transliterate this text (this is an icon file name)! +Icon=@icon@ +Terminal=false +Type=Application +DBusActivatable=true +StartupNotify=true +Categories=GNOME;GTK;Utility;Core;FileManager; +MimeType=inode/directory;application/x-7z-compressed;application/x-7z-compressed-tar;application/x-bzip;application/x-bzip-compressed-tar;application/x-compress;application/x-compressed-tar;application/x-cpio;application/x-gzip;application/x-lha;application/x-lzip;application/x-lzip-compressed-tar;application/x-lzma;application/x-lzma-compressed-tar;application/x-tar;application/x-tarz;application/x-xar;application/x-xz;application/x-xz-compressed-tar;application/zip;application/gzip;application/bzip2;application/vnd.rar; +X-GNOME-UsesNotifications=true +Actions=new-window; + +[Desktop Action new-window] +Name=New Window +Exec=nautilus --new-window diff --git a/data/org.gnome.Nautilus.search-provider.ini.in b/data/org.gnome.Nautilus.search-provider.ini.in new file mode 100644 index 0000000..0ef7f79 --- /dev/null +++ b/data/org.gnome.Nautilus.search-provider.ini.in @@ -0,0 +1,5 @@ +[Shell Search Provider] +DesktopId=@appid@.desktop +BusName=@appid@ +ObjectPath=/org/gnome/Nautilus@profile@/SearchProvider +Version=2 diff --git a/data/org.gnome.Nautilus.service.in b/data/org.gnome.Nautilus.service.in new file mode 100644 index 0000000..55505ef --- /dev/null +++ b/data/org.gnome.Nautilus.service.in @@ -0,0 +1,3 @@ +[D-BUS Service] +Name=@appid@ +Exec=@bindir@/nautilus --gapplication-service diff --git a/data/org.gnome.nautilus.gschema.xml b/data/org.gnome.nautilus.gschema.xml new file mode 100644 index 0000000..b91a90c --- /dev/null +++ b/data/org.gnome.nautilus.gschema.xml @@ -0,0 +1,258 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + Always use the location entry, instead of the pathbar + If set to true, then Nautilus browser windows will always use a textual input entry for the location toolbar, instead of the pathbar. + + + 'local-only' + Where to perform recursive search + In which locations Nautilus should search on subfolders. Available values are “local-only”, “always”, “never”. + + + 'last_modified' + Filter the search dates using either last used or last modified + Filter the search dates using either last used or last modified. + + + false + Whether to show a context menu item to delete permanently + If set to true, then Nautilus will show a delete permanently context menu item to bypass the Trash. + + + false + Whether to show context menu items to create links from copied or selected files + If set to true, then Nautilus will show context menu items to create links from the copied or selected files. + + + + 'local-only' + When to show number of items in a folder + Speed tradeoff for when to show the number of items in a folder. If set to “always” then always show item counts, even if the folder is on a remote server. If set to “local-only” then only show counts for local file systems. If set to “never” then never bother to compute item counts. + + + 'double' + Type of click used to launch/open files + Possible values are “single” to launch files on a single click, or “double” to launch them on a double click. + + + true + Show the package installer for unknown MIME types + Whether to show the user a package installer dialog in case an unknown MIME type is opened, in order to search for an application to handle it. + + + true + Use extra mouse button events in Nautilus’ browser window + For users with mice that have “Forward” and “Back” buttons, this key will determine if any action is taken inside of Nautilus when either is pressed. + + + 9 + Mouse button to activate the “Forward” command in browser window + For users with mice that have buttons for “Forward” and “Back”, this key will set which button activates the “Forward” command in a browser window. Possible values range between 6 and 14. + + + 8 + Mouse button to activate the “Back” command in browser window + For users with mice that have buttons for “Forward” and “Back”, this key will set which button activates the “Back” command in a browser window. Possible values range between 6 and 14. + + + + 'local-only' + When to show thumbnails of files + Speed trade-off for when to show a file as a thumbnail. If set to “always” then always thumbnail, even if the folder is on a remote server. If set to “local-only” then only show thumbnails for local file systems. If set to “never” then never bother to thumbnail files, just use a generic icon. Despite what the name may suggest, this applies to any previewable file type. + + + + 50 + Maximum image size for thumbnailing + Images over this size (in megabytes) won’t be thumbnailed. The purpose of this setting is to avoid thumbnailing large images that may take a long time to load or use lots of memory. + + + + + + 'name' + Default sort order + The default sort-order for items in the icon view. Possible values are “name”, “size”, “type”, “mtime”, “atime” and “starred”. + + + false + Reverse sort order in new windows + If true, files in new windows will be sorted in reverse order. I.e., if sorted by name, then instead of sorting the files from “a” to “z”, they will be sorted from “z” to “a”; if sorted by size, instead of being incrementally they will be sorted decrementally. + + + + + + + + + 'icon-view' + Default folder viewer + When a folder is visited this viewer is used. Possible values are “list-view”, and “icon-view”. + + + false + Whether to show hidden files + This key is deprecated and ignored. The “show-hidden” key from “org.gtk.Settings.FileChooser” is now used instead. + + + false + + + 'list-view' + What viewer should be used when searching + When searching Nautilus will switch to the type of view in this setting. + + + true + Whether to open the hovered folder after a timeout when drag and drop operation + If this is set to true, when performing a drag and drop operation the hovered folder will open automatically after a timeout. + + + true + Whether to have full text search enabled by default when opening a new window/tab + If set to true, then Nautilus will also match the file contents besides the name. This toggles the default active state, which can still be overridden in the search popover + + + + + + 'zip' + Default format for compressing files + The format that will be selected when compressing files. + + + + + + [ 'none', 'none', 'none' ] + List of possible captions on icons + A list of captions below an icon in the icon view. The actual number of captions shown depends on the zoom level. Some possible values are: “size”, “type”, “date_modified”, “owner”, “group”, “permissions”, and “mime_type”. + + + + + + + + 'medium' + Default icon view zoom level + + + + + + + + + + 'medium' + Default list view zoom level + + + [ 'name', 'size', 'date_modified' ] + Columns visible in list view + + + [ 'name', 'size', 'type', 'owner', 'group', 'permissions', 'mime_type', 'where', 'date_modified', 'date_modified_with_time', 'date_accessed', 'date_created', 'recency', 'starred' ] + Column order in list view + + + false + Use tree view + Whether a tree should be used for list view navigation instead of a flat list. + + + + + + (890, 550) + Initial size of the window + A tuple containing the initial width and height of the application window. + + + false + Whether the navigation window should be maximized + Whether the navigation window should be maximized by default. + + + true + Show location bar in new windows + If set to true, newly opened windows will have the location bar visible. + + + diff --git a/data/shell-search-provider-dbus-interfaces.xml b/data/shell-search-provider-dbus-interfaces.xml new file mode 100644 index 0000000..f6840e2 --- /dev/null +++ b/data/shell-search-provider-dbus-interfaces.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/tracker/meson.build b/data/tracker/meson.build new file mode 100644 index 0000000..5320af1 --- /dev/null +++ b/data/tracker/meson.build @@ -0,0 +1,31 @@ +# Files needed for running Tracker inside the Flatpak sandbox, for systems +# which don't have a suitable version of Tracker in the host OS. +# +# We must export the .service files from the sandbox so they work on the +# session bus. This means the Tracker domain name must correspond with the +# application ID. + +domain_ontologies_dir = get_option('datadir') / 'tracker3' / 'domain-ontologies' +dbus_services_dir = get_option('datadir') / 'dbus-1' / 'services' + +tracker_domain_config = configuration_data() +tracker_domain_config.set('application_id', application_id) +tracker_domain_config.set('domain_rule', get_option('prefix') / domain_ontologies_dir / application_id + '.domain.rule') + +configure_file( + input: 'org.gnome.Nautilus.domain.rule.in', + output: application_id + '.domain.rule', + configuration: tracker_domain_config, + install_dir: domain_ontologies_dir) + +configure_file( + input: 'org.gnome.Nautilus.Tracker3.Miner.Extract.service.in', + output: application_id + '.Tracker3.Miner.Extract.service', + configuration: tracker_domain_config, + install_dir: dbus_services_dir) + +configure_file( + input: 'org.gnome.Nautilus.Tracker3.Miner.Files.service.in', + output: application_id + '.Tracker3.Miner.Files.service', + configuration: tracker_domain_config, + install_dir: dbus_services_dir) diff --git a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in new file mode 100644 index 0000000..eb7a87a --- /dev/null +++ b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Extract.service.in @@ -0,0 +1,7 @@ +[D-BUS Service] +Name=@application_id@.Tracker3.Miner.Extract +Exec=/app/libexec/tracker-extract-3 --domain-ontology @domain_rule@ + +# Miner details needed for tracker-control +Path=/org/freedesktop/Tracker3/Miner/Extract +NameSuffix=Miner.Files diff --git a/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in new file mode 100644 index 0000000..4fa7371 --- /dev/null +++ b/data/tracker/org.gnome.Nautilus.Tracker3.Miner.Files.service.in @@ -0,0 +1,7 @@ +[D-BUS Service] +Name=@application_id@.Tracker3.Miner.Files +Exec=/app/libexec/tracker-miner-fs-3 --domain-ontology @domain_rule@ --initial-sleep 0 + +# Miner details needed for tracker-control +Path=/org/freedesktop/Tracker3/Miner/Files +NameSuffix=Miner.Files diff --git a/data/tracker/org.gnome.Nautilus.domain.rule.in b/data/tracker/org.gnome.Nautilus.domain.rule.in new file mode 100644 index 0000000..ec0808e --- /dev/null +++ b/data/tracker/org.gnome.Nautilus.domain.rule.in @@ -0,0 +1,21 @@ +# This defines a private Tracker domain for Nautilus. +# +# It's used to run the Tracker indexer inside a Flatpak sandbox, when Nautilus +# is running on a host that doesn't have a suitable version of Tracker +# installed. + +[DomainOntology] +# Location for the Tracker database +CacheLocation=$XDG_CACHE_HOME/nautilus/miner/files + +# Name of the ontology to use, must be one located in +# $(sharedir)/tracker/ontologies +OntologyName=nepomuk + +# DBus name for the owner (not optional). Tracker will use +# the domain as the prefix of the DBus name for all the +# services related to this domain ontology. +Domain=@application_id@ + +# List of miners we expect to run in this domain. +Miners=Miner.Files;Miner.Extract -- cgit v1.2.3