{"id":16536466,"url":"https://github.com/giggio/poshfiles","last_synced_at":"2025-05-08T19:51:22.273Z","repository":{"id":36815093,"uuid":"41121967","full_name":"giggio/poshfiles","owner":"giggio","description":"My PowerShell script files","archived":false,"fork":false,"pushed_at":"2024-11-01T19:46:13.000Z","size":412,"stargazers_count":39,"open_issues_count":0,"forks_count":22,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-11-10T00:22:15.629Z","etag":null,"topics":["dotfiles","powershell"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/giggio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-20T22:36:50.000Z","updated_at":"2024-11-01T19:46:17.000Z","dependencies_parsed_at":"2023-12-12T17:59:56.590Z","dependency_job_id":"7de33e85-35a6-4ed6-b19a-f71659bcf0ad","html_url":"https://github.com/giggio/poshfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giggio%2Fposhfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giggio%2Fposhfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giggio%2Fposhfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giggio%2Fposhfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/giggio","download_url":"https://codeload.github.com/giggio/poshfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225110575,"owners_count":17422411,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dotfiles","powershell"],"created_at":"2024-10-11T18:31:39.987Z","updated_at":"2024-11-18T01:05:25.082Z","avatar_url":"https://github.com/giggio.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Giovanni Bassi's PowerShell files\n\nThese are my personal poshfiles.\n\n## Installation instructions\n\nInstall Git and PowerShell Core first, then, from PowerShell Core itself, run:\n\n```powershell\ngit clone --recursive https://github.com/giggio/poshfiles.git $(Split-Path $Profile)\n```\n\n### Installing PowerShell Core and Git\n\n#### Windows\n\nFrom cmd or Windows PowerShell run:\n\n```cmd\nwinget install git.git\nwinget install Microsoft.PowerShell\n```\n\n#### Linux\n\nCheck your distro recommendations.\n\n### Setting up\n\nThe first time you start PowerShell you will be prompted to run the setup, which will install modules and tools.\nIf you dismiss it, only part of the tools will work. It will remind you again next time you start it. If you\ndismiss it for good, you can always run the [setup script file](./Setup/Setup.ps1) directly. On Windows you will need to run\nit from an admin window (because of some extra work it does, like setting up Windows Defender exclusion rules)\nand you need PowerShell Core installed\n([get it](https://learn.microsoft.com/powershell/scripting/install/installing-powershell-on-windows)).\n\n### Platform specific instructions and considerations\n\n#### Windows\n\nWindows has Windows PowerShell and PowerShell Core. They each have their directory for configuration.\nYou can find the directory by running, in each one `Split-Path $Profile`.\nYou can run it on each of them, or a better idea is to have a single location and call it from each\nprofile, that is what I do.\nFor reference, usually the locations for the profile files are:\n\nFor PowerShell Core (the one that is new and better and the one you should be using): `\u003cDocuments Directory\u003e\\PowerShell\\Microsoft.PowerShell_profile.ps1`\n[Read more about it](https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_profiles?view=powershell-7.2)\n\nFor Windows PowerShell (the one that comes with Windows): `\u003cDocuments Directory\u003e\\WindowsPowerShell\\Microsoft.PowerShell_profile.ps1`.\n[Read more about it](https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_profiles?view=powershell-5.1)\n\n**Be aware**: if you have OneDrive configured to backup your Documents directory, it's location will not be at the user Home directory,\nbut at `$HOME/OneDrive/Documents`.\n\nSo, all you need to do is add to the `$PROFILE` file:\n\n```powershell\n. \u003cpath to this repository\u003e\\Microsoft.PowerShell_profile.ps1\n```\n\nIf you want to setup only in Windows PowerShell or PowerShell core, simply run (in the respective shell):\n\n```powershell\ngit clone --recursive https://github.com/giggio/poshfiles.git $(Split-Path $Profile)\n```\n\n#### Linux\n\nLinux only supports PowerShell Core, so the above command is all you need. The profile should be\nat `$env:HOME/.config/powershell`, to clone it from bash, simply run:\n\n```bash\ngit clone --recursive https://github.com/giggio/poshfiles.git $env:HOME/.config/powershell\n```\n\n#### Mac\n\nI don't know, I don't have a Mac, if you do, please send a PR with instructions.\nAlso, this files have not been tested on a Mac, if they don't work, please, send a PR.\n\n### Other considerations\n\nI have several [aliases](./Profile/CreateAliases.ps1) configured\nas well as several modules (see the [.gitmodules](./.gitmodules)\nand the [InstallModules.ps1](./Setup/InstallModules.ps1)) files.\nCheck them out and see if you want to keep them all.\n\n## Notes on Vi mode\n\nI use \"vi mode\" on my shells. If you don't know what this is or don't want it\nyou should disable it. Just delete the call to `SetViMode.ps1`.\n\nVim mode will enable **only** if you have `vim` available on your path. If you don't,\nthen you don't need to worry, it will not enable.\n\nIf you want to be super fast on the command line and also when typing in a text\neditor, then you should learn vi, vim and vi mode. Just search for it and you\nwill find more info.\n\n## Notes on fonts\n\nYou need a powerline enabled font to get everything to display properly. The only one I have found\nthat works as expected so far are\n[Cascadia Code](https://github.com/microsoft/cascadia-code) (which comes with Windows Terminal) and\n[Deja Vu](https://github.com/powerline/fonts/blob/master/DejaVuSansMono/DejaVu%20Sans%20Mono%20for%20Powerline.ttf)\n(from the powerline repo). They have the glyphs and symbols necessary to show everything as expected.\n\nThe best terminal experience on Windows will be with\n[Windows Terminal](https://github.com/microsoft/terminal), and you can also use\nit with [Conemu](https://conemu.github.io/).\nYou don't need either to have a nice display if you are on Windows 10 or later. Simply download the font\nand set it as default on the PowerShell properties window and everything should work.\nIf you decide to use Conemu remember to set the main console font and the alternative font to the same\nfont with the symbols.\n\n## Notes on PowerShell Modules\n\nYou might not want some administrations modules I use, such as `AzureADPreview` and `ExchangeOnlineManagement`,\nif that is the case you can simply remove their installation in the `InstallModules.ps1`. They will only\ninstall in Windows PowerShell, so only in Windows.\n\n## Contributing\n\nQuestions, comments, bug reports, and pull requests are all welcome.  Submit them at\n[the project on GitHub](https://github.com/giggio/poshfiles).\n\nBug reports that include steps-to-reproduce (including code) are the\nbest. Even better, make them in the form of pull requests.\n\n## Author\n\n[Giovanni Bassi](https://twitter.com/giovannibassi).\n\n## License\n\nLicensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiggio%2Fposhfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiggio%2Fposhfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiggio%2Fposhfiles/lists"}