Compare commits
1 Commits
37d89c475e
...
flatpak
| Author | SHA1 | Date | |
|---|---|---|---|
| 652d32b175 |
@@ -223,7 +223,7 @@ if ($recursive) {
|
|||||||
# Ensure the repository has the correct owner
|
# Ensure the repository has the correct owner
|
||||||
$userName = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
|
$userName = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
|
||||||
$idRef = [System.Security.Principal.NTAccount]::new($userName)
|
$idRef = [System.Security.Principal.NTAccount]::new($userName)
|
||||||
Get-Item -Force $dest | foreach { `
|
Get-Item $dest | foreach { `
|
||||||
$_ ; $_ | Get-ChildItem -Force -Recurse `
|
$_ ; $_ | Get-ChildItem -Force -Recurse `
|
||||||
} | foreach { `
|
} | foreach { `
|
||||||
$acl = $_ | Get-Acl; $acl.SetOwner($idRef); $_ | Set-Acl -AclObject $acl `
|
$acl = $_ | Get-Acl; $acl.SetOwner($idRef); $_ | Set-Acl -AclObject $acl `
|
||||||
|
|||||||
@@ -5,9 +5,4 @@
|
|||||||
roles:
|
roles:
|
||||||
- role: kitty
|
- role: kitty
|
||||||
- role: xremap
|
- role: xremap
|
||||||
when: >
|
when: ansible_os_family == "RedHat"
|
||||||
'GNOME' in ansible_env.XDG_CURRENT_DESKTOP and
|
|
||||||
ansible_env.XDG_SESSION_TYPE == 'wayland' and (
|
|
||||||
ansible_os_family == "RedHat" or
|
|
||||||
ansible_os_family == "Debian"
|
|
||||||
)
|
|
||||||
|
|||||||
@@ -6,10 +6,8 @@
|
|||||||
- role: python
|
- role: python
|
||||||
|
|
||||||
- role: zsh
|
- role: zsh
|
||||||
tags: unsafe
|
|
||||||
- role: neovim
|
- role: neovim
|
||||||
- role: tmux
|
- role: tmux
|
||||||
tags: unsafe
|
|
||||||
|
|
||||||
- role: ag
|
- role: ag
|
||||||
- role: bash
|
- role: bash
|
||||||
|
|||||||
@@ -1,9 +1,6 @@
|
|||||||
---
|
---
|
||||||
- hosts: localhost
|
- hosts: localhost
|
||||||
roles:
|
roles:
|
||||||
- role: flatpak
|
|
||||||
when: ansible_os_family != "Darwin"
|
|
||||||
|
|
||||||
- role: 1password
|
- role: 1password
|
||||||
- role: ferdium
|
- role: ferdium
|
||||||
- role: fonts
|
- role: fonts
|
||||||
|
|||||||
@@ -8,9 +8,7 @@
|
|||||||
roles:
|
roles:
|
||||||
- role: mas
|
- role: mas
|
||||||
|
|
||||||
- role: hiddenbar
|
|
||||||
- role: iterm
|
- role: iterm
|
||||||
- role: kitty
|
|
||||||
- role: magnet
|
- role: magnet
|
||||||
- role: microsoft-remote-desktop
|
- role: microsoft-remote-desktop
|
||||||
- role: viscosity
|
- role: viscosity
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
---
|
---
|
||||||
- name: add dnf repository key
|
- name: add yum repository key
|
||||||
become: true
|
become: true
|
||||||
rpm_key:
|
rpm_key:
|
||||||
key: https://downloads.1password.com/linux/keys/1password.asc
|
key: https://downloads.1password.com/linux/keys/1password.asc
|
||||||
|
|
||||||
- name: add dnf repository
|
- name: add yum repository
|
||||||
become: true
|
become: true
|
||||||
yum_repository:
|
yum_repository:
|
||||||
name: 1password
|
name: 1password
|
||||||
@@ -15,8 +15,8 @@
|
|||||||
repo_gpgcheck: true
|
repo_gpgcheck: true
|
||||||
gpgkey: ['https://downloads.1password.com/linux/keys/1password.asc']
|
gpgkey: ['https://downloads.1password.com/linux/keys/1password.asc']
|
||||||
|
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: 1password
|
name: 1password
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: the_silver_searcher
|
name: the_silver_searcher
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -110,6 +110,3 @@ grey="\001\e[38;5;244m\002"
|
|||||||
reset="\001\e[0m\002"
|
reset="\001\e[0m\002"
|
||||||
|
|
||||||
PS1="$yellow\u$reset@$grey\h$reset "
|
PS1="$yellow\u$reset@$grey\h$reset "
|
||||||
|
|
||||||
# Setup environment variables
|
|
||||||
export PATH=$HOME/.local/bin:$PATH
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: bat
|
name: bat
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: curl
|
name: curl
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -5,8 +5,7 @@
|
|||||||
name: ferdium
|
name: ferdium
|
||||||
state: latest
|
state: latest
|
||||||
|
|
||||||
- name: install chocolatey package
|
- when: ansible_os_family == 'Windows'
|
||||||
when: ansible_os_family == 'Windows'
|
|
||||||
win_chocolatey:
|
win_chocolatey:
|
||||||
name: ferdium
|
name: ferdium
|
||||||
state: latest
|
state: latest
|
||||||
@@ -14,6 +13,5 @@
|
|||||||
- name: install flatpak package
|
- name: install flatpak package
|
||||||
when: ansible_os_family != 'Windows' and
|
when: ansible_os_family != 'Windows' and
|
||||||
ansible_os_family != 'Darwin'
|
ansible_os_family != 'Darwin'
|
||||||
become: true
|
|
||||||
flatpak:
|
flatpak:
|
||||||
name: org.ferdium.Ferdium
|
name: org.ferdium.Ferdium
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
---
|
|
||||||
- name: install dnf package
|
|
||||||
become: true
|
|
||||||
dnf:
|
|
||||||
name: flatpak
|
|
||||||
state: latest
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: fzf
|
name: fzf
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
- name: add dnf repository
|
- name: add yum repository
|
||||||
become: true
|
become: true
|
||||||
get_url:
|
get_url:
|
||||||
url: https://cli.github.com/packages/rpm/gh-cli.repo
|
url: https://cli.github.com/packages/rpm/gh-cli.repo
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
---
|
|
||||||
- assert:
|
|
||||||
that: ansible_os_family == 'Darwin'
|
|
||||||
|
|
||||||
- name: install homebrew package
|
|
||||||
homebrew_cask:
|
|
||||||
name: hiddenbar
|
|
||||||
state: latest
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
- name: install homebrew package
|
|
||||||
homebrew_cask:
|
|
||||||
name: kitty
|
|
||||||
state: latest
|
|
||||||
@@ -6,12 +6,6 @@
|
|||||||
state: latest
|
state: latest
|
||||||
|
|
||||||
- set_fact:
|
- set_fact:
|
||||||
neovim_pip_packages: >
|
neovim_pip_packages: '{{neovim_pip_packages + ["pynvim"]}}'
|
||||||
{{
|
|
||||||
neovim_pip_packages + [
|
|
||||||
"pynvim",
|
|
||||||
"greenlet"
|
|
||||||
]
|
|
||||||
}}
|
|
||||||
|
|
||||||
- include_tasks: Unix.yaml
|
- include_tasks: Unix.yaml
|
||||||
|
|||||||
@@ -12,7 +12,6 @@
|
|||||||
become: true
|
become: true
|
||||||
apt_repository:
|
apt_repository:
|
||||||
repo: ppa:neovim-ppa/stable
|
repo: ppa:neovim-ppa/stable
|
||||||
codename: '{{os_release.UBUNTU_CODENAME}}'
|
|
||||||
update_cache: true
|
update_cache: true
|
||||||
|
|
||||||
- name: install apt package
|
- name: install apt package
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf package
|
- name: install yum package
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name: nodejs
|
name: nodejs
|
||||||
state: latest
|
state: latest
|
||||||
|
|||||||
@@ -1,32 +1,75 @@
|
|||||||
---
|
---
|
||||||
- name: install flatpak package
|
# TODO: Prefer Flatpak over AppImage if available
|
||||||
become: true
|
|
||||||
flatpak:
|
|
||||||
name: md.obsidian.Obsidian
|
|
||||||
|
|
||||||
# Remove old appimage if it exists
|
- name: stat symlink
|
||||||
- name: stat appimage symlink
|
|
||||||
stat:
|
stat:
|
||||||
path: '{{ansible_env.HOME}}/.local/bin/Obsidian'
|
path: '{{ansible_env.HOME}}/.local/bin/Obsidian'
|
||||||
register: symlink_file
|
register: symlink_file
|
||||||
|
|
||||||
|
- name: get latest release
|
||||||
|
uri:
|
||||||
|
url: https://api.github.com/repos/obsidianmd/obsidian-releases/releases/latest
|
||||||
|
register: latest
|
||||||
|
|
||||||
- set_fact:
|
- set_fact:
|
||||||
|
appimage: 'Obsidian-{{latest.json.name}}.AppImage'
|
||||||
|
- set_fact:
|
||||||
|
filepath: '{{ansible_env.HOME}}/.local/bin/{{appimage}}'
|
||||||
iconpath: 'share/icons/hicolor/512x512/apps/obsidian.png'
|
iconpath: 'share/icons/hicolor/512x512/apps/obsidian.png'
|
||||||
- name: remove appimage icon file
|
asset_query: '[?contains(name, `{{appimage}}`)] | [0]'
|
||||||
|
- set_fact:
|
||||||
|
needs_installed:
|
||||||
|
'{{not symlink_file.stat.exists or symlink_file.stat.lnk_source != filepath}}'
|
||||||
|
asset: '{{latest.json.assets | to_json | from_json | json_query(asset_query)}}'
|
||||||
|
|
||||||
|
- name: download latest version
|
||||||
|
get_url:
|
||||||
|
url: '{{asset.browser_download_url}}'
|
||||||
|
dest: '{{filepath}}'
|
||||||
|
mode: '0755'
|
||||||
|
|
||||||
|
- name: create directories
|
||||||
file:
|
file:
|
||||||
|
path: '{{item}}'
|
||||||
|
state: directory
|
||||||
|
with_items:
|
||||||
|
- '{{ansible_env.HOME}}/.local/bin'
|
||||||
|
- '{{ansible_env.HOME}}/.local/share/icons/hicolor/512x512/apps'
|
||||||
|
|
||||||
|
- name: create symlink
|
||||||
|
file:
|
||||||
|
src: '{{filepath}}'
|
||||||
|
dest: '{{ansible_env.HOME}}/.local/bin/Obsidian'
|
||||||
|
state: link
|
||||||
|
|
||||||
|
- name: extract squashfs-root for app icon
|
||||||
|
when: needs_installed
|
||||||
|
command:
|
||||||
|
cmd: '{{ansible_env.HOME}}/.local/bin/Obsidian --appimage-extract'
|
||||||
|
chdir: '/tmp'
|
||||||
|
|
||||||
|
- name: copy icon file
|
||||||
|
when: needs_installed
|
||||||
|
copy:
|
||||||
|
src: '/tmp/squashfs-root/usr/{{iconpath}}'
|
||||||
dest: '{{ansible_env.HOME}}/.local/{{iconpath}}'
|
dest: '{{ansible_env.HOME}}/.local/{{iconpath}}'
|
||||||
state: absent
|
|
||||||
- name: remove appimage desktop file
|
- name: remove squashfs-root directory
|
||||||
|
when: needs_installed
|
||||||
file:
|
file:
|
||||||
dest: '{{ansible_env.HOME}}/.local/share/applications/obsidian-obsidian.desktop'
|
path: '/tmp/squashfs-root'
|
||||||
state: absent
|
state: absent
|
||||||
|
|
||||||
|
- name: create desktop file
|
||||||
|
template:
|
||||||
|
src: obsidian.desktop.j2
|
||||||
|
dest: '{{ansible_env.HOME}}/.local/share/applications/obsidian-obsidian.desktop'
|
||||||
|
notify: install desktop menu
|
||||||
|
|
||||||
- name: remove old appimage
|
- name: remove old appimage
|
||||||
when: "'lnk_source' in symlink_file.stat"
|
when: needs_installed and symlink_file.stat.exists
|
||||||
file:
|
file:
|
||||||
path: '{{symlink_file.stat.lnk_source}}'
|
path: '{{symlink_file.stat.lnk_source}}'
|
||||||
state: absent
|
state: absent
|
||||||
- name: remove appimage symlink
|
|
||||||
file:
|
|
||||||
path: '{{ansible_env.HOME}}/.local/bin/Obsidian'
|
|
||||||
state: absent
|
|
||||||
|
|
||||||
- include_tasks: Unix.yaml
|
- include_tasks: Unix.yaml
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf packages
|
- name: install yum packages
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name:
|
name:
|
||||||
- python3
|
- python3
|
||||||
- python3-pip
|
- python3-pip
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf packages
|
- name: install yum packages
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name:
|
name:
|
||||||
- tmux
|
- tmux
|
||||||
- sysstat
|
- sysstat
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
---
|
---
|
||||||
- assert:
|
- assert:
|
||||||
that: >
|
that: ansible_env.XDG_CURRENT_DESKTOP == "GNOME" and
|
||||||
'GNOME' in ansible_env.XDG_CURRENT_DESKTOP and
|
ansible_env.XDG_SESSION_TYPE == "wayland"
|
||||||
ansible_env.XDG_SESSION_TYPE == 'wayland'
|
|
||||||
|
|
||||||
- set_fact:
|
- set_fact:
|
||||||
install_dir: '{{ansible_env.HOME}}/.local/bin'
|
install_dir: '{{ansible_env.HOME}}/.local/bin'
|
||||||
@@ -36,14 +35,12 @@
|
|||||||
set_fact:
|
set_fact:
|
||||||
needs_installed:
|
needs_installed:
|
||||||
'{{not executable.stat.exists or installed_version != latest.json.name}}'
|
'{{not executable.stat.exists or installed_version != latest.json.name}}'
|
||||||
xdg_current_desktop:
|
|
||||||
"{{ansible_env.XDG_CURRENT_DESKTOP | regex_replace('(.*:)?(.*)', '\\2')}}"
|
|
||||||
|
|
||||||
- name: construct asset query
|
- name: construct asset query
|
||||||
set_fact:
|
set_fact:
|
||||||
asset_query: >
|
asset_query: >
|
||||||
[?contains(name, `xremap-linux-{{ansible_architecture}}-{{
|
[?contains(name, `xremap-linux-{{ansible_architecture}}-{{
|
||||||
xdg_current_desktop | lower}}.zip`)] | [0]
|
ansible_env.XDG_CURRENT_DESKTOP | lower}}.zip`)] | [0]
|
||||||
- name: get release asset
|
- name: get release asset
|
||||||
set_fact:
|
set_fact:
|
||||||
asset: '{{latest.json.assets | to_json | from_json | json_query(asset_query)}}'
|
asset: '{{latest.json.assets | to_json | from_json | json_query(asset_query)}}'
|
||||||
@@ -84,14 +81,6 @@
|
|||||||
append: true
|
append: true
|
||||||
groups: input
|
groups: input
|
||||||
|
|
||||||
- name: load the uinput kernel module
|
|
||||||
when: ansible_os_family == 'Debian'
|
|
||||||
become: true
|
|
||||||
copy:
|
|
||||||
content: |
|
|
||||||
uinput
|
|
||||||
dest: /etc/modules-load.d/uinput.conf
|
|
||||||
|
|
||||||
# TODO: This works for on Fedora, author uses it on Ubuntu so I assume Debian
|
# TODO: This works for on Fedora, author uses it on Ubuntu so I assume Debian
|
||||||
# will work too. Arch and other distros are potentially different see the docs
|
# will work too. Arch and other distros are potentially different see the docs
|
||||||
# https://github.com/k0kubun/xremap
|
# https://github.com/k0kubun/xremap
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
- name: install dnf packages
|
- name: install yum packages
|
||||||
become: true
|
become: true
|
||||||
dnf:
|
yum:
|
||||||
name:
|
name:
|
||||||
- zsh
|
- zsh
|
||||||
- pinentry-tty
|
- pinentry-tty
|
||||||
|
|||||||
Reference in New Issue
Block a user