From b937ecd4f1baa62a337c9c32eed28583ae0910be Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Mon, 15 May 2023 03:41:26 +0000 Subject: automatic import of python-pylnk3 --- .gitignore | 1 + python-pylnk3.spec | 372 +++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 374 insertions(+) create mode 100644 python-pylnk3.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..c059cf0 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/pylnk3-0.4.2.tar.gz diff --git a/python-pylnk3.spec b/python-pylnk3.spec new file mode 100644 index 0000000..15c9733 --- /dev/null +++ b/python-pylnk3.spec @@ -0,0 +1,372 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pylnk3 +Version: 0.4.2 +Release: 1 +Summary: Windows LNK File Parser and Creator +License: GNU Library or Lesser General Public License (LGPL) +URL: https://github.com/strayge/pylnk +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d3/ad/a55396c33f1dbf3593708ad97401e4ae01a617e85fe0a5ced46871db6ee9/pylnk3-0.4.2.tar.gz +BuildArch: noarch + + +%description +# PyLnk 3 + +[![PyPI version shields.io](https://img.shields.io/pypi/v/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI pyversions](https://img.shields.io/pypi/pyversions/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI download month](https://img.shields.io/pypi/dm/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) + +Python library for reading and writing Windows shortcut files (.lnk). +Converted to support python 3. + +This library can parse .lnk files and extract all relevant information from +them. Parsing a .lnk file yields a LNK object which can be altered and saved +again. Moreover, .lnk file can be created from scratch be creating a LNK +object, populating it with data and then saving it to a file. As that +process requires some knowledge about the internals of .lnk files, some +convenience functions are provided. + +Limitation: Windows knows lots of different types of shortcuts which all have +different formats. This library currently only supports shortcuts to files and +folders on the local machine. + +## CLI + +Mainly tool has two basic commands. + +#### Parse existed lnk file + +```sh +pylnk3 parse [-h] filename [props [props ...]] + +positional arguments: + filename lnk filename to read + props props path to read + +optional arguments: + -h, --help show this help message and exit +``` + +#### Create new lnk file + +```sh +usage: pylnk3 create [-h] [--arguments [ARGUMENTS]] [--description [DESCRIPTION]] [--icon [ICON]] + [--icon-index [ICON_INDEX]] [--workdir [WORKDIR]] [--mode [{Maximized,Normal,Minimized}]] + target name + +positional arguments: + target target path + name lnk filename to create + +optional arguments: + -h, --help show this help message and exit + --arguments [ARGUMENTS], -a [ARGUMENTS] + additional arguments + --description [DESCRIPTION], -d [DESCRIPTION] + description + --icon [ICON], -i [ICON] + icon filename + --icon-index [ICON_INDEX], -ii [ICON_INDEX] + icon index + --workdir [WORKDIR], -w [WORKDIR] + working directory + --mode [{Maximized,Normal,Minimized}], -m [{Maximized,Normal,Minimized}] + window mode +``` + +#### Examples +```sh +pylnk3 p filename.lnk +pylnk3 c c:\prog.exe shortcut.lnk +pylnk3 c \\192.168.1.1\share\file.doc doc.lnk +pylnk3 create c:\1.txt text.lnk -m Minimized -d "Description" +``` + +## Changes + +**0.4.2** +changed logic for Lnk.path choose (in case of different paths presents at different structures) +read links with root as GUID of KNOWN_FOLDER +[FIX] disabled padding for writing LinkInfo.local_base_path + +**0.4.0** +added support for network links +reworked CLI (added more options for creating links) +added entry point for call tool just like `pylnk3` +[FIX] allow build links for non-existed (from this machine) paths +[FIX] correct building links on Linux (now expect Windows-like path) +[FIX] fixed path priority at parsing with both local & remote presents + + +**0.3.0** +added support links to UWP apps + + +**0.2.1** +released to PyPI + + +**0.2.0** +converted to python 3 + + + + +%package -n python3-pylnk3 +Summary: Windows LNK File Parser and Creator +Provides: python-pylnk3 +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-pylnk3 +# PyLnk 3 + +[![PyPI version shields.io](https://img.shields.io/pypi/v/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI pyversions](https://img.shields.io/pypi/pyversions/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI download month](https://img.shields.io/pypi/dm/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) + +Python library for reading and writing Windows shortcut files (.lnk). +Converted to support python 3. + +This library can parse .lnk files and extract all relevant information from +them. Parsing a .lnk file yields a LNK object which can be altered and saved +again. Moreover, .lnk file can be created from scratch be creating a LNK +object, populating it with data and then saving it to a file. As that +process requires some knowledge about the internals of .lnk files, some +convenience functions are provided. + +Limitation: Windows knows lots of different types of shortcuts which all have +different formats. This library currently only supports shortcuts to files and +folders on the local machine. + +## CLI + +Mainly tool has two basic commands. + +#### Parse existed lnk file + +```sh +pylnk3 parse [-h] filename [props [props ...]] + +positional arguments: + filename lnk filename to read + props props path to read + +optional arguments: + -h, --help show this help message and exit +``` + +#### Create new lnk file + +```sh +usage: pylnk3 create [-h] [--arguments [ARGUMENTS]] [--description [DESCRIPTION]] [--icon [ICON]] + [--icon-index [ICON_INDEX]] [--workdir [WORKDIR]] [--mode [{Maximized,Normal,Minimized}]] + target name + +positional arguments: + target target path + name lnk filename to create + +optional arguments: + -h, --help show this help message and exit + --arguments [ARGUMENTS], -a [ARGUMENTS] + additional arguments + --description [DESCRIPTION], -d [DESCRIPTION] + description + --icon [ICON], -i [ICON] + icon filename + --icon-index [ICON_INDEX], -ii [ICON_INDEX] + icon index + --workdir [WORKDIR], -w [WORKDIR] + working directory + --mode [{Maximized,Normal,Minimized}], -m [{Maximized,Normal,Minimized}] + window mode +``` + +#### Examples +```sh +pylnk3 p filename.lnk +pylnk3 c c:\prog.exe shortcut.lnk +pylnk3 c \\192.168.1.1\share\file.doc doc.lnk +pylnk3 create c:\1.txt text.lnk -m Minimized -d "Description" +``` + +## Changes + +**0.4.2** +changed logic for Lnk.path choose (in case of different paths presents at different structures) +read links with root as GUID of KNOWN_FOLDER +[FIX] disabled padding for writing LinkInfo.local_base_path + +**0.4.0** +added support for network links +reworked CLI (added more options for creating links) +added entry point for call tool just like `pylnk3` +[FIX] allow build links for non-existed (from this machine) paths +[FIX] correct building links on Linux (now expect Windows-like path) +[FIX] fixed path priority at parsing with both local & remote presents + + +**0.3.0** +added support links to UWP apps + + +**0.2.1** +released to PyPI + + +**0.2.0** +converted to python 3 + + + + +%package help +Summary: Development documents and examples for pylnk3 +Provides: python3-pylnk3-doc +%description help +# PyLnk 3 + +[![PyPI version shields.io](https://img.shields.io/pypi/v/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI pyversions](https://img.shields.io/pypi/pyversions/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) +[![PyPI download month](https://img.shields.io/pypi/dm/pylnk3.svg)](https://pypi.python.org/pypi/pylnk3/) + +Python library for reading and writing Windows shortcut files (.lnk). +Converted to support python 3. + +This library can parse .lnk files and extract all relevant information from +them. Parsing a .lnk file yields a LNK object which can be altered and saved +again. Moreover, .lnk file can be created from scratch be creating a LNK +object, populating it with data and then saving it to a file. As that +process requires some knowledge about the internals of .lnk files, some +convenience functions are provided. + +Limitation: Windows knows lots of different types of shortcuts which all have +different formats. This library currently only supports shortcuts to files and +folders on the local machine. + +## CLI + +Mainly tool has two basic commands. + +#### Parse existed lnk file + +```sh +pylnk3 parse [-h] filename [props [props ...]] + +positional arguments: + filename lnk filename to read + props props path to read + +optional arguments: + -h, --help show this help message and exit +``` + +#### Create new lnk file + +```sh +usage: pylnk3 create [-h] [--arguments [ARGUMENTS]] [--description [DESCRIPTION]] [--icon [ICON]] + [--icon-index [ICON_INDEX]] [--workdir [WORKDIR]] [--mode [{Maximized,Normal,Minimized}]] + target name + +positional arguments: + target target path + name lnk filename to create + +optional arguments: + -h, --help show this help message and exit + --arguments [ARGUMENTS], -a [ARGUMENTS] + additional arguments + --description [DESCRIPTION], -d [DESCRIPTION] + description + --icon [ICON], -i [ICON] + icon filename + --icon-index [ICON_INDEX], -ii [ICON_INDEX] + icon index + --workdir [WORKDIR], -w [WORKDIR] + working directory + --mode [{Maximized,Normal,Minimized}], -m [{Maximized,Normal,Minimized}] + window mode +``` + +#### Examples +```sh +pylnk3 p filename.lnk +pylnk3 c c:\prog.exe shortcut.lnk +pylnk3 c \\192.168.1.1\share\file.doc doc.lnk +pylnk3 create c:\1.txt text.lnk -m Minimized -d "Description" +``` + +## Changes + +**0.4.2** +changed logic for Lnk.path choose (in case of different paths presents at different structures) +read links with root as GUID of KNOWN_FOLDER +[FIX] disabled padding for writing LinkInfo.local_base_path + +**0.4.0** +added support for network links +reworked CLI (added more options for creating links) +added entry point for call tool just like `pylnk3` +[FIX] allow build links for non-existed (from this machine) paths +[FIX] correct building links on Linux (now expect Windows-like path) +[FIX] fixed path priority at parsing with both local & remote presents + + +**0.3.0** +added support links to UWP apps + + +**0.2.1** +released to PyPI + + +**0.2.0** +converted to python 3 + + + + +%prep +%autosetup -n pylnk3-0.4.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-pylnk3 -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot - 0.4.2-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..05281e1 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +480f24893704b40d5b15bcd6bf63af22 pylnk3-0.4.2.tar.gz -- cgit v1.2.3